z/OS JES2 Initialization and Tuning Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


How to Add Your Own Output Separator Routine

z/OS JES2 Initialization and Tuning Guide
SA32-0991-00

If you write your own separator routine, it must conform to the following requirements:
  • The routine must have a unique name and this name must be specified in the PARM= parameter on the EXEC card for the external writer. If you do not specify the name of an output separator routine, no separator records are written.
    Note: Do not use CERTIFY as the name of your output separator routine.
    Refer to The EXEC Statement for details on specifying an output separator routine on the PARM= parameter.
  • If you want to replace the standard IBM routine, then name your routine IEFSD094. This should reside in SYS1.LINKLIB or in a library concatenated to LINKLIB through a LNKLSTxx member of SYS1.PARMLIB.
  • The routine must use standard entry and exit linkages, saving and restoring its caller's registers, and returning to its caller through the RETURN macro, with a return code in register 15.
  • The routine must use the QSAM PUT macro in locate mode to write separation records to the output data set.
  • The routine must use the GETMAIN and FREEMAIN macros, or the STORAGE macro, to obtain and release the storage required for work areas.
  • The routine must establish its own synchronous error exit routine, and place the exit address in the DCBSYNAD field of the output DCB. The error routine will receive control during output writing in case of an uncorrectable I/O error; it must set a return code of 8 (binary) in register 15 to indicate an unrecoverable output error.

    If the separator routine completes processing successfully, it must set a return code of 0 in register 15, before returning to its caller.

Note: The separator routine receives control in problem-program state, but with a protection key of 0. Therefore, the routine must ensure data protection during its execution.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014