217 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			217 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| compile insert DICT_EQUATES
 | |
| /*
 | |
|    ** Copyright (C) 1992-2016 Revelation Software Inc. All Rights Reserved **
 | |
|    
 | |
|    Author   : The wizards of old
 | |
|    Date     : Once upon a time ...
 | |
|    Purpose  : Equates that define the structure of Advanced Revelation's and 
 | |
|               OpenEngine's Data Dictionary
 | |
|    
 | |
|    Comments
 | |
|    ========
 | |
|    
 | |
|    Amended  Date        Reason
 | |
|    =======  ====        ======
 | |
|    Mr C     14 Jun 18   Added DICT_FOREIGN_KEY_TABLE$
 | |
|    Mr C     16 Feb 16   Added a couple of delimiter notes
 | |
|    Mr C     24 Sep 15   Cleaned up, Added header guards, removed HR equates
 | |
|    mtr      05 Jan 11   Added DICT_BITMAP_IDX_FLAG$ for field 46
 | |
|    mtr      21 Feb 06   Added fields 36 and 37, And  FIELDS For %fields%
 | |
|    mtr      19 Jan 06   Added field 35
 | |
| */
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| #ifndef _DICT_EQUATES_
 | |
| #define _DICT_EQUATES_
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
|    equ DICT_TYPE$               to 1      ;* Type of current field.
 | |
|                                           ;* 'F' = Data Field
 | |
|                                           ;* 'S' = Symbolic (formula in DICT_FORMULA)
 | |
|                                           ;* 'G' = Group (group data in DICT_DISPLAY)
 | |
| 
 | |
|    equ DICT_COLUMN_NO$          to 2      ;* The position of the data in the record
 | |
| 
 | |
|    equ DICT_DISPLAY$            to 3      ;* The Column Heading used by RLIST and other tools
 | |
|                                           ;* For type 'G' dictionary records, this field
 | |
|                                           ;* contains the group data.
 | |
|                                           ;* ( Lines are @vm delimited )
 | |
| 
 | |
|    equ DICT_SM$                 to 4      ;* Single or Multivalue flag "S"ingle "M"ulti
 | |
| 
 | |
|    equ DICT_PART$               to 5      ;* Key part.  For multi-part keys, this field
 | |
|                                           ;* specifies the part number (1, 2, 3, etc.)
 | |
|                                           ;* For single-part key fields, this field should be 0.
 | |
| 
 | |
|    equ DICT_INDEX_FLAG$         to 6      ;* BTREE INDEX flag (boolean value).
 | |
| 
 | |
|    equ DICT_CONV$               to 7      ;* Contains the output conversion for data
 | |
| 
 | |
|    equ DICT_FORMULA$            to 8      ;* If the field type = "S" then this field will contain an rbasic formula
 | |
| 
 | |
|    equ DICT_JUST$               to 9      ;* Justification for displaying and sorting data.
 | |
|                                           ;* 'L' = Left
 | |
|                                           ;* 'R' = Right
 | |
|                                           ;* 'C' = Centered
 | |
|                                           ;* 'T' = Text
 | |
|                                           ;* Text justification means no justification.
 | |
| 
 | |
|    equ DICT_LENGTH$             to 10     ;* Display length for this field.  Note that this length
 | |
|                                           ;* is not necessarily the length of the data itself,
 | |
|                                           ;* especially in bonded files.
 | |
| 
 | |
|    equ DICT_PATTERN$            to 11     ;* Input validation/conversion for this field
 | |
| 
 | |
|    equ DICT_GENERIC_TYPE$       to 12     ;* The Arev Generic Data type associated with this field
 | |
| 
 | |
|    equ DICT_SOURCE$             to 13     ;* This field is basically reserved for backwards compatibility
 | |
|                                           ;* with REV/G.  Don't use it.
 | |
| 
 | |
|    equ DICT_LAST_UPDATE_BY$     to 13     ;* Well, I guess we are using it now then right? :)
 | |
|    
 | |
|    equ DICT_DESC$               to 14     ;* Description of this field. Used for documentation.
 | |
|                                           ;* Can be displayed as online help using an HD code.
 | |
|                                           ;* ( Lines are @tm delimited )
 | |
| 
 | |
|    equ DICT_FOREIGN_TYPE$       to 15     ;* The data type name in the foreign environment
 | |
| 
 | |
|    equ DICT_FOREIGN_NAME$       to 16     ;* The field name in the foreign environment
 | |
| 
 | |
|    equ DICT_FOREIGN_MAP$        to 17     ;* For bonded files, this field uniquely specifies
 | |
|                                           ;* a data mapping (that is, the algorithm used to
 | |
|                                           ;* transfer data between the Advanced Revelation data type
 | |
|                                           ;* and the foreign data type).
 | |
| 
 | |
|    equ DICT_FOREIGN_ATTR$       to 18     ;* This field contains any foreign field attributes
 | |
|                                           ;* that a bonded dictionary field may have, separated
 | |
|                                           ;* by value marks.
 | |
| 
 | |
|    equ DICT_PMD$                to 19     ;* This field is still being designed.  (Still?)
 | |
| 
 | |
|    equ DICT_NULL_TRUNC$         to 20     ;* This field allows the user to override the bond's
 | |
|                                           ;* default handling of null values for this field.
 | |
|                                           ;* If the bond cannot support null values, setting the first
 | |
|                                           ;* value of this field to 'Y' allows nulls to be stored
 | |
|                                           ;* without an error.  A 'N' or null first value allows the
 | |
|                                           ;* default behaviour: if the bond cannot store nulls in this
 | |
|                                           ;* field and a null is written, an I/O error will result.
 | |
|                                           ;* If the first value is 'Y', the second value can be
 | |
|                                           ;* used to specify what value the bond should store in
 | |
|                                           ;* the field when a null is written.  The bond is not
 | |
|                                           ;* required to support this latter ability.
 | |
| 
 | |
|    equ DICT_DEPENDENT$          to 21     ;* Reserved for indexing.
 | |
| 
 | |
|    equ DICT_XREF$               to 22     ;* If non-null, then there is a cross-reference index
 | |
|                                           ;* on this field.  In that case, the value in DICT_XREF
 | |
|                                           ;* is the name of the symbolic field that calculates the
 | |
|                                           ;* cross-reference index.
 | |
| 
 | |
|    equ DICT_RELATIONAL$         to 23     ;* If non-null, then this field is used to update a relational
 | |
|                                           ;* index in another file and contains the key to a record
 | |
|                                           ;* in that other file.
 | |
| 
 | |
|    equ DICT_RELATED$            to 24     ;* For relational indexes, this field is updated to contain the
 | |
|                                           ;* keys to the related records in the other file.
 | |
| 
 | |
|    equ DICT_PROTECT$            to 25     ;* 1 if this field is protected.  This flag is set by
 | |
|                                           ;* relational indexing process.
 | |
| 
 | |
|    equ DICT_LOWERCASE$          to 26     ;* Controls how indexed fields are indexed:
 | |
|                                           ;* 0 = convert to uppercase
 | |
|                                           ;* 1 = maintain case supplied.
 | |
| 
 | |
|    equ DICT_COMPUTED$           to 27     ;* Reserved for indexing.
 | |
| 
 | |
|    equ DICT_MASTER_FLAG$        to 28     ;* For 'F'-type dictionary records, this flag
 | |
|                                           ;* distinguishes synonym fields from the "real" field.
 | |
|                                           ;* This flag is '0' for synonyms and '1' otherwise.
 | |
| 
 | |
|    equ DICT_DEFAULT$            to 29     ;* SQL default value for insertions.
 | |
| 
 | |
|    equ DICT_REFERENCE$          to 30     ;* SQL.  Indicates this column is a foreign key to the listed table(s).
 | |
| 
 | |
|    equ DICT_NULL$               to 31     ;* SQL.
 | |
|                                           ;* 0 = column can store nulls.
 | |
|                                           ;* 1 = column can't store nulls.
 | |
|                                           ;* We're still figuring out whether this field and
 | |
|                                           ;* DICT_NULL.TRUNC should be the same field.
 | |
|                                           ;*
 | |
|                                           ;* (Well don't keep us in suspense - you've have 20 years or so... )
 | |
| 
 | |
|    equ DICT_UNIQUE$             to 32     ;* SQL.  0=column may contain duplicate values. 1=column must contain unique values.
 | |
| 
 | |
|    equ DICT_LENGTH_LIMIT$       to 33     ;* SQL.  Length (in chars) of data.  Needs to be
 | |
|                                           ;* integrated with bonding.
 | |
| 
 | |
|    equ DICT_PRODUCT$            to 34     ;* Product flag
 | |
|                                           ;* 0 or null - both Advanced Revelation and OpenInsight
 | |
|                                           ;* 1 Advanced Revelation only
 | |
|                                           ;* 2 OpenInsight only
 | |
| 
 | |
|    equ DICT_TIMEDATE$           to 35     ; *TimeDate stamp On dictionary Field - back For OI 8.0
 | |
|    equ DICT_MV_GROUPNAME$       to 36     ; *GroupName For AMV groups - back For OI 8.0
 | |
|    equ DICT_MV_GROUP_MASTER$    to 37     ; *GroupName For AMV groups - back For OI 8.0
 | |
| 
 | |
|    equ DICT_IN_TRUNC$           to 39     ;* The first value in this field is either null, 0, or 1.
 | |
|                                           ;* 0 or null means the default handling of input truncation:
 | |
|                                           ;* if transferring a field into AREV would result in any loss of
 | |
|                                           ;* information, an I/O error is returned.  1 allows the
 | |
|                                           ;* the bond to truncate the data without returning an error.
 | |
|                                           ;* In this case, either one or two values can follow the 1.
 | |
|                                           ;* For character-based fields, a single value specifies what the
 | |
|                                           ;* bond should read in when all information would be lost
 | |
|                                           ;* (e.g., the field consisted of 3 field marks).  For numeric-
 | |
|                                           ;* based fields, the second value is the replacement for
 | |
|                                           ;* numeric underflow and the third value is the replacement for
 | |
|                                           ;* overflow.
 | |
| 
 | |
|    equ DICT_OUT_TRUNC$          to 40     ;* Same as DICT_IN.TRUNC, except for output.
 | |
| 
 | |
|    equ DICT_USER1$              to 41     ;* This field is reserved for the application.
 | |
|    equ DICT_USER2$              to 42     ;* ""
 | |
|    equ DICT_USER3$              to 43     ;* ""
 | |
|    equ DICT_USER4$              to 44     ;* ""
 | |
|    equ DICT_USER5$              to 45     ;* ""
 | |
| 
 | |
|    equ DICT_BITMAP_IDX_FLAG$    to 46     ;* Bitmap Index Flag. MTR 1-5-2011
 | |
|    equ DICT_FOREIGN_KEY_TABLE$  to 47     ;* Flags the column as containing keys to a foreign table
 | |
|                                           ;* (contains the foreign table name)
 | |
| 
 | |
|    equ DICT_OBJECT$             to 51     ;* This field contains binary data; object code for the current Field
 | |
| 
 | |
| 
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
|    * // Equates that define the structure of the special record "%FIELDS%" 
 | |
|    * // found in each Arev Dictionary. All of these fields are associated 
 | |
|    * // multivalued fields.
 | |
|    
 | |
|    equ FIELDS_ID$                to "%FIELDS%"
 | |
| 
 | |
|    equ FIELDS_VERSION$           to 1      ;* Dict.mfs associated version number
 | |
|    equ FIELDS_MAXFIELD$          to 2      ;* The highest FMC number in the dictionary.
 | |
|    equ FIELDS_NAME$              to 3      ;* Contains field names.
 | |
|    equ FIELDS_TYPE$              to 4      ;* Contains DICT_TYPE values.
 | |
|    equ FIELDS_FIELD_NO$          to 5      ;* Contains DICT_FIELD.NO values.
 | |
|    equ FIELDS_INDEX$             to 6      ;* Contains DICT_INDEX.FLAG values.
 | |
|    equ FIELDS_XREF$              to 7      ;* Contains DICT_XREF values.
 | |
|    equ FIELDS_PART$              to 8      ;* Contains DICT_PART values.
 | |
|    equ FIELDS_MVFLAG$            to 9      ;* Contains DICT_SM values.
 | |
|    equ FIELDS_JUST$              to 10     ;* Contains DICT_JUST values.
 | |
|    equ FIELDS_LENGTH$            to 11     ;* Contains DICT_LENGTH values.
 | |
|    equ FIELDS_CONV$              to 12     ;* Contains DICT_CONV values.
 | |
|    equ FIELDS_DEFAULT$           to 13     ;* Contains DICT_DEFAULT values.
 | |
|    equ FIELDS_MASTER_FLAG$       to 14     ;* Contains DICT_MASTER.FLAG values.
 | |
| 
 | |
|    equ FIELDS_PRODUCT$           to 18     ;* Contains DICT_PRODUCT values
 | |
|    equ FIELDS_MV_GROUPNAME$      to 19     ;* GroupName For AMV groups - back For OI 8.0 * mtr 2-21-06
 | |
|    equ FIELDS_MV_GROUP_MASTER$   to 20     ;* GroupMaster For AMV groups - back For OI 8.0 * mtr 2-21-06
 | |
| 
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| #endif
 | |
| ///////////////////////////////////////////////////////////////////////////////
 | |
| ///////////////////////////////////////////////////////////////////////////////
 |