home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / rep_anom.zip / REPORT.DEF < prev    next >
Text File  |  1988-09-21  |  11KB  |  240 lines

  1. //---------------------------------------------------------------------------
  2. // REPORT.DEF  NPI report object data selectors
  3. // Ashton-Tate (c) 1987, 1988
  4. //
  5. // Updated 9-21-88 KJN
  6. //
  7. // This include file contains all the selectors required for reports.
  8. // *** DO NOT CHANGE ANY OF THE NUMBERS BELOW ***
  9. //
  10. //---------------------------------------------------------------------------
  11. // NOTE:
  12. // Selectors listed in the following table which are shown to have
  13. // "Value: Number" will sometimes return the null string instead
  14. // of the numeric zero.  For logical compares, null is the same
  15. // as zero, however when emitting the value to the output file
  16. // the null string must be converted to a numeric zero explicitly.
  17. // A user defined function is used in the FORM.COD template program
  18. // called NUL2ZERO() for converting null strings to explicit numeric
  19. // zeros.
  20. //---------------------------------------------------------------------------
  21. {
  22. selectors
  23. #lstoff
  24. //
  25. // ELEMENT selectors (FOREACH loop elements)
  26. //
  27. ELEMENT            1000, // All elements types by row & column
  28. BAND_ELEMENT       1102, // Report band element
  29. BOX_ELEMENT        1086, // Box element
  30. FLD_ELEMENT        1130, // Field element
  31. TEXT_ELEMENT       1085, // Text element
  32. RULER_ELEMENT      1119, // Ruler element
  33. PARA_ELEMENT       1118, // Paragraph end marker element
  34. PAGE_ELEMENT       1117, // Page break marker element
  35. //
  36. // Selectors common to all elements
  37. //
  38. ELEMENT_TYPE        001, // Element type found in reports are:
  39.                          //     BAND_ELEMENT 
  40.                          //     BOX_ELEMENT  
  41.                          //     FLD_ELEMENT  
  42.                          //     TEXT_ELEMENT 
  43.                          //     RULER_ELEMENT
  44.                          //     PARA_ELEMENT
  45. ROW_POSITN          225, // Row number of Element
  46.                          // Menu Path: None - Value: Number
  47. COL_POSITN          093, // Column number of Element
  48.                          // Menu Path: None - Value: Number
  49. GROUP               091, // Report group id
  50. SYS_FLEN            053, // Element length in layout
  51. SYS_INAME           068, // reserved
  52. SYS_FMT             071, // reserved
  53. SYS_PAGE            090, // reserved
  54. SYS_ROW             092, // reserved
  55. SYS_ATRB            094, // reserved
  56. //                         
  57. // Frame level selectors - can be accessed at any time
  58. //
  59. NAME                040, // Name of NPI report object
  60.                          // Menu Path: None - Value: String
  61. FRAME_CLASS         181, // Object type (called MENU_TYPE in application.def)
  62.                          // Menu Path: None - Value:11=form, 12=label, 13=report
  63. FRAME_VER           150, // Version #
  64.                          // Menu Path: None - Value: Number
  65. FRAME_FILE_TYPE     151, // File type of object
  66.                          // Menu Path: None - Value: Number
  67. FRAME_PATH          042, // Path of object
  68.                          // Menu Path: None - Value: String
  69. FRAME_NUM_OF_FIELDS 153, // Number of fields on layout
  70.                          // Menu Path: None - Value: Number
  71. FRAME_NUM_OF_BANDS  154, // Number of bands in report
  72.                          // Menu Path: None - Value: Number
  73. FRAME_PAGEHEADINGS  155, // Use page heading
  74.                          // Menu Path: None - Value: 1:page headings in intro 
  75.                          //                          0: No Page headings
  76. dBASE_III_PLUS      215, // Is this a dBASE III+ report
  77.                          // Menu Path: None - Value: 0:No 1:Yes
  78. PRINT_FORM          152, // Print form name
  79.                          // Menu Path: PU   - Value: String    
  80. PRINT_DESTINATION   217, // Where to send output
  81.                          // Menu Path: PDW  - Value: 0: Printer 1:Dos file
  82. PRINT_DOS_FILE      218, // Name of DOS file
  83.                          // Menu Path: PDN  - Value: String    
  84. PRINT_DRIVER        219, // Name of Printer driver 
  85.                          // Menu Path: PDP  - Value: String    
  86. PRINT_TO_SCREEN     220, // Echo outpu to screen
  87.                          // Menu Path: PDE  - Value: Numeric   
  88. PRINT_PITCH         221, // Text Pitch
  89.                          // Menu Path: PCT  - Value: 0:Default 1:Pica 2:Elite   
  90.                          //                          3:Condensed
  91. PRINT_QUALITY       222, // Quality Print
  92.                          // Menu Path: PCQ  - Value: 0:Default 1:Yes 2:No
  93. PRINT_NEW_PAGE      223, // When to goto New page  
  94.                          // Menu Path: PCN  - Value: 0:Before 1:Both 2:None
  95.                          //                          3:After
  96. PRINT_PAUSE         224, // Wait between pages
  97.                          // Menu Path: PCW  - Value: 0:No 1:Yess
  98. PRINT_ADVANCE       226, // Advance page using
  99.                          // Menu Path: PCA  - Value: 0:Form Feeds 1:Line Feeds
  100. PRINT_START_CODES   227, // Starting control codes
  101.                          // Menu Path: PCS  - Value: String
  102. PRINT_END_CODES     228, // Ending control codes
  103.                          // Menu Path: PCE  - Value: String   
  104. PRINT_START_PAGE    229, // Begin on page
  105.                          // Menu Path: POB  - Value: String    
  106. PRINT_END_PAGE      230, // End on page
  107.                          // Menu Path: POB  - Value: String    
  108. PRINT_FIRST_PAGE    231, // First page number
  109.                          // Menu Path: POE  - Value: String    
  110. PRINT_COPIES        232, // Number of copies
  111.                          // Menu Path: PON  - Value: String    
  112. PRINT_PAGE_LENGTH   233, // Length of page
  113.                          // Menu Path: PPL  - Value: String    
  114. PRINT_LEFT_OFFSET   234, // Offeset from left
  115.                          // Menu Path: PPO  - Value: String    
  116. PRINT_LINE_SPACING  235, // Spacing of lines
  117.                          // Menu Path: PPL  - Value: 0:Single 1:Double 2:Triple 
  118. //
  119. // Text attribute selectors (FOREACH Text_element x .... NEXT)
  120. //
  121. TEXT_ITEM           095, // Static text data
  122.                          // Menu Path: None - Value: String
  123. //
  124. // Field attribute selectors (FOREACH Fld_element x .... NEXT)
  125. //
  126. FLD_FILENAME        060, // Name of file this field is in
  127.                          // Menu Path: None - Value: String
  128. FLD_FIELDNAME       061, // Field name
  129.                          // Menu Path: None - Value: String
  130. FLD_SUMFIELD        062, // Field name to summarize on
  131. FLD_FIELDTYPE       063, // Where the data is coming from
  132.                          // Menu Path: None - Value: 0:dBF field 1:calc'ed 
  133.                          //                    2:sum 3:predefined 4:memory var
  134. FLD_VALUE_TYPE      064, // Field data type in dBF
  135.                          // Menu Path: None - Value: 67:char 68:date 70:float 
  136.                          //                      76:logical 77:memo 78:numeric
  137.                          // Try chr(fld_value_type) return C:char D:date etc.
  138. FLD_LENGTH          065, // Length of field
  139.                          // Menu Path: None - Value: Number
  140. FLD_DECIMALS        066, // Number of decimal positions
  141.                          // Menu Path: None - Value: Number
  142. FLD_REPWIDTH        067, // Width in report
  143. FLD_SUPPRESS        069, // Suppress related values? 0:no 1:yes
  144. FLD_PREDEFINE       070, // Predef fld 0:date 1:time 2:recno 3:pageno
  145. FLD_OPERATION       098, // Op type 0:avg 1:count 2:max 3:min 4:sum
  146. FLD_RESET           072, // Reset 0:never 1:page 2:group names
  147. FLD_HIDDEN          073, // 0: visible  else: hidden
  148. FLD_TEMPLATE        074, // Picture template
  149.                          // Menu Path: FMT - Value: String
  150. FLD_PICFUN          075, // Picture functions
  151.                          // Menu Path: FMP - Value: String
  152. FLD_DESCRIPT        076, // Calc & sum description
  153.                          // Menu Path: FMD - Value: String
  154. FLD_EXPRESSION      077, // Calc expression
  155.                          // Menu Path: FME - Value: String
  156. FLD_STYLE           096, // Field style
  157. //
  158. // Band Attribute Selectors (FOREACH Band_element x ... NEXT)
  159. //
  160. BAND_BANDEDIT       115, // 1:word wrap editor 0:No word wrap editor
  161. BAND_BANDTYPE       100, // 0:Pg Hd 1:Rp Intr 2:Gr Intr 3:Det 4:Gr Sum 5:Rp Sum 6:Pg Ft
  162. BAND_GROUPNUM       101, // Group # 1:outer most band 2:inside of 1 etc
  163. BAND_OPENFLG        103, // 1: band open  0: band close
  164. BAND_GROUPTYPE      104, // 1: field  2: expression  3: record count
  165. BAND_GFIELD         116, // Field to group on
  166. BAND_GROUP_REC      106, // When grouping on record count  how many
  167. BAND_EXPRESSION     107, // Expression to group on
  168. BAND_INTROEACH      108, // 1: print group intro on each page  0:don't
  169. BAND_NEWPAGE        110, // 1: start band on new page  0: don't
  170. BAND_TEXTPITCH      111, // 0 1 2 3: default  pica  elite  condensed
  171. BAND_QUALITY        112, // Quality print 0: non quality
  172. BAND_HEIGHT         113, // Number of band lines
  173. BAND_SPACING        114, // Default  single, double, or triple
  174. //
  175. // Box Attribute Selectors (FOREACH Box_element x .... NEXT)
  176. //
  177. BOX_TYPE            160, // Box Type
  178.                          // Menu Path: LB - Value: 0:single 1:double 2:special
  179. BOX_SPECIAL_CHAR    161, // Box character
  180.                          // Menu Path: LBU - Value: Number 
  181. BOX_LEFT            162, // Left column for box
  182.                          // Menu Path: None - Value: Number 
  183. BOX_TOP             163, // Top row of box
  184.                          // Menu Path: None - Value: Number 
  185. BOX_WIDTH           164, // Box width in columns
  186.                          // Menu Path: None - Value: Number 
  187. BOX_HEIGHT          165, // Box height in rows
  188.                          // Menu Path: None - Value: Number 
  189. //
  190. // Paragraph end markers have no additional selectors.
  191. // 
  192. //
  193. // Ruler attribute selectors (FOREACH Ruler_element ... NEXT)
  194. //
  195. RULER_LEFTM         210, // Left margin 
  196.                          // Menu Path: None - Value: Number 
  197. RULER_RIGHTM        211, // Right margin 
  198.                          // Menu Path: None - Value: Number 
  199. RULER_INDENT        212, // Indent 
  200.                          // Menu Path: None - Value: Number 
  201. RULER_TABS          213, // Comma seperated list of tab stop positions 
  202.                          // Menu Path: None - Value: String
  203. //
  204. #lston                  
  205. ;                       
  206. //
  207. // enumerated values for FLD_STYLE
  208. //
  209. enum   User_Font  =   31,
  210.        Soft_space =  128,
  211.        Bold       =  256,
  212.        Italic     =  512,
  213.        Underline  = 1024,
  214.        Superscript= 2048,
  215.        Subscript  = 4096;
  216. //
  217. // Values returned by Band_BandType
  218. //
  219. enum   Page_Header=0,
  220.        Report_Intro,
  221.        Group_Intro,
  222.        Detail,
  223.        Group_Summary,
  224.        Report_Summary,
  225.        Page_Footer;
  226. //
  227. // Values returned by Fld_Reset
  228. //
  229. enum  Never=0,
  230.       Each_Page,
  231.       Each_Group;
  232. //
  233. // Values returned by Fld_Fieldtype
  234. //
  235. enum  Tabl_data=0,   // Table field from a database
  236.       Calc_data,     // Calculated expression
  237.       Summ_data,     // Summary ie. Average, Count, etc.
  238.       Pred_data;     // Predefined ie. Date, Page, etc.
  239. }
  240.