Interface to the exit

The SYSOUT archiving exit is invoked in task mode, problem state, and key 8 and the job-step task is APF-authorized. The active task runs with the same access authority as the job-step task. The exit must restore this state before returning to its caller.

Control is passed to the exit using the BAL instruction. The exit must return to its caller using the address and addressing mode passed to it in general register 14.

If the exit abends, it is flagged as not executable; HCL Workload Automation for Z does not try to call the exit again.

When the exit is entered, register 1 contains the address of the parameter list. Each address in this list is used to locate the parameter value. These parameters are passed to the exit:

EQQUX005 parameters

 CALLTYPE  DS   CL1    (Call type)
 RETCODE   DS   F      (Return code)
 JOBNAME   DS   CL8    (Name of current job)
 JOBNUM    DS   CL8    (Current job number)
 CLASS     DS   CL1    (Current SYSOUT class)
 SIZE      DS   F      (Size of current SYSOUT record)
 RECFM     DS   X      (Current record format)
 USERAREA  DS   A      (Address of job related info)
 RECORD    DS   X      (Current SYSOUT or event record)
 ERRCODE   DS   H      (Current error code)
 SYSDISP   DS   CL2    (Job SYSOUT disposition)
CALLTYPE
Defines the circumstances under which the exit is called:
B
The exit is called to process a SYSOUT record that has not been processed by the JCC because the JCC is skipping forward in the current SYSOUT data set.
C
JCC is ending. The exit is called for the last time.
E
There is no more output for the current job. This is the last call for the current job.
F
The exit is called because the JCC is starting to process a job that has failed.
I
JCC is starting. The exit is called for the first time.
J
JCC is starting to process a new job. This is the first call for the current job.
N
A normal SYSOUT record is passed to the exit.
S
The exit is called because the JCC has found an error while processing the current SYSOUT data set.
T
The exit is called to process a SYSOUT record that has caused an incident record to be created in the JCC incident log data set.
RETCODE
Set by the exit. The following values are recognized by the JCC:
0
Normal return. The JCC continues normal processing.
4
Stop scanning the current SYSOUT data set. The JCC continues reading the current data set and calls the archiving exit for each record but does not perform other processing for the current data set.
8
Stop calling the archiving exit for this data set. The JCC continues reading the current data set but does not call the archiving exit again. The exit will be called if there are more SYSOUT data sets in the current job.
12
Stop calling the archiving exit. The JCC continues normal processing but does not call the archiving exit again. You must stop the JCC and start it again to reactivate the exit.
JOBNAME
Name of the job that the archiving exit is called for.
JOBNUM
Current job number, in the format JOBnnnnn where nnnnn is a number.
CLASS
Current SYSOUT class.
SIZE
Size of the current SYSOUT record.
RECFM
The current record format defined in the same way as the DCBRECFM field in the mapping of a DCB.
USERAREA
Address containing information about the current job and the current SYSOUT data set in an area mapped as follows:
USERAREA map
 JOBNAME   DS   CL8    (Job name)
 JOBSTART  DS   CL8    (Job start time, format HH.MM.SS)
 JOBEND    DS   CL8    (Job end time, format HH.MM.SS)
 DATE      DS   CL8    (Current date, format YY/MM/DD)
 SYSTEM    DS   CL5    (Name of z/OS system)
 TRKID     DS   CL8    (Tracking identification)
 STEPNAME  DS   CL8    (Step name from IEF450I)
 DSNAME    DS   CL44   (SYSOUT data set name)
 SYSCODE   DS   CL4    (System abend code from IEF450I)
 USERCODE  DS   CL5    (User abend code from IEF450I)
 JOBNUM    DS   CL8    (Job number)
RECORD
Current SYSOUT record. SIZE should be used to determine the size of the current record.
ERRCODE
Error code for the current job. In JES2, the error code is nonzero only when the exit is called for a SYSOUT record that has set a nonzero EID after matching a JCC table entry. Subsequent calls for the same job will have ERRCODE set to zero, unless a new EID is set by a subsequent match. When the exit is called is because JCC has started to process a new job.
SYSDISP
SYSOUT disposition information in effect for the current job. For details, see the description of the SYSOUTDISP parameter of the JCCOPTS statement. The exit can change the SYSOUT disposition for a job at any time, but the normal disposition will be restored when the JCC starts to process the next job.