Return to Mainframe Utilities Page
Module
/* REXX ***************************************************************/ /* UTILITY: SYS2JCL */ /* AUTHOR: DAVID LEIGH */ /* FUNCTION: THIS EDIT MACRO PROCESSES A FILE OF JES OUTPUT AND */ /* EXTRACTS JUST THE SUBMITTED JCL AND SHIFTS IT BACK TO */ /* THE LEFT TO MAKE EXECUTABLE JCL OUT OF THE THE SYSOUT. */ /* IT DOES NOT, HOWEVER, RESTORE ANY INSTREAM DATA. */ /**********************************************************************/ ADDRESS ISPEXEC 'CONTROL ERRORS RETURN' ADDRESS ISREDIT "MACRO" "EXCLUDE ALL P'=' 1" "FIND ALL '//' 12" "DELETE ALL X" "FIND FIRST P'=' 1" DO WHILE RC = 0 "SHIFT ( .ZCSR 11" "FIND NEXT P'=' 1" END "UP MAX"
Documentation
This edit macro is invoked while editing a file that contains JES job output (typically extracted using the SDSF PRINT command or the TSO OUTPUT command or the GETOUTPT UNIPAC Utility). It searches through to find only the lines that have a "//" in column 12 and deletes the rest of the lines. It then shifts these lines over to column 1. This gives you the JCL that was executed to create this JES sysout. It does not, however, show you any in-stream data as that can't be reliably re-produced from a JES SYSOUT listing. To invoke SYS2JCL, simply edit the dataset that contains the JES SYSOUT (it's your job to get the sysout into a dataset) and type SYS2JCL on the command line and press.