Module
/********************************************************************** /* UTILITY: VIEWJCL * /* AUTHOR: DAVID LEIGH * /* FUNCTION: USE BYTES 4 THROUGH 8 OF THE MEMBER NAME PLUS THE USER'S * /* 3 BYTE DATABASE PREFIX INPUT (DEFAULT USC) AND BRING UP * /* A MEMBER LIST OF EXECUTE JCL MEMBERS. * /********************************************************************** ISREDIT MACRO (OPT1) ISPEXEC CONTROL ERRORS RETURN /**** SET MESSAGE DISPLAY ON/OFF BASED ON THE DEBUG SWITCH ***/ ISPEXEC VGET (DBGSWTCH) PROFILE IF &DBGSWTCH = &STR(ON) THEN + CONTROL MSG LIST CONLIST SYMLIST NOFLUSH ELSE + CONTROL NOMSG NOLIST NOFLUSH NOPROMPT SELECT (&STR(&OPT1)) WHEN (HELP) GOTO HELPSEC WHEN (AEL) SET LIB = &STR(AEL60.PRD.CNTL) WHEN (AGS) SET LIB = &STR(AGS70.PRD.CNTL) WHEN (AHE) SET LIB = &STR(AHE54.PRD.CNTL) WHEN (AMS) SET LIB = &STR(AMS59.PRD.CNTL) WHEN (CSL) SET LIB = &STR(CSL52.PRD.CNTL) WHEN (DEM) SET LIB = &STR(DEM40.PRD.CNTL) WHEN (DEM) SET LIB = &STR(DEM41.PRD.CNTL) WHEN (DEM) SET LIB = &STR(DEM42.PRD.CNTL) WHEN (FAB) SET LIB = &STR(FAB57.PRD.CNTL) WHEN (GSS) SET LIB = &STR(GSS00.PRD.CNTL) WHEN (LIN) SET LIB = &STR(LIN51.PRD.CNTL) WHEN (MEL) SET LIB = &STR(MEL56.PRD.CNTL) WHEN (NHE) SET LIB = &STR(NHE53.PRD.CNTL) WHEN (NSL) SET LIB = &STR(NSL71.PRD.CNTL) WHEN (UHE) SET LIB = &STR(UHE72.PRD.CNTL) WHEN (USC) SET LIB = &STR(USC10.PRD.CNTL) WHEN (VSL) SET LIB = &STR(VSL55.PRD.CNTL) WHEN (WSL) SET LIB = &STR(WSL50.PRD.CNTL) WHEN ( ) DO SET OPT1 = USC SET LIB = &STR(USC10.PRD.CNTL) END OTHERWISE DO SET ZEDLMSG = &STR(*** "&OPT1" IS NOT A VALID DATABASE + PREFIX ***) ISPEXEC SETMSG MSG(UTLZ001W) EXIT CODE(12) END END /********************************************************************** /* USE "PDS" TO BRING UP THE DESIRED MEMBER LIST * /********************************************************************** ISREDIT (MEMBER) = MEMBER SET OPT1 = &STR(&OPT1&SUBSTR(4:&LENGTH(&STR(&MEMBER)),&STR(&MEMBER))) PDS '&LIB' MEMLIST &STR(&OPT1.*) EXIT /********************************************************************** /* DISPLAY ANY "HELP" WHICH IS AVAILABLE FOR THIS UTILITY * /********************************************************************** HELPSEC: + ISPEXEC SELECT PGM(ISPTUTOR) PARM(HELPSHEL) SET ZEDLMSG = &STR(*** HELP DISPLAYED FOR XXXXXXXX UTILITY + *** NO PROCESSING PERFORMED ***) ISPEXEC SETMSG MSG(UTLZ000) EXIT
Documentation
VIEWJCL is an edit macro which, when executed from a COBOL program, wil00010000 display a member list of production "execute" JCL for this program. 00020000 That JCL may then be edited, browsed, etc. 00030000 00040000 VIEWJCL extracts bytes 4 through 8 of the COBOL member name and then 00050000 prefixes those bytes with a database prefix such as USC (the default if00060000 none is specified) or LIN or WSL. Then VIEWJCL goes to that database's00070000 production JCL library and brings up a member list of all the members 00080000 which begin with that character string. 00090000 00100000 For example, if you are editing program SLS5035, you can type VIEWJCL o00110000 the command line, press ENTER, and you will be displayed a member list 00120000 in the USC10.PRD.CNTL library consisting of the members USC5035 and 00130000 USC5035N. If you had typed VIEWJCL LIN, you would get a member list in00140000 the LIN51.PRD.CNTL library consisting of the members LIN5035 and 00150000 LIN5035N. 00160000 00170000 When you "END" out of looking at the JCL, you'll be back in your 00180000 program. 00190000