Table Record Layout

Each collector must have only one entry in the collectors table. It can then have one or more entries in the type specific table. The collectors table defines the name, type, source, and target information for the collector. The type specific tables define how values are included in the collector as records are processed.
Table 1. Collectors
Field name Field type Data type Length Description
ibmFileFormat Key byte 2 Data type. Makes content validation specific to a transmission type. See Table 1.
ibmValCollectSourceRecType Key byte 2 Record type on which the collector is defined. Initialize the collector when this record type is processed.
ibmValCollectSourceSecCode Key char 3 Standard entry class code on which the collector is defined. Initialize the collector when this record type is processed. (NACHA only)
ibmValCollectSourceAddenda Key byte 2 Addenda type code on which the collector is defined. Initialize the collector when this record type is processed. It is 0 for all records except addenda records. (NACHA only)
ibmValCollectIndex Key byte 4 Index of the collector (generated by the database view).
ibmValCollectName Payload char 10 Collector name
IbmValCollectorType Payload char 1 Collector type:
  • C - Count
  • S - Sum
  • U - Unique
ibmValCollectTargetRecType Payload byte 2 Target record type. Compare the target value and collector value that this record type is processing.
ibmValCollectTargetFixedPos Payload byte 2 Fixed offset into the target record (X9 only).
ibmValCollectTargetFixedLen Payload byte 2 Fixed length of the target field (X9 only).
ibmValCollectTargetVarPos Payload byte 2 Variable length field offset (X9 only).
ibmValCollectTargetVarLen Payload byte 2 Variable length field length (X9 only).
ibmValCollectTargetFieldDesc Payload byte 2 Field description of target record and field. Relates to ibmValFieldDesc in the validation fields table, Table 5. (NACHA only)
ibmValCollectTargetValue Payload byte 8 Target value. This is used when the target field information is not provided.
ibmValCollectComparison Payload char 2 Comparison type. Use the symbols for:
  • = Equal
  • != Not equal (also <>)
  • < Less than
  • <= Less than or equal
  • > Greater than
  • >= Greater than or equal
ibmValCollectCompareFactor Payload byte 2 Factor by which to multiply the collector value before comparing it to the target value. It is used to determine when a collector value passes a percent threshold.
ibmValCollectCompareConditional Payload char 100 Conditional expression that must be empty, or evaluate to true, before the collector and target values are compared.
ibmValCollectConditional Payload char 100 Conditional expression that must be empty, or evaluate to true, before the collector is activated.
ibmValCollectErrorCode Payload char 24 Context error generated when the record is found to be out of context.
ibmValCollectReject Payload byte 2 Rejection level:
  • -1 - Informational
  • 0 - Warning
  • 1 - Transaction
  • 2 - Bundle or segment
  • 3 - Batch
  • 4 - Transmission
ibmValCollectOverride Payload char 1 Indicates whether the error can be overridden.
  • Y - Yes
  • N - No
Each collector type has a set of required fields:
Table 2. Count collector type fields
Field name Field type Data type Length Description
ibmFileFormat Key byte 2 Data Type. Makes content validation specific to a transmission type. See Table 1.
ibmValCollectName Key char 10 Collector name
ibmValCollectIndex Key byte 4 Index of the collector.
ibmValCollectRecType Payload byte 2 Record type to count.
ibmValCollectConditional Payload char 100 Optional conditional expression for the execution of the collector. If the condition is true, the collector increments. If it is false, the collector does not increment. For more information, see Conditionals.
Note: This field can also be blank.
The sum collector adds an additional value field to the unique collector fields.
Table 3. Sum collector type fields
Field name Field type Data type Length Description
ibmFileFormat Key byte 2 Data type. Makes content validation specific to a transmission type. See Table 1.
ibmValCollectName Key char 10 Collector name
ibmValCollectIndex Key byte 4 Index of the collector.
ibmValCollectRecType Payload byte 2 Record type to sum.
ibmValCollectFieldNum Payload byte 2 Field number used in tracing.
ibmValCollectFixedPos Payload byte 2 Fixed offset into the record (X9 only).
ibmValCollectFixedLen Payload byte 2 Fixed length of the field (X9 only).
ibmValCollectVarPos Payload byte 2 Variable length field offset (X9 only).
ibmValCollectVarLen Payload byte 2 Variable length field length (X9 only).
ibmValCollectFieldDesc Payload char 100 Field description. Relates to ibmValFieldDesc in the validation fields table, Table 5. (NACHA only)
ibmValCollectAddConstant Payload byte 8 Additional value to add when the field is included in the sum.
ibmValCollectConditional Payload char 100 Optional conditional expression for the execution of the collector. If the condition is true, the collector is accumulated. If it is false, it is not. For more information, see Conditionals.
Note: This field can also be blank.
The unique collector shares the count collector fields. It also adds fields to identify the field in the record to process.
Table 4. Unique collector type fields
Field name Field type Data type Length Description
ibmFileFormat Key byte 2 Data type. Makes content validation specific to a transmission type. See Table 1.
ibmValCollectName Key char 10 Collector name
ibmValCollectIndex Key byte 4 Index of the collector.
ibmValCollectRecType Payload byte 2 Record type for the collector.
ibmValCollectFieldNum Payload byte 2 Field number used in tracing (X9 only).
ibmValCollectFixedPos Payload byte 2 Fixed offset into the record (X9 only).
ibmValCollectFixedLen Payload byte 2 Fixed length of the field (X9 only).
ibmValCollectVarPos Payload byte 2 Variable length field offset (X9 only).
ibmValCollectVarLen Payload byte 2 Variable length field length (X9 only).
ibmValCollectFieldDesc Payload char 100 Field Description. Relates to ibmValFieldDesc in the validation fields table, Table 5. (NACHA only)
ibmValCollectOrdering Payload char 12 Options are:
  • Blank - When this field is blank, each new value needs only to be unique. The order of the values does not matter.
  • ASCENDING - Each new value must be greater than the last value.
  • DESCENDING - Each new value must be less than the last value.
  • INCREMENTING - Each new value must be exactly one greater than the last value.
  • INC_START_1 - Each new value must be exactly one greater than the last value and the initial value of the field must be 1.
  • DECREMENTING - Each new value must be exactly one less than the last value.
  • COLLECTION - All of the values that are collected must satisfy the same conditional.
  • EMPTY - No values should be collected.
  • RETAIN_LAST - The collector keeps its last setting. This mode is used for conditionals.
For more information, see Conditionals.
ibmValType Payload char 10 Data type of the field.
ibmValCollectConditional Payload char 100 Optional conditional expression for the execution of the collector. If the condition is true, the collector is checked for uniqueness. If it is false, it is not. For more information, see Conditionals.
Note: This field can also be blank.
The validation fields hold the record and field information used by the NACHA collectors. It is used to obtain the physical location of the field within the record.
Table 5. Validation fields
Field name Field type Data type Length Description
ibmFileFormat Key byte 2 Data type. Makes content validation specific to a transmission type. See Table 1.
ibmValCollectRecType Key byte 2 Type of record. For example,
  • 1 is transmission
  • 5 is NACHA batch
  • 6 is NACHA transaction
ibmValCollectSecCode Key char 3 Standard entry class code.
ibmValCollectAddenda Key byte 2 Addenda type code. It is 0 for all records except addenda records.
ibmValFieldNum Payload byte 2 Field number used in tracing.
ibmValFwdRtnIndicator Payload char 1 Forward return indicator.
  • F is forward entry
  • R is return entry
  • D is dishonored return entry
  • C is contested dishonored return entry
ibmValRecordRuleNum Payload byte 4 Used for activation purposes.
ibmValFieldDesc Payload char 100 Field description.
ibmValFixedPos Payload byte 4 Offset of the field in the record. For more information, see Field Position and Length Columns.
ibmValFixedLen Payload byte 4 The length of the fixed length field. For a variable length field, this value is 0. For more information, see Field Position and Length Columns.
ibmValVarPos Payload byte 4 Offset of the field containing the variable length field. For more information, see Field Position and Length Columns.
ibmValVarLen Payload byte 4 Length of the variable length field. For more information, see Field Position and Length Columns.