Mask FIELD syntax
The MASK keyword of the FIELD parameter is supported for fields located by either group triggers or float triggers, and also for transactions fields.
Unlike some of the other indexers for other Content Manager OnDemand platforms, the 400 indexer allows an INDEX parameter that is based on the field to include other fields.
Use the
following syntax to specify a field with a mask when the field is
based on a floating trigger:
FIELDn=record,column,length,(TRIGGER=n,BASE={0 | TRIGGER},MASK=’*@#=¬^%’)[,DEFAULT=X'value']
where:- n
- The field parameter identifier. When adding a field parameter,
use the next available number, beginning with
1
(one). - record
- The relative record number from the trigger on which the field
is based. This is the record number where the 400 indexer begins to search for the field.
The supported values include any number from
-255
to255
, including0
. - column
- The relative column number from the BASE (specified with the BASE
keyword of the FIELD parameter). This is the
column number where the 400 indexer
begins to search for the field. A value of
1
(one) refers to the first byte in the record. For files that contain carriage-control characters, column one refers to the carriage-control. If you specify BASE=0, then the column value can be from1
to378
. If you specify BASE=TRIGGER, then the column value can be from-378
to378
. If the specified value exceeds the physical length of the record, then the 400 indexer reports an error condition and terminates processing. - length
- The number of contiguous bytes (characters) that compose the field.
The supported range of values is
1
to250
. The field can extend outside the record length, if the column where it begins lies within the record length. In this case, the 400 indexer adds padding blanks to complete the field. - TRIGGER=n
- Identifies the trigger parameter that the 400 indexer uses to locate the field.
- BASE={0|TRIGGER}
- Determines whether the 400 indexer uses the starting column number of the trigger string value to locate the field data. Choose from 0 (zero) or TRIGGER. If you specify BASE=0, then the 400 indexer adds zero to the field column offset. If you specify BASE=TRIGGER, then the 400 indexer adds the starting column number of the trigger string value to the field column offset. You must specify BASE=0 if the field data always starts in a specific column. You must specify BASE=TRIGGER if the field data doesn't always start in a specific column, but is always offset from the trigger string value a specific number of columns. For example, a trigger occurs in the second record on a page; the trigger string value can begin in any column in the record; a field based on this trigger occurs in the trigger record; the starting column number of the field is always 10 bytes from the starting column number of the trigger; you would specify BASE=TRIGGER and a of 10 (ten) so that the 400 indexer correctly locates the field, regardless of the starting column of the trigger string value.
- MASK='*@#=¬^%'
- Specifies a pattern of symbols that the 400 indexer uses to match data in the field
columns. If the data matches the MASK, then the 400 indexer selects the field. You can
specify the following symbols in the MASK:
For example, given the following definitions:
Table 1. Mask symbols Mask symbol Meaning * Not literal; matches a user-defined mask. Refer to the USERMASK. @ Matches alphabetic characters. # Matches numeric characters. ¬ Matches any non-blank characters. ^ Matches any non-blank character. % Matches the blank character and numeric characters. = Matches any character.
The 400 indexer selects the field only if the data in the field columns contains numeric characters.TRIGGER2=*,25,’SOURCE’,(TYPE=FLOAT) FIELD2=0,38,4,(TRIGGER=2,BASE=0,MASK=’####’,DEFAULT=X’F1F0F0F0’)
- DEFAULT=X'value'
- The default value is used if the field is not found. This occurs
when the trigger locating the field is not found. The default value
can be from
1
to250
characters in length.Attention: The MASK is not applied to the default value.