A - Types, Values, Arrays and Layouts
A Types, Values, and Array Layouts
In This Appendix
This appendix documents the section of SYMBOL/DATABRIDGE/INTERFACE called "Types, values, and array layouts".
Overview
DBEngine and DBSupport entry points return the "Types, Values, and Array Layouts" of SYMBOL/ DATABRIDGE/INTERFACE. The tables in this appendix explain those various values and arrays.
Each array (such as the UPDATE_INFO array) or set of information (such as the Data Error Types) has its own section in this appendix, and that section appears here in the same order in which it appears in the file. Most of these sections provide a table further explaining the information in SYMBOL/DATABRIDGE/INTERFACE, and most of them are cross-referenced from the Using the Databridge API section.
Each section is listed here for your reference:
- DBEngine Entry Point Result Values
- Record Change Types
- Error Manager Types
- Documentation Records
- DBSETOPTION/DBRESETOPTION Run-Time Options
- DBPARAMETERS Processing Parameter Types
- DBAUDITMEDIUM Parameters
- Network Protocol Values
- MAXWAITSECS Values
- ITEM_INFO Array Layout
- STATE_INFO Layout
- DATABASE_INFO Layout
- DATASET_INFO Layout
- SET_INFO Layout
- UPDATE_INFO Layout
- AUDIT_INFO Layout
- Link Update Info Layout
- Audit File Error Subtypes
- Data Error Types
- Processing Limit Types
- Statistics Category Values
- STATISTICS_INFO Array Layout
- FileXtract FileInfo Array Layout
- DBOUTPUTHEAD Procedure Heading
- DBFORMATHEAD Procedure Heading
- DBTRANSFORMHEAD Procedure Heading
- DBFILTERHEAD Procedure Heading
- DBERRORMANAGERHEAD Procedure Heading
- DBFILEREADERHEAD Procedure Heading
- File Attribute Mask Bits
DBEngine Entry Point Result Values
These values are error and status messages, which give you information about how DBEngine or any Accessory linked to DBEngine is running. The Databridge Errors and Messages Guide provides a list of these values (by number) and briefly explains each value.
Record Change Types
The following table provides additional information about record change types as they are documented in SYMBOL/DATABRIDGE/INTERFACE.
These values are found in the UPDATE_INFO [UI_UPDATE_TYPE] and specify the type of update.
Value | Description |
---|---|
DBV_HEADER | This is for internal use only |
DBV_CREATE | This indicates that the record was created. |
DBV_MODIFY_AFTER_IMAGE | This is the after-image of a modify. Use IS rather than = as in the following: IF UI [UI_UPDATE_TYPE] IS DBV_MODIFY_AFTER_IMAGE THEN... |
DBV_DELETE | This indicates that the record was deleted. |
DBV_MODIFY_BEFORE_IMAGE | This is the before-image of a modify. Use IS rather than = as in the following: IF UI [UI_UPDATE_TYPE] IS DBV_MODIFY_BEFORE_IMAGE THEN... |
DBV_MODIFY | This indicates that the record was modified. |
DBV_STATE | This is the state information. For a description of the array layout, see STATE_INFO Layout. |
DBV_DOC | This is a documentation record. For a description of possible values, see Documentation Records. |
DBV_MODIFY_BI | This is the alternate value for DBV_MODIFY_BEFORE_IMAGE. |
DBV_MODIFY_AI | This is the alternate value for DBV_MODIFY_AFTER_IMAGE. |
DBV_LINK_BI | This is the before-image of a link. |
DBV_LINK_AI | This is the after-image of a link. |
Error Manager Types
An Error Manager procedure (see DBERRORMANAGERHEAD) returns the following EMATYPE values:
EMATYPE | Integer | Description |
---|---|---|
DBV_Default | 0 | The Accessory decides what to do with the error. |
DBV_Fatal | 1 | The Accessory terminates. |
DBV_Ignore | 2 | The Accessory ignores the error and continues. |
DBV_Retry | 3 | The Accessory retries the operation. |
Accessory ID Numbers
Databridge Accessories are identified by the following Accessory ID numbers:
AIDTYPE | Integer |
---|---|
DBV_Span | 1 |
DBV_Snapshot | 2 |
DBV_Server | 3 |
(not used) | 4 |
DBV_Lister | 5 |
DBV_Twin | 6 |
DBV_GenFormat | 7 |
DBV_AuditTimer | 8 |
Documentation Records
The following table provides additional information about documentation records from SYMBOL/ DATABRIDGE/INTERFACE. This information is returned when an entry point, such as the DBREADTRANGROUP entry point, requests information about records in the current transaction group.
Field | Description |
---|---|
DB_DOC_TYPE_F | If UI_UPDATE_TYPE in the UPDATE_INFO array is set to DBV_DOC, then the value in this field is one of the values in the following table. |
Value | Description |
---|---|
DB_DOC_TYPE | The type of documentation record Possible values are as follows:
|
initialization) |
|
DB_DOC_MAX_SZ | The maximum size of the documentation record |
DB_DOC_LONGTRAN | Indicates a Long Transaction is in progress. Valid for the following types: DBV_DOC_BEG_TRAN, DBV_DOC_END_TRAN, DBV_DOC_BEG_CP, DBV_DOC_END_CP, and DBV_DOC_SYNC. |
Begin Transaction
The following table provides information about the layout of the begin transaction:
Field | Description |
---|---|
DB_DOC_BEG_TRAN_TC | This field contains the active transaction count if the DB_DOC_TYPE is set to DBV_DOC_BEG_TRAN. |
End Transaction
The following table provides information about the layout of the end transaction:
Field | Description |
---|---|
DB_DOC_END_TRAN_TC | This field contains the active transaction count if the DB_DOC_TYPE is set to DBV_DOC_END_TRAN. |
Restart Data Set Open and Close
The following table provides information about the restart data set open (beginning of task, BOT) and restart data set close (end of task, EOT):
Field | Description |
---|---|
DB_DOC_TASK_JOBNBR | The job number of the job that started the task |
DB_DOC_TASK_MIXNBR | The mix number of the task |
DB_DOC_TASK_NAMELEN | The length of the task name in bytes |
DB_DOC_TASK_NAME | The task name for n words |
Audit File Header
The following table provides the layout of information in the audit file header. This header precedes the first update from an audit file and any messages associated with the new file.
Field | Description |
---|---|
DB_DOC_AF_REC_QPT | DMSII recovery policy Possible values are as follows:
|
DB_DOC_AF_UPDATE_LVL | The audit file update level |
DB_DOC_AF_DBTS | The audit file database timestamp |
DB_DOC_AF_RELEASE | The DMSII release level of the audit file |
DB_DOC_AF_MARK | The DMSII system software release (SSR) level |
DB_DOC_AF_CYCLE | The DMSII SSR cycle |
DB_DOC_AF_AUD_LVL | The audit level number |
Value | Description |
---|---|
DB_DOC_AF_HEADER_SZ | The size of the audit file header information in words |
DB_DOC_MAX_SZ | The maximum size of the documentation record |
DBSETOPTION/DBRESETOPTION Run-Time Options.
The following table provides additional information about the DBSETOPTION/DBRESETOPTION run- time options as they are documented in SYMBOL/DATABRIDGE/INTERFACE. These options are turned on and off by the DBSETOPTION and DBRESETOPTION entry points.
Value | Description |
---|---|
DBV_OP_BI_AI | Requests that updated database records be sent as a pair of before- and after-images |
DBV_OP_DOC | Requests that documentation records be sent to the Accessory in addition to normal CREATES, UPDATES, and DELETES |
DBV_OP_UNGROUPED | Specifies no COMMITs or ABORTs |
DBV_OP_MODELESS | Specifies no reorganization or purge errors |
DBV_OP_NO_WAIT | Specifies whether to wait on NO FILE conditions when an audit file is unavailable. When reset or defaulting to FALSE, the Accessory will enter the Waiting Entries state when a NO FILE is encountered. If set to TRUE, the Accessory receives a DBM_AUD_UNVAIL(7) result code when a NO FILE condition occurs. |
DBV_OP_FILTERED | (No longer used) |
DBV_OP_QPT_GROUP | Requests COMMITS at every QPT rather than the first quiet point following the CHECKPOINT frequency specified in the DBEngine parameter file |
DBV_OP_UNFILT_OK | (No longer used) |
DBV_OP_MAXRECS | Indicates that the Accessory wants record count upper bounds included in all DATASET_INFO arrays |
DBV_OP_GLOBAL_SI | Indicates that the Accessory wants the global STATE_INFO record rather than individual STATE_INFO records for each data set when they are all at the same audit location |
DBV_OP_EMB_EXTR | Allows an Accessory to request an extract of embedded data sets even if INDEPENDENTTRANS is reset. If this option is set but INDEPENDENTTRANS is reset, and the Accessory does a DBSELECT of an embedded data set with a mode=0, DBEngine extracts the embedded records but does not perform any fixup or normal tracking. Any attempt to DBSelect an embedded data set with a mode of 1 (fixup) or 2 (normal) results in a DBM_CANT_TRACK (113) error message. |
DBV_OP_OFFLINE | Prohibits updates to the database during a clone |
DBV_OP_ERROR_SI | Causes DBEngine to send a STATE_INFO update prior to returning an error in DBREADTRANGROUP |
DBV_OP_LONGTRAN | Causes DBEngine to enable commits during long transactions at pseudo quiet points. |
DBV_OP_LINKS | DMSII link items are included in record layouts and replication? |
DBV_OP_READAHEAD | When retrieving audit regions from another system this option causes DBEngine to initiate the next read before the Accessory requests it. |
DBV_OP_STATS | Causes DBEngine to print a statistics report when it finishes replication. |
DBV_OP_ACTIVE | Allows DBEngine to read the active audit file. |
DBV_OP_NO_REV | Converts reversals to normal updates so that both the original update and the reversal update are sent to the Accessory. |
DBV_OP_ITEMCOUNT | Enables item count integrity checking for detecting layout changes. |
DBV_OP_IDLEDB | Causes DBEngine to commit updates when the database is idle |
DBV_OP_SI_ULEVEL | Enables the use of the update level field in SI_HOST_INFO |
DBV_OP_MANUALCOMP | Prevents the automatic compile of tailored software |
DBV_OP_CHECKSUMDS | Causes DBEnterprise to verify the data set block checksums |
DBPARAMETERS Processing Parameter Types
The following table provides additional information about the DBPARAMETERS processing parameter types as they are documented in SYMBOL/DATABRIDGE/INTERFACE. The DBPARAMETERS entry point allows the Databridge Clients and Accessories to specify these values.
In all cases, the specified value of each of these parameters must be within the range dictated by the corresponding option in the DBEngine parameter file. Otherwise, DBEngine will adjust the value accordingly.
For example, if the parameter file has CHECKPOINT CLIENT EVERY 50 (ALLOW 20 - 99999) AUDIT BLOCKS, you must specify a value between 20 and 99999 for DBV_TG_BLOCKS.
If the specified value for a parameter is 0 (and 0 is in the ALLOW range), DBEngine will disable the parameter and not use it.
If the specified value is less than 0, DBEngine will retain the current value for that parameter.
Value | Description |
---|---|
DBV_CONCURR_EXTR | The maximum number of concurrent extracts If this parameter value is less than 0 or not specified, the WORKERS option in the DBEngine parameter file determines the actual number of extract tasks. The minimum number of extract tasks is 1. |
DBV_TG_BLOCKS | The number of audit blocks per transaction group If this value is less than 0 or is not specified, the CHECKPOINT...AUDIT BLOCKS option in the DBEngine parameter file determines the number of audit blocks per transaction group. If this value and the CHECKPOINT value are both less than or equal to 0, then the actual number of audit blocks per transaction group is 100. |
DBV_TG_UPDATES | The number of updates per transaction group If this value is less than 0 or is not specified, the CHECKPOINT...RECORDS option in the DBEngine parameter file determines the number of updates per transaction group. If this value and the CHECKPOINT value are both less than or equal to 0, then the actual number of updates per transaction group is 1000. |
DBV_ELAPSED | The number of seconds of elapsed time per transaction group. If this value is less than 0 or is not specified, the CHECKPOINT...SECONDS option in the DBEngine parameter file determines the number of seconds of elapsed |
time per transaction group. If this value and the CHECKPOINT value are both less than or equal to 0, then the elapsed time per transaction group is unlimited. |
|
DBV_TG_TRANS | The number of transactions per transaction group. If this value is less than 0 or is not specified, the CHECKPOINT...TRANSACTIONS option in the DBEngine parameter file determines the number of transactions per transaction group. If this value and the CHECKPOINT value are both less than or equal to 0, then the actual number of transactions per transaction group is unlimited. |
DBV_THREADS | The number of threads DBEnterprise can use during the extract phase of cloning. If this parameter value is less than 0 or not specified, the ENTERPRISE WORKERS option in the DBEngine parameter file determines the actual number of extract threads. The minimum number of extract threads is 1. |
DBAUDITMEDIUM Parameters
The following table provides additional information about the DBAUDITMEDIUM parameters as they are documented in SYMBOL/DATABRIDGE/INTERFACE. These values are used by the DBAUDITMEDIUM to specify where DBEngine looks for audit files.
AUDITMEDIUM Value | Description |
---|---|
DBV_AM_ORIGPACK | Tells DBEngine to look on the original DASDL-specified pack(s) |
DBV_AM_ALTERNATE | Tells DBEngine to look on an alternate pack |
AUDITTYPE Value | Description |
---|---|
DBV_AM_NEITHER | Tells DBEngine not to look on this source |
DBV_AM_PRIMARY | Tells DBEngine to look for only the primary audit file |
DBV_AM_SECONDARY | Tells DBEngine to look for only the secondary audit file |
DBV_AM_BOTH | Tells DBEngine to look for both the primary and secondary audit file |
Network Protocol Values
The following table provides additional information about the network protocol values as they are documented in SYMBOL/DATABRIDGE/INTERFACE. The DBAUDITSOURCE and DBAUDITSOURCEX use these values to determine which protocol the Accessory uses.
Value | Description |
---|---|
DBV_NET_NONE | Indicates that no network protocol is specified |
DBV_NET_TCPIP | Indicates that the Accessory is using a TCP/IP protocol |
DBV_NET_HLCN | Indicates that the Accessory is using an HLCN (NetBIOS) protocol |
DBV_NET_BNA | Indicates that the Accessory is using a BNA protoco |
MAXWAITSECS Values
The following table provides additional information about the MAXWAITSECS values as they are documented in SYMBOL/DATABRIDGE/INTERFACE and specified by several entry points.
Value | Description |
---|---|
DBV_WAIT_FOREVER | Indicates that DBEngine should retry for more audits indefinitely |
DBV_DONT_WAIT | Indicates that DBEngine should not retry at all |
ITEM_INFO Array Layout
The following table provides additional information about the ITEM_INFO array layout documented in SYMBOL/DATABRIDGE/INTERFACE and returned by several entry points.
Value | Description |
---|---|
II_ENTRY_SIZE | The size in words of the ITEM_INFO array |
Field | Description |
---|---|
II_ITEM_NUM | The item number of the item |
II_PARENT_NUM | The item number of the group that the item is in |
II_DATA_TYPE | The data item type, such as ALPHA, REAL, and so on Possible types are as follows: Type and Description
|
II_REQUIRED | Indicates whether the data item is required or not If the item is required, it may not be NULL. |
II_NAME_SIZE | The length of the name |
II_DECL_LEN | The length of the item specified in the declaration |
II_SCALING | The numeric scaling factor, which specifies how many digits are to the right of the assumed decimal point |
II_RAWOFFSET | 0 indicates II_OFFSET is relative to the user record. 1 indicates II_OFFSET is relative to the original, raw (nonuser) record. This is used primarily for link items, which are not in the user record. |
II_OFFSET | The digit offset to data |
II_SIZE | The digit size of the data |
II_OCCURS | The declared occurrences |
II_DIMS | The number of subscripts the data item requires |
II_SIGNED | Indicates that the numeric item is signed |
II_DESCENDING | Indicates that the item is a descending key This field is valid only if the Accessory is calling an entry point that returns information about key items. |
II_DEPEND_NUM | The occurs-depending-on ITEM_NUM For example, if the DASDL has ADDR-LINES OCCURS 4 DEPENDING ON NUMLINES, then this field would contain the ITEM_NUM of NUM-LINES. |
II_DS_ITEM_NUM | The corresponding ITEM_NUM in the data set (if this is a remap) |
II_LINK_DS_NUM | The target data set number of a link |
II_LINK_SET_NUM | The target set number of a link If the item is a link, 0 indicates that the link is an AA. All other values indicate that the link is a foreign key of this set. |
II_FORMAT | IIF_DEFAULT—Default value, unspecified IIF_DAYS_SINCE_1900—Number of days since 1/1/1900 as a NUMBER (n) IIF_LINC_DATE—Number of days since 1/1/1957 as an ALPHA (n) IIF_TIME_6—Timestamp IIF_TIME_7—Day of the week, date, and time IIF_TIME_60—Time zone, Julian date, time of day in hundredths of a second Various date formats as follows: NOTE: DDD is a number between 1–366 for Julian dates. MMM is a three-letter abbreviation for the month (JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, and DEC). Formats
IIF_HHMMSS—Time of day IIF_TIME_1—Time of day in sixtieths of a second IIF_TIME_11—Time of day in 2.4 microseconds Various combined date and time formats as follows: NOTE: DDD is a number between 1–366 for Julian dates. MMM is a three-letter abbreviation for the month (JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, and DEC).
IIF_NUMERIC—ALPHA containing only the characters 0–9 IIF_ALPHANUMERIC—NUMBER that should be represented as a character string on the client system |
II_NAME | The item name (for 3 words), else 0 |
STATE_INFO Layout
The following table provides additional information about the STATE_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by several entry points.
Field | Description |
---|---|
SI_STRNUM | The DMSII structure number of the data set |
SI_RECTYPE | The variable format record type |
SI_AFN | The audit file number of the data set's current audit location |
SI_ABSN | The audit block serial number of the data set's current audit location |
SI_SEG | The audit file segment number of the data set's current audit location |
SI_INX | The word index in the audit block of the data set's current audit location |
SI_TIME | The timestamp (in TIME (6) format) of the data set's current audit location |
SI_MODE | Possible values are as follows:
|
SI_FORMAT_LEVEL | The data set format update level |
SI_TABLE_LEVEL | The client table format update level |
SI_ITEM_COUNT | The number of data items |
SI_OPTIONS | The SI_REC_OPTIONS record processing options |
SI_NO_LINKS | The field that tells DBEngine not to return any updates to link values |
SI_REORG_NOTIFY | The field that requests a documentation record from DBEngine after the Accessory encounters a reorganization discontinuity for the data set. Possible values are as follows:
|
SI_MODIFIES | The field that indicates which images of modifies should be sent Possible values are as follows:
|
SI_UI_MASK | The values returned in UPDATE_INFO [UI_MASK] on every update See UPDATE_INFO Layout for these values. |
SI_HOST_INFO | Engine-defined information to be returned to DBSELECT |
SI_ENTRY_SIZE | The size in words of the STATE_INFO array |
DATABASE_INFO Layout
The following table provides additional information about the DATABASE_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by the DBDATABASEINFO entry point.
Field | Description |
---|---|
DBI_UPDATE_LEVEL | The database update level |
DBI_UPDATE_TS | The database update timestamp |
DBI_MAX_STRNUM | The last structure number used |
DBI_TIMESTAMP | The database timestamp |
DBI_NAME | The database name (for 3 words) |
DBI_USERCODE | The database usercode (for 3 words) |
DBI_OPTIONS | Various run-time options and values. DBI_FLAT indicates a FileXtract (flat file) database. DBI_RDB indicates an RDB (Remote Database) database. DBI_ACTIVE indicates database is being updated. DBI_ITRANS indicates setting of INDEPENDENTTRANS DASDL option. DBI_ADDRCHECK indicates setting of the ADDRESSCHECK DASDL option. DBI_MAXWORKERS indicates the maximum number of Extract Workers allowed. |
DBI_CURR_AFN | The current (active) audit file number |
DBI_CURR_ABSN | The current audit block serial number |
DBI_MAX_RECSIZE | Maximum dataset record size in words |
DBI_MAX_COMPACT | Maximum COMPACT data record size |
DBI_MAXWORKERS | Maximum number of EXTRACT workers |
Value | Description |
---|---|
DBI_INFO_SIZE | The size in words of the DATABASE_INFO array |
DATASET_INFO Layout
The following table provides additional information about the DATASET_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by several entry points.
Field | Description |
---|---|
DI_STRNUM | The DMSII structure number |
DI_RECTYPE | The DMSII record type number |
DI_FORMAT_LEVEL | The data set format update level |
DI_RECSZ_WORDS | The size of the data set record in words |
DI_RECSZ_BYTES | The size of the data set record in bytes |
DI_PARENT_STRNUM | The structure number of the parent data set if this data set is embedded, else 0 |
DI_NUM_CHILDREN | The number of supported (visible to the Databridge Administrative Console) child (embedded) data sets that this data set has |
DI_DS_STRNUM | The base data set structure number This is the same as DI_STRNUM unless this is a REMAP. |
DI_SUBTYPE | The data set structure type Possible values are as follows:
|
DI_ITEM_COUNT | The number of items in the record layout (relative to the active filter if the DBV_OP_ITEMCOUNT option is enabled) |
DI_MISC_INFO | Contains DI_MISC_FLAGS, DI_TARGET_LINKS, and DI_MAX_RECORDS. See the remaining items in the table for more information about this field. |
DI_VALID_AA | If TRUE, indicates that the absolute address (AA) values (record address) do not change due to normal updates. If this field is TRUE or the DI_STATIC_AA field is true then the value in UPDATE_INFO [UI_AA] is valid |
DI_STATIC_AA | If TRUE, indicates that the UPDATE_INFO [UI_AA] value for the record is static In this case, the value does not change even if the data set is reorganized. |
DI_ALTERED | If TRUE, indicates that the data set/remap was ALTERed using DBGenFormat |
DI_LINKS | If TRUE, indicates that the data set has at least one link item; If FALSE, indicates that the data set has no link items |
DI_TARGET_LINKS | The number of data sets with links to this data set |
DI_ROW_FILTER | The filter has a WHERE clause |
DI_COL_FILTER | The filter omits some columns |
DI_INVALID_PAA | Parent records do not have valid absolute address (AA) values |
DI_MAX_RECORDS | The upper bound on the population of the data set This field is 0 if the run-time option DBV_OP_MAXRECS is reset, which is the default. |
DI_NAME | The data set name (for 17 bytes) |
DI_NAME_SIZE | The length of the data set name given in DI_NAME |
DI_MISC_INFO2 | Miscellaneous information containing the remaining fields in this table |
DI_RECTYPE_NUM | For variable format datasets item number of the record type item |
DI_USERDATA_OFS | Offset to the start of the user-updateable data, in half-bytes |
DI_IMAGE_WORDS | Size of an audit record image, in words |
Value | Description |
---|---|
DI_INFO_SIZE | The size of the DATASET_INFO array |
SET_INFO Layout
The following table provides additional information about the SET_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by several entry points.
Field | Description |
---|---|
XI_STRNUM | The DMSII structure number of the set |
XI_DS_STRNUM | The DMSII structure number of the target data set |
XI_FORMAT_LEVEL | The format update level |
XI_KEYS_COUNT | The number of data items in the set's key |
XI_KEYSZ_WORD | The size of the key in words |
XI_KEYSZ_DIGITS | The size of the key in 4-bit digits |
XI_SUBTYPE | The set structure type Possible values are as follows:
|
XI_NAME_SIZE | The length of the set name in bytes |
XI_DUPLICATES | If TRUE, duplicates are allowed |
XI_KEYCHANGEOK | This item is TRUE (key changes allowed) if any of the following options exist in the set:
|
XI_NAME | The name of the set (for 3 words) |
Value | Description |
---|---|
XI_INFO_SIZE | The size of the SET_INFO array |
UPDATE_INFO Layout
The following table provides additional information about the UPDATE_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by several entry points.
Field | UI_MASK bit # | Description |
---|---|---|
UI_STRNUM | 0 | The DMSII structure number |
UI_RECTYPE | 1 | The DMSII variable format record type |
UI_RECSZ_WORDS | 2 | The size of the record image in words |
UI_UPDATE_TYPE | 3 | The DBV_xxx indicating the type of change, where xxx is MODIFY, DELETE, and so on. |
UI_MODIFY_F | N/A | A value of 1 indicates that the create or delete was originally a modify and the Accessory requested before- and afterimages for modifies |
UI_STRIDX | 4 | The unique index for the data set-recordtype |
UI_MODE | 6 | The data set mode Possible values are as follows (from STATE_INFO [SI_MODE]):
|
UI_STACKNBR | 5 | The stack number of the program making the change |
UI_FORMAT_LEVEL | 7 | The data set format update level |
UI_AA | 8 | The record address If updates can cause the record address to change, such as in an ORDERED data set, this value is 0. The DATASET_INFO [DI_VALID_AA] for this data set is 1 if this field is valid. If the DATASET_INFO [DI_STATIC_AA] for this data set is 1, this field contains a static record number (RSN) rather than a record address. |
UI_PARENT_AA | 9 | The record address of the parent record If the DATASET_INFO [DI_STATIC_AA] for the parent data set is 1, this field contains a static record number rather than a record address. |
UI_AFN | 10 | The audit file number |
UI_ABSN | 11 | The audit block serial number |
UI_SEG | 12 | The audit file disk segment |
UI_INX | 13 | The word offset within the audit block |
UI_TIME | 14 | The approximate audit time in TIME(6) format For extracted (cloned) records, the time the record was read from the database |
UI_OPTIONS | 15 | Specifies processing/formatting options See the remainder of this table for more information about this field. |
UI_WORKER | N/A | Indicates the Extract Worker number that produced the record |
UI_STATIC_AA | N/A | If 1, then the addresses in UI_AA and UI_PARENT_AA are static |
UI_PREFILT | N/A | If 1, then the update was read from a filtered audit file |
UI_BI_AI | N/A | If 1, then the Accessory requests both before- and afterimages for this update and indicates a single abort reversal |
UI_MASK | N/A | Tells DBServer which UPDATE_INFO fields to return to the client Each bit corresponds to a field. |
Value | Description |
---|---|
UI_INFO_SIZE | The size in words of the UPDATE_INFO array |
AUDIT_INFO Layout
The following table provides additional information about the AUDIT_INFO layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by the DBOPENAUDIT entry point.
Field | Description |
---|---|
AI_BLOCKSIZE | The maximum audit blocksize in words |
AI_LASTSEG | The last segment number |
AI_DBTIMESTAMP | The database timestamp |
AI_OPENTIMESTAMP | The block 0 timestamp |
AI_AUDITLEVEL | The audit level, for example, 7 |
AI_MAJORVERSION | The major part of SSR, for example, 45 |
AI_MINORVERSION | The minor part of SSR, for example, 1 |
AI_UPDATELEVEL | The database update level |
AI_FLAGS | Miscellaneous audit flags, as follows:
|
AI_FIRST_ABSN | The ABSN of the first data block in the audit file |
AI_MAX_RECSIZE | The size of the largest dataset record, in words |
AI_COMPACTSIZE | The size of the largest COMPACT dataset record |
AI_INFO_SIZE | The size of the AUDIT_INFO layout |
Link Update Info Layout
The following two fields comprise the first word of the data portion of a link update:
Field | Description |
---|---|
LNK_OFS_F | The original word offset |
LNK_SZ_F | The size of the link update in words |
Audit File Error Subtypes
The following table provides additional information about the audit file error subtypes as they are documented in SYMBOL/DATABRIDGE/INTERFACE.
Subtype | Description |
---|---|
UNAVAIL_NO_UPDATE | The database has never been updated |
UNAVAIL_ACTIVE | The audit file is the active (current) audit file |
UNAVAIL_NO_MORE | The active audit file has no more audit available |
UNAVAIL_BAD_AFN | Invalid audit file number |
UNAVAIL_EXCLUSIVE | Another program has opened the file with EXCLUSIVE=TRUE |
UNAVAIL_NOT_FOUND | The audit file is not present |
UNAVAIL_OFFLINE | The audit file was moved from disk to tape storage |
UNAVAIL_NO_FAMILY | The audit file pack family is not present |
UNAVAIL_UNKNOWN | The audit file is unavailable for an unknown reason |
Data Error Types
The table below provides additional information about the data error types as they are documented in SYMBOL/DATABRIDGE/INTERFACE.
These errors occur when invalid data is entered.
Value | Description |
---|---|
DBV_DE_BAD_NUMBER | Indicates that the numeric item had undigits (4"ABCDEF"). |
DBV_DE_BAD_SIGN | Indicates that a signed numeric item had an invalid sign digit. The sign digit should be either 4"C" or 4"D". |
DBV_DE_BAD_ALPHA | Indicates that an alpha item had control characters |
DBV_DE_NULL_NUMBER | Indicates that a numeric item was NULL |
DBV_DE_NULL_ALPHA | Indicates that an alpha item was NULL |
DBV_DE_OVERFLOW | Indicates that the numeric item caused an integer overflow |
Processing Limit Types
The following table provides additional information about the processing limit types as they are documented in SYMBOL/DATABRIDGE/INTERFACE. These values are used by entry points that set processing limits.
Value | Description |
---|---|
DBV_LIMIT_UNSPECIFIED | Indicates that no processing limits are specified |
DBV_LIMIT_BEFORE | Indicates that processing stops at the QPT before the limit |
DBV_LIMIT_AFTER | Indicates that processing stops at the QPT after the limit |
Statistics Category Values
The following table provides additional information about the statistics category values as they are documented in SYMBOL/DATABRIDGE/INTERFACE.
Each of these values corresponds to a set of values in a STATISTICS_INFO array. All times are in units of 2.4 microseconds.
Value | Description |
---|---|
DBV_STAT_FIRST_TIME | The lowest time value |
DBV_STAT_AF_OPEN | The time spent opening audit files |
DBV_STAT_AF_CLOSE | The time spent closing audit files |
DBV_STAT_AF_READ | The time spent reading audit files |
DBV_STAT_CF_OPEN | The time spent opening DMSII CONTROL files |
DBV_STAT_CF_CLOSE | The time spent closing DMSII CONTROL files |
DBV_STAT_CF_READ | The time spent reading DMSII CONTROL files |
DBV_STAT_DF_OPEN | The time spent opening DESCRIPTION files |
DBV_STAT_DF_CLOSE | The time spent closing DESCRIPTION files |
DBV_STAT_DF_READ | The time spent reading DESCRIPTION files |
DBV_STAT_DB_OPEN | The time spent opening databases |
DBV_STAT_DB_CLOSE | The time spent closing databases |
DBV_STAT_DB_READ | The time spent reading databases |
DBV_STAT_DB_WRITE | The time spent performing database stores/deletes |
DBV_STAT_PF_OPEN | The time spent opening port files |
DBV_STAT_PF_CLOSE | The time spent closing port files |
DBV_STAT_PF_READ | The time spent waiting for port file reads |
DBV_STAT_PF_WRITE | The time spent waiting for port file writes |
DBV_STAT_BT_WAIT | The time spent waiting for begin transactions |
DBV_STAT_ET_WAIT | The time spent waiting for end transactions |
DBV_STAT_SP_WAIT | The time spent waiting for end transaction with syncpoint waits |
DBV_STAT_CB_WAIT | The time spent waiting for callbacks |
DBV_STAT_EX_WAIT | The time spent waiting for DMSII to return records during an extracts |
DBV_STAT_SLEEP_WAIT | The time the program "slept" while waiting for a timer to expire |
DBV_STAT_TG_WAIT | The time spend waiting while trying to read updates |
DBV_STAT_LAST_TIME | The highest time value |
DBV_STAT_FIRST_SIZE | The lowest size value |
DBV_STAT_AA_SIZE | The size of the audit areas (regions) read in words |
DBV_STAT_AB_SIZE | The size of the audit blocks read in words |
DBV_STAT_AR_SIZE | The size of the audit records read in words |
DBV_STAT_PR_SIZE | The size of the port messages read in bytes |
DBV_STAT_PW_SIZE | The size of the port messages written in bytes |
DBV_STAT_PA_SIZE | The size of port messages available for reading in bytes |
DBV_STAT_COMMIT_BLOCKS | The number of commits caused by a "CHECKPOINT n BLOCKS" setting |
DBV_STAT_COMMIT_RECORDS | The number of commits caused by a "CHECKPOINT n RECORDS" setting |
DBV_STAT_COMMIT_TIME | The number of commits caused by a "CHECKPOINT n MINUTES" setting |
DBV_STAT_COMMIT_TRANS | The number of commits caused by a "CHECKPOINT n TRANSACTIONS" setting |
DBV_STAT_COMMIT_QPT | The number of commits caused by the need to commit at the next quiet point |
DBV_STAT_COMMIT_EOF | The number of commits caused by reaching the end of an audit file |
DBV_STAT_CREATES | The number of creates per commit |
DBV_STAT_DELETES | The number of deletes per commit |
DBV_STAT_MODIFIES | The number of modifies per commit |
DBV_STAT_STATE | The number of StateInfo updates per commit |
DBV_STAT_DOCS | The number of doc records per commit |
DBV_STAT_UPDATES | The number of updates per commit |
DBV_STAT_TRANS | The number of transactions per commit |
DBV_STAT_LONGTRANS | The number of active Long Transacations per commit |
DBV_STAT_LAST_SIZE | The highest size value |
STATISTICS_INFO Array Layout
The following table provides additional information about the STATISTICS_INFO array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by the DBSTATISTICS entry point.
Field | Description |
---|---|
STAT_COUNT | The number of data points |
STAT_MIN | The minimum time/size |
STAT_MAX | The maximum time/size |
STAT_TOTAL | The sum of all times/sizes |
Value | Description |
---|---|
STAT_INFO_SIZE | The size of STATISTICS_INFO |
FileXtract FileInfo Array Layout
The following table provides additional information about the FileInfo array layout as it is documented in SYMBOL/DATABRIDGE/INTERFACE and returned by the DBFILEREADER entry point.
Field | Description |
---|---|
FI_FILENBR | The file number The maximum value for this field is 65535 |
FI_RECLOC | The location of the record within the file The meaning and layout of this word varies from one FileXtract Reader to another. |
FI_RECTS | The timestamp of the returned record |
FI_STRIDX | The structure index specified by the FileXtract Reader |
FI_PARAMLEN | The length of the FileXtract Reader parameter in bytes |
FI_PARAM | The first word of the FileXtract Reader parameter string |
Value | Description |
---|---|
FIV_PARAMLENMAX | The maximum length of the FileXtract Reader parameter in bytes |
FIV_INFOSZ | The size of the FileInfo array in words |
DBOUTPUTHEAD Procedure Heading
This define can be used as a heading for any output routines you write. Include the name of your output routine in brackets after DBOUTPUTHEAD. For example:
DBOUTPUTHEAD [MyWriter]
begin
…
end MyWriter;
Formatting procedures call output routines with the formatted record.
If the output procedure encounters an error, it should return the appropriate DBMTYPE error code. Otherwise it should return DBM_OK.
Input | Type | Definition |
---|---|---|
P | POINTER | The pointer to the formatted record |
CHARS | INTEGER | The length of the formatted record in bytes |
UPDATE_INFO | ARRAY | A description of the modification For a description of the array, see the UPDATE_INFO Layout. |
RawImage | ARRAY | The original unformatted record |
DBFORMATHEAD Procedure Heading
You can use this define as the heading for any formats that you write. Include the name of your formatting routine in brackets after DBFORMATHEAD. For example,
DBFORMATHEAD [MyFormat]
begin
…
end MyFormat;
```
If the formatting procedure encounters an error, it should return the appropriate DBMTYPE error
code. Otherwise it should return DBM_OK.
| Input | Type | Definition |
|:------- |:-------- |:-------------- |
| USERREC | ARRAY | The unformatted data set record from the database or audit trail |
| UPDATE_INFO | ARRAY | A description of the modification<br><br>For a description of the array, see the [UPDATE_INFO Layout](#update_info-layout). |
| CALLBACK | DBMTYPE | The procedure that receives the formatted record<br><br>The formatted record is usually written to a file or sent to a Databridge client. |
<hr>
## DBTRANSFORMHEAD Procedure Heading
You can use this define as the heading for any update transform procedures you write.
Include the name of your transform routine in brackets after DBTRANSFORMHEAD. For example,
DBTRANSFORMHEAD [MyTransform] begin … end MyTransform;
If the transform procedure encounters an error, it should return the appropriate DBMTYPE error
code. Otherwise it should return DBM_OK.
| Parameter | Type | Definition |
|:-------- |:-------- |:--------- |
| UI | ARRAY | A description of the modification<br><br>For a description of the array, see [UPDATE_INFO Layout](#update_layout-info). |
| BI | ARRAY | The before-image of the record<br><br>This array is valid only for update types DBV_DELETE and DBV_MODIFY. See [Record Change Types](#record-change-types) for a description of these types. |
| AI | ARRAY | The after-image of the record<br><br>This array is not valid for update type DBV_DELETE. See [Record Change Types](#record-change-types) for a description of this type. |
| DBFORMAT | PROCEDURE | The formatting procedure the transform procedure calls after the update is transformed<br><br>See [DBFORMATHEAD Procedure Heading](#dbformathead-procedure-heading). |
| WRITER | PROCEDURE | The procedure that writes the formatted record<br><br>See [DBOUTPUTHEAD Procedure Heading](#dboutputhead-procedure-heading). |
<hr>
## DBFORMATHEAD Procedure Heading
You can use this define as the heading for any formats that you write. Include the name of your
formatting routine in brackets after DBFORMATHEAD. For example,
DBFORMATHEAD [MyFormat] begin … end MyFormat;
If the formatting procedure encounters an error, it should return the appropriate DBMTYPE error
code. Otherwise it should return DBM_OK.
| Input | Type | Definition |
|:--------- |:---------- |:---------------- |
| USERREC | ARRAY | The unformatted data set record from the database or audit trail |
| UPDATE_INFO | ARRAY | A description of the modification<br><br>For a description of the array, see the [UPDATE_INFO Layout](update_info-layout). |
| CALLBACK | DBMTYPE | The procedure that receives the formatted record<br><br>The formatted record is usually written to a file or sent to a Databridge client. |
<hr>
## DBTRANSFORMHEAD Procedure Heading
You can use this define as the heading for any update transform procedures you write.
Include the name of your transform routine in brackets after DBTRANSFORMHEAD. For example,
DBTRANSFORMHEAD [MyTransform] begin … end MyTransform;
If the transform procedure encounters an error, it should return the appropriate DBMTYPE error
code. Otherwise it should return DBM_OK.
| Parameter | Type | Definition |
|:--------- |:---- |:------------- |
| UI | ARRAY | A description of the modification<br><br>For a description of the array, see [UPDATE_INFO Layout](#update_info-layout). |
| BI | ARRAY | The before-image of the record<br><br>This array is valid only for update types DBV_DELETE and DBV_MODIFY. See [Record Change Types](#record-change-types) for a description of these types. |
| AI | ARRAY | The after-image of the record<br><br>This array is not valid for update type DBV_DELETE. See [Record Change Types](#record-change-types) for a description of this type. |
| DBFORMAT | PROCEDURE | The formatting procedure the transform procedure calls after the update is transformed<br><br>See [DBFORMATHEAD Procedure Heading](#dbformathead-procedure-heading). |
| WRITER | PROCEDURE | The procedure that writes the formatted record<hr><hr>See [DBOUTPUTHEAD Procedure Heading](#dboutputhead-procedure-heading).
<hr>
## DBFILTERHEAD Procedure Heading
You can use this define as the header for any filters that you write. Include the name of your filtering
routine in brackets after DBFILTERHEAD. For example,
DBFILTERHEAD [MyFilter] begin … end MyFilter;
A false return value indicates that the caller should discard the update because it did not satisfy the
filter condition. Filter procedures return a Boolean result, but additional information can be placed
in the DBMResultF field of that result. That field must contain a DBMTYPE value describing any error
encountered.
| Parameter | Type | Definition |
|:---------- |:----- |:------------ |
| USERREC | ARRAY | The unformatted data set record from the audit trail |
| UPDATE_INFO | ARRAY | A description of the modification<br><br>For a description of the array, see [UPDATE_INFO Layout](#update_info-layout). |
<hr>
## DBERRORMANAGERHEAD Procedure Heading
You can use this define to declare an error handler procedure heading.
Include the name of your output routine in brackets after DBERRORMANAGERHEAD. For example,
DBERRORMANAGERHEAD [MyHandler] begin … end MyHandler; ```
The procedure should return an EMATYPE result code.
Parameter | Type | Definition |
---|---|---|
ACCESSORYID | AIDTYPE | The ID number of the Accessory |
ERRNBR | DBMTYPE | The error message number |
PERRMSG | POINTER | The error message text |
ERRMSGLEN | REAL | The length of the error message |
DBFILEREADERHEAD Procedure Heading.
Use this define to declare a heading for a FileXtract Reader procedure. A Reader procedure reads a record from a non-DMSII file and returns it to DBEngine, which returns it to an Accessory for processing.
Include the name of your file reader routine in brackets after DBFILEREADERHEAD. For example,
DBFILEREADERHEAD [MyReader]
begin
…
end MyReader;
If the file reader procedure encounters an error, it should return the appropriate DBMTYPE error code. Otherwise it should return DBM_OK.
Parameter | Type | Definition |
---|---|---|
FileInfo | ARRAY | See FileXtract FileInfo Array Layout for more information |
FileRecord | ARRAY | Record contents to pass to DBEngine |
File Attribute Mask Bits
Use the file attribute mask bits in this section when you call the DBFILEATTRIBUTE entry point. These bits correspond to GETSTATUS request type 3 calls.
For example, to request the creation date and time, use the following mask:
0 & 1 [CREATIONDATEB:1] & 1 [CREATIONTIMEB:1]
For a description of each attribute, refer to a Unisys GETSTATUS/SETSTATUS programmer's reference.
Attribute | Mask bit |
---|---|
CREATIONDATEB | 01 |
SIZESB | 02 |
SAVEFACTORB | 03 |
AREASECTORSB | 05 |
ROWSINUSEB | 07 |
FileOrDirB | 09 |
AREASB | 10 |
EOFSEGMENTSB | 11 |
EOFLASTSEGBITSB | 12 |
ACCESSDATEB | 15 |
VERSIONB | 19 |
CYCLEB | 20 |
TIMESTAMPB | 21 |
ACCESSTIMEB | 25 |
USERINFOB | 26 |
ALTERDATEB | 27 |
ALTERTIMEB | 28 |
CREATIONTIMEB | 29 |
BASEUNITNBRB | 30 |
ROWSLINKB | 33 |
ORGANIZATION | 34 |
STRUCTUREB | 40 |
FILELENGTHB | 41 |