Input field tabs (devices other than 3270 or SLU 2)

An input field tab (FTAB) is a character defined in the DEV statement for separating input fields if the length of the data entered is less than the defined field length, or for when no data is specified for a field. An FTAB causes the MFS input scan to move to the first position of the next defined field. FTABs can be defined only for input from devices other than the 3270 or SLU 2. When no FTABs are defined, each device input field is assumed to be of its defined length.

Select a character for input field separation that is never used for other user data in the data stream. If FTAB is not unique, the data might be misinterpreted by MFS.

For example, the following figure shows some DFLD field definitions and the device format that results from these definitions.

Figure 1. FTAB qualification descriptions
begin figure description - This figure is described in the surrounding text. end figure description

When an FTAB is defined, its use is qualified by specifying FORCE, MIX, or ALL. The previous figure shows how the FTAB qualification affects the results of an MFS input scan following variable operator input of a three-field message.

The following figure provides examples of correct and failed results produced by FTAB specifications. The double-headed arrows indicate that the FTAB qualification does not affect input scan. Input examples 2, 3, and 6 produce correct results using any of the FTAB qualifications but example 8 does not produce correct results regardless of FTAB qualifications. The following topics (FORCE, MIX, and ALL) specify which examples have failed results and why these results are undesirable.

FORCE

FORCE is the default value. Each device input field is assumed to be of its defined length until an FTAB is encountered. When the first FTAB is encountered, it signifies the end of data for the current field. The byte of data following the FTAB is considered the first byte of the next field. In record mode, all subsequent fields in the current record require an FTAB. In stream mode, all subsequent fields require an FTAB. FTABs used on subsequent fields indicate that the character following the FTAB is the first for the next defined field. (This is as if ALL were specified).

In the following figure, examples 1, 2, 3, 5, 6, and 7 produce the desired result. Example 4 fails because no FTAB is supplied following field B (compare with example 5). Example 8 fails because no FTABs are entered, the 0 is occupying the blank (undefined) position, and subsequent fields are thus incorrect (compare with example 1).

MIX

Each device input field is assumed to be of its defined length until an FTAB is encountered. When the first FTAB is encountered, it signifies the end of data for the current field. The byte of data following the FTAB is considered the first byte of the next field. Subsequent fields of the defined length do not require an FTAB; if one is entered and the next field is contiguous (like fields B and C in the example), undesirable results occur (see example 5). Mixed FTABs operate just like a typewriter with tab stops set at the first position of each defined field (columns 1, 6, and 9 in the example).

In the following figure, examples 1, 2, 3, 4, 6, and 7 produce the desired result. Example 5 fails because field B is of its defined length and does not require an FTAB; the FTAB is interpreted to indicate no data for field C (compare with example 4). Example 8 fails because no FTABs are entered, the 0 is occupying the blank (undefined) position, and subsequent fields are thus incorrect (compare with example 1).

ALL

When ALL is specified, each device input field must be terminated by an FTAB regardless of whether it is greater than, less than, or equal to the defined length. When an FTAB is encountered, it signifies the end of data for the current field. The byte of data following the FTAB is considered the first byte of the next field.

In the following figure, examples 2, 3, 5, and 6 produce the desired result. Examples 1, 4, 7, and 8 fail because the required FTABs are not entered.

Figure 2. MFS input scan when FTABs are defined with FORCE, MIX, and ALL
MFS input scan. A comma is used as the FTAB character. The scan includes examples of input that fails because it does not contain the required FTABs.