The assembler calls the exit with a request type of 3 (READ) when
the exit is supplying the primary input records.
The exit sets the
return code in the Exit Parameter List to one of
these values:
- 0
- A record is supplied. The record must be placed in the area
pointed to by the buffer pointer field. The record area is 80 characters
in length.
The user exit should maintain the absolute record number and the relative record number.
These fields are set to zero before the OPEN request. The assembler
uses the relative record number in diagnostic messages when you specify the FLAG(RECORD)
assembler option. If you specify the ADATA assembler option, the
assembler includes both fields in the associated data file Source
Analysis record.
If you want to provide the assembler with
the values for the system variables &SYSIN_DSN, &SYSIN_MEMBER,
and &SYSIN_VOLUME, the user exit must set the reason code to 4
and place the values in the data set name, member name, and volume serial fields
of the exit-specific information block. You can provide this information during the
OPEN call, or whenever the exit supplies a record to the assembler.
If the exit is reading records from concatenated data sets, it should
supply the data set information with the first record from each data
set in the concatenation.
If the exit does not supply the data
set information, the system variables are set to null, and the primary
input data set details are not shown in the Diagnostic Cross Reference
and Assembler Summary section of the listing, nor are they included
in the ADATA Job Identification record.
- 16
- Indicates to the assembler that there are no more records. This
indication is equivalent to end-of-file processing for input data
sets.