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; Tivoli Workload Scheduler for z/OS 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
The 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
The JCC is starting. The exit is called for the first time.
J
The 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
Is set by the exit. These 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
The name of the job that the archiving exit is called for.
JOBNUM
The current job number in the format JOBnnnnn, where nnnnn is a number.
CLASS
The current SYSOUT class.
SIZE
The 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
The 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
The current SYSOUT record. SIZE should be used to determine the size of the current record.
ERRCODE
The 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 because JCC has started to process a new job.
SYSDISP
The SYSOUT disposition information in effect for the current job. See the description of SYSOUTDISP on the JCCOPTS statement (page ***) for more information about this parameter. 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.