PARMLIST DSECT Parameters for the output record exit
WORK@ DS A Address of 16-byte static work area
PFATTR@ DS A Address of print-file-attribute information
RECORD@ DS A Address of the record to be written
RECORDLN DS H Length of the output record
REQUEST DS X Delete or process the record
EOF DS C Last call indicator
Figure 32. Sample Output Record Exit DSECT
The address of the control block containing the following parameters is passed to
the output record exit in a standard parameter list pointed to by register 1:
WORK@ (Bytes 1–4)
A pointer to a static, 16-byte memory block. The exit program can use this
parameter to save information across calls (for example, pointers to work
areas). The 16-byte work area is aligned on a full word boundary and is
initialized to binary zeros prior to the first call. The user-written exit program
must provide the code required to manage this work area.
PFATTR@ (Bytes 5–8)
A pointer to the print-file-attribute data structure. See “Attributes of the Input
Print File” on page 130 for more information on the format of this data structure
and the information contained in it.
RECORD@ (Bytes 9–12)
A pointer to the first byte of the output record. The record resides in a 32KB
buffer (where KB equals 1024 bytes). The buffer resides in storage allocated by
ACIF, but the exit program is allowed to modify the output record.
RECORDLN (Bytes 13–14)
Specifies the length, in bytes, of the output record. If the output record is
modified, this parameter must also be updated to reflect the actual length of the
record.
REQUEST (Byte 15)
Specifies how the record is to be processed by ACIF. On entry to the exit
program, this parameter is X'00'. When the exit program returns control to
ACIF, this parameter must have the value X'00' or X'01', where:
X'00'Specifies that the record be processed by ACIF.
X'01'Specifies that the record be ignored by ACIF.
A value of X'00' on entry to the exit program specifies that the record be
processed. If you want to ignore the record, change the REQUEST byte value
to X'01'. Any value greater than X'01' is interpreted as X'00', and the exit
processes the record.
Note: Only one record can reside in the buffer at any time.
EOF (Byte 16)
An end-of-file (EOF) indicator. This indicator is a 1-byte character code that
signals when ACIF has finished writing the output file.
When EOF is signalled (EOF value = “Y”), the last record has already been
presented to the output exit. The pointer RECORD@ is no longer valid.
Chapter 9. User Exits and Attributes of the Input Print File in OS/390, MVS, VM, and VSE 127