Batch processing panels, CLISTs, and skeletons
The Batch option uses ISPF dialog management services. The following code show the Batch Selection and Batch JCL generation panel formats. See the z/OS ISPF Dialog Developer's Guide and Reference for a general description of panel definition formats.
Batch selection panel definition (ISRJPA) (Part 1 of 4):
)PANEL KEYLIST(ISRSAB,ISR)
)ATTR DEFAULT(...) FORMAT(MIX) /* ISRJPA - ENGLISH -
7.5
*/
0B TYPE(AB)
0D TYPE(PS)
04 TYPE(ABSL) GE(ON)
05 TYPE(PT)
09 TYPE(FP)
0A TYPE(NT)
0C TYPE(NT) SKIP(ON)
11 TYPE(SAC)
22 TYPE(WASL) SKIP(ON) GE(ON)
08 TYPE(CH)
10 TYPE(ET)
26 AREA(SCRL) EXTEND(ON)
27 TYPE(CEF) PADC(USER) CKBOX(ON)
28 TYPE(NEF) CAPS(ON) PADC(USER)
)ABC DESC('Menu') MNEM(1)
PDC DESC('Settings') UNAVAIL(ZPM1) MNEM(1) ACC(CTRL+S)
ACTION RUN(ISRROUTE) PARM('SET')
PDC DESC('View') UNAVAIL(ZPM2) MNEM(1) ACC(CTRL+V)
ACTION RUN(ISRROUTE) PARM('BR1')
PDC DESC('Edit') UNAVAIL(ZPM3) MNEM(1) ACC(CTRL+E)
ACTION RUN(ISRROUTE) PARM('ED1')
PDC DESC('ISPF Command Shell') UNAVAIL(ZPM4) MNEM(6) ACC(CTRL+C)
ACTION RUN(ISRROUTE) PARM('C1')
PDC DESC('Dialog Test...') UNAVAIL(ZPM5) MNEM(8) ACC(CTRL+T)
ACTION RUN(ISRROUTE) PARM('DAL')
PDC DESC('Other IBM Products...') UNAVAIL(ZPM6) MNEM(1) ACC(CTRL+O)
ACTION RUN(ISRROUTE) PARM('OIB')
PDC DESC('SCLM') UNAVAIL(ZPM7) MNEM(3) ACC(CTRL+L)
ACTION RUN(ISRROUTE) PARM('SCL')
PDC DESC('ISPF Workplace') UNAVAIL(ZPM8) MNEM(6) ACC(CTRL+W)
ACTION RUN(ISRROUTE) PARM('WRK')
PDC DESC('Status Area...') UNAVAIL(ZPMS) MNEM(8) ACC(CTRL+A)
ACTION RUN(ISRROUTE) PARM('SAM')
PDC DESC('Exit') MNEM(2) PDSEP(ON) ACC(CTRL+X) ACTION RUN(EXIT)
)ABCINIT
.ZVARS=ISR@OPT
)ABC DESC('Utilities') MNEM(1)
PDC DESC('Library') UNAVAIL(ZUT1) MNEM(1) ACC(ALT+1)
ACTION RUN(ISRROUTE) PARM('U1')
PDC DESC('Data set') UNAVAIL(ZUT2) MNEM(1) ACC(ALT+2)
ACTION RUN(ISRROUTE) PARM('U2')
PDC DESC('Move/Copy') UNAVAIL(ZUT3) MNEM(1) ACC(ALT+3)
ACTION RUN(ISRROUTE) PARM('U3')
PDC DESC('Data Set List') UNAVAIL(ZUT4) MNEM(2) ACC(ALT+4)
ACTION RUN(ISRROUTE) PARM('U4')
PDC DESC('Reset Statistics') UNAVAIL(ZUT5) MNEM(5) ACC(ALT+5)
ACTION RUN(ISRROUTE) PARM('U5')
PDC DESC('Hardcopy') UNAVAIL(ZUT6) MNEM(8) ACC(ALT+6)
ACTION RUN(ISRROUTE) PARM('U6') 
Batch selection panel definition (ISRJPA) (Part 2 of 4)
PDC DESC('Reserved') UNAVAIL(ZUTDT) MNEM(1) ACTION RUN(ISRROUTE) PARM('UDT')
PDC DESC('Outlist') UNAVAIL(ZUT7) MNEM(1) ACC(ALT+8)
ACTION RUN(ISRROUTE) PARM('U8')
PDC DESC('Commands...') UNAVAIL(ZUT8) MNEM(1) ACC(ALT+9)
ACTION RUN(ISRROUTE) PARM('U9')
PDC DESC('Reserved') UNAVAIL(ZUT9) MNEM(6) ACTION RUN(ISRROUTE) PARM('U10')
PDC DESC('Format') UNAVAIL(ZUT10) MNEM(1) ACC(ALT+F1)
ACTION RUN(ISRROUTE) PARM('U11')
PDC DESC('SuperC') UNAVAIL(ZUT11) MNEM(1) PDSEP(ON) ACC(CTRL+F2)
ACTION RUN(ISRROUTE) PARM('U12')
PDC DESC('SuperCE') UNAVAIL(ZUT12) MNEM(2) ACC(CTRL+F3)
ACTION RUN(ISRROUTE) PARM('U13')
PDC DESC('Search-For') UNAVAIL(ZUT13) MNEM(2) ACC(CTRL+F4)
ACTION RUN(ISRROUTE) PARM('U14')
PDC DESC('Search-ForE') UNAVAIL(ZUT14) MNEM(6) ACC(CTRL+F5)
ACTION RUN(ISRROUTE) PARM('U15')
PDC DESC('Table Utility') UNAVAIL(ZUT15) MNEM(3) ACC(CTRL+F6)
ACTION RUN(ISRROUTE) PARM('U16')
PDC DESC('Directory List') UNAVAIL(ZUT16) MNEM(2) ACC(CTRL+F7)
ACTION RUN(ISRROUTE) PARM('U17')
)ABCINIT
.ZVARS=PDFUTIL
&zutdt = '1'
&zut9 = '1'
)ABC DESC('Help') MNEM(1)
PDC DESC('General') MNEM(1) ACTION RUN(TUTOR) PARM('ISR50010')
PDC DESC('Assembler') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51000')
PDC DESC('COBOL') MNEM(1) ACTION RUN(TUTOR) PARM('ISR52000')
PDC DESC('VS Fortran') MNEM(4) ACTION RUN(TUTOR) PARM('ISR53000')
PDC DESC('PL/I') MNEM(2) ACTION RUN(TUTOR) PARM('ISR55000')
PDC DESC('VS Pascal') MNEM(4) ACTION RUN(TUTOR) PARM('ISR56000')
PDC DESC('Binder/Link editor') MNEM(1) ACTION RUN(TUTOR) PARM('ISR57000')
PDC DESC('VS COBOL II debug') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5A000')
PDC DESC('Member parts list') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5C000')
PDC DESC('C/370') MNEM(3) ACTION RUN(TUTOR) PARM('ISR5D000')
PDC DESC('REXX/370') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5E000')
PDC DESC('ADA/370') MNEM(2) ACTION RUN(TUTOR) PARM('ISR5F000')
PDC DESC('AD/Cycle C/370') MNEM(5) ACTION RUN(TUTOR) PARM('ISR5G000')
PDC DESC('ISPDTLC') MNEM(5) ACTION RUN(TUTOR) PARM('ISR5I000')
PDC DESC('OS/390 C/C++') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5J000')
PDC DESC('Appendices') MNEM(4) ACTION RUN(TUTOR) PARM('ISR00004')
)ABCINIT
.ZVARS=JPAHELP
)BODY CMD(ZCMD)
.. Menu. Utilities. Help.
.------------------------------------------------------------------------------
. .Batch Selection Panel. .
.Option ===>.Z .
.SAREA38 .
)AREA SAREA38
.1 .Assembler ...7 .*Binder/Link editor ...15.*ADA/370 ..
.2 .COBOL ...10.*VS COBOL II debug ...16.*AD/Cycle C/370 ..
.3 .VS FORTRAN ...12. Member Parts List ...18. ISPDTLC ..
.5 .PLI ...13.*C/370 ...19.*OS/390 C/C++ ..
.6 .VS PASCAL ...14.*REXX/370 .
.. .
. ..&multipmt ..*.No packed data support. .
. ..Z..Source data online .
. ..Z..Source data packed .
.
.Job Statement Information:.Verify before proceeding. .
. .
.===>.Z .
.===>.Z .
.===>.Z .
.===>.Z .
Batch selection panel definition (ISRJPA) (Part 3 of 4)
)INIT
.ZVARS = '(ZCMD ZDSCKOV ZBPKEDV BJC1 BJC2 BJC3 BJC4)'
&ZWINTTL = ' '
.HELP = ISR50000
&ZDSCKOV = ' '
&ZBPKEDV = ' '
&ZUT6 = 1
&ZUT7 = 1
&ZUT11 = 1
&ZUT12 = 1
&ZUT13 = 1
&ZUT14 = 1
IF (&ZDSCKO = ' ')
&ZDSCKO = Y
&ZDSCKO = TRANS(TRUNC(&ZDSCKO,1),N,NO,*,YES)
&ZDSCKOV = TRANS(&ZDSCKO YES,'/' NO,' ')
IF (&ZBPKED = &Z)
&ZBPKED = N
&ZBPKED = TRANS(TRUNC(&ZBPKED,1),Y,YES,*,NO)
&ZBPKEDV = TRANS(&ZBPKED YES,'/' NO,' ')
IF (&ZGUI = ' ')
&MULTIPMT='Enter "/" to select option '
ELSE
&MULTIPMT='Check box to select option '
.CURSOR = 'ZCMD'
)REINIT
REFRESH(ZDSCKOV ZBPKEDV)
&ZUT6 = 1
&ZUT7 = 1
&ZUT11 = 1
&ZUT12 = 1
&ZUT13 = 1
&ZUT14 = 1
)PROC
&ZUT6 = 0
&ZUT7 = 0
&ZUT11 = 0
&ZUT12 = 0
&ZUT13 = 0
&ZUT14 = 0
IF (&ZDSCKOV = ' ')
&ZDSCKO = 'NO'
ELSE
&ZDSCKO = 'YES'
&ZDSCKO = TRUNC(&ZDSCKO,1) /*DATA SET (DS) CHECK: */
&ZDSCHK = TRANS(TRUNC(&ZDSCKO,1),Y,Y,N,N)
&ZDSCKO = TRANS(TRUNC(&ZDSCKO,1),Y,YES,N,NO)
IF (&ZBPKEDV = ' ')
&ZBPKED = 'NO'
ELSE
&ZBPKED = 'YES'
Batch selection panel definition (ISRJPA) (Part 4 of 4)
&ZBPKED = TRUNC(&ZBPKED,1)
&ZBPKED = TRANS(TRUNC(&ZBPKED,1),Y,YES,N,NO)
&ZBPACK = TRANS(TRUNC(&ZBPKED,1),Y,YES,N,NO)
VER (&ZDSCKO,NB,LIST,YES,NO) /* Y= VERIFY DSN;N= NO VERIFICATION*/
VER (&ZBPKED,NB,LIST,YES,NO) /* Y = EXPAND PACKED DATA */
&DSN = ' ' /* INITIALIZE DATA SET NAME FIELD */
VPUT (ZDSCHK,ZDSCKO,DSN) SHARED /* PLACE IN SHARED POOL FOR ISRJB2 */
&RTNPNL = ISRJPB
VPUT (BJC1,BJC2,BJC3,BJC4,ZBPACK,ZBPKED) PROFILE
&ZCMDWRK = &Z
IF (&ZCMD ¬= &Z)
&ZCMDWRK = TRUNC(&ZCMD,'.')
&ZTRAIL=.TRAIL
IF (&ZCMDWRK = &Z)
.MSG = ISRU000
&ZSEL = TRANS (TRUNC (&ZCMD,'.')
1,'PGM(ISRJB2) PARM((ISRJP01) 1) NEWPOOL'
2,'PGM(ISRJB2) PARM((ISRJP02) 2) NEWPOOL'
3,'PGM(ISRJB2) PARM((ISRJP03) 3) NEWPOOL'
5,'PGM(ISRJB2) PARM((ISRJP05) 5) NEWPOOL'
6,'PGM(ISRJB2) PARM((ISRJP06) 6) NEWPOOL'
7,'PGM(ISRJB2) PARM((ISRJP07) 7) NEWPOOL'
10,'PGM(ISRJB2) PARM((ISRJP10) 10) NEWPOOL'
12,'PGM(ISRJB2) PARM((ISRJP12) 12) NEWPOOL'
13,'PGM(ISRJB2) PARM((EDCJP13,ISRJP13) 13) NEWPOOL'
14,'PGM(ISRJB2) PARM((FANJP14,ISRJP14) 14) NEWPOOL'
15,'PGM(ISRALTDI) PARM(EVGJP15,,ISRJP15,*) NOCHECK'
16,'PGM(ISRJB2) PARM((EDCJP16,ISRJP16) 16) NEWPOOL'
18,'CMD(ISPDTLC (PANEL SUBMIT RETURN)) MODE(FSCR)'
19,'PGM(ISRALTDI) PARM(CBC3PE5A,+,ISRJP19,*,ISRJP19A) NOCHECK'
' ',' '
*,'?')
)PNTS
FIELD(ZPS01001) VAR(ZCMD) VAL(1)
FIELD(ZPS01002) VAR(ZCMD) VAL(7)
FIELD(ZPS01003) VAR(ZCMD) VAL(15)
FIELD(ZPS01004) VAR(ZCMD) VAL(2)
FIELD(ZPS01005) VAR(ZCMD) VAL(10)
FIELD(ZPS01006) VAR(ZCMD) VAL(16)
FIELD(ZPS01007) VAR(ZCMD) VAL(3)
FIELD(ZPS01008) VAR(ZCMD) VAL(12)
FIELD(ZPS01009) VAR(ZCMD) VAL(18)
FIELD(ZPS01010) VAR(ZCMD) VAL(5)
FIELD(ZPS01011) VAR(ZCMD) VAL(13)
FIELD(ZPS01012) VAR(ZCMD) VAL(19)
FIELD(ZPS01013) VAR(ZCMD) VAL(6)
FIELD(ZPS01014) VAR(ZCMD) VAL(14)
)END
/* 5694-A01 COPYRIGHT IBM CORP 1980, 2011 */
/* ISPDTLC Release: 7.5. Level: PID */
/* z/OS 02.05.00. Created - Date: 17 Feb 2020, Time: 23:45 */
Batch JCL generation panel definition (ISRJPB) (Part 1 of 4)
)PANEL KEYLIST(ISRSAB,ISR)
)ATTR DEFAULT(...) FORMAT(MIX) /* ISRJPB - ENGLISH -
7.5
*/
0B TYPE(AB)
0D TYPE(PS)
04 TYPE(ABSL) GE(ON)
05 TYPE(PT)
09 TYPE(FP)
0A TYPE(NT)
0C TYPE(NT) SKIP(ON)
11 TYPE(SAC)
22 TYPE(WASL) SKIP(ON) GE(ON)
08 TYPE(CH)
10 TYPE(ET)
26 AREA(SCRL) EXTEND(ON)
27 TYPE(CEF) PADC(USER) CKBOX(ON)
28 TYPE(NEF) CAPS(ON) PADC(USER)
)ABC DESC('Menu') MNEM(1)
PDC DESC('Settings') UNAVAIL(ZPM1) MNEM(1) ACC(CTRL+S)
ACTION RUN(ISRROUTE) PARM('SET')
PDC DESC('View') UNAVAIL(ZPM2) MNEM(1) ACC(CTRL+V)
ACTION RUN(ISRROUTE) PARM('BR1')
PDC DESC('Edit') UNAVAIL(ZPM3) MNEM(1) ACC(CTRL+E)
ACTION RUN(ISRROUTE) PARM('ED1')
PDC DESC('ISPF Command Shell') UNAVAIL(ZPM4) MNEM(6) ACC(CTRL+C)
ACTION RUN(ISRROUTE) PARM('C1')
PDC DESC('Dialog Test...') UNAVAIL(ZPM5) MNEM(8) ACC(CTRL+T)
ACTION RUN(ISRROUTE) PARM('DAL')
PDC DESC('Other IBM Products...') UNAVAIL(ZPM6) MNEM(1) ACC(CTRL+O)
ACTION RUN(ISRROUTE) PARM('OIB')
PDC DESC('SCLM') UNAVAIL(ZPM7) MNEM(3) ACC(CTRL+L)
ACTION RUN(ISRROUTE) PARM('SCL')
PDC DESC('ISPF Workplace') UNAVAIL(ZPM8) MNEM(6) ACC(CTRL+W)
ACTION RUN(ISRROUTE) PARM('WRK')
PDC DESC('Status Area...') UNAVAIL(ZPMS) MNEM(8) ACC(CTRL+A)
ACTION RUN(ISRROUTE) PARM('SAM')
PDC DESC('Exit') MNEM(2) PDSEP(ON) ACC(CTRL+X) ACTION RUN(EXIT)
)ABCINIT
.ZVARS=ISR@OPT
)ABC DESC('Utilities') MNEM(1)
PDC DESC('Library') UNAVAIL(ZUT1) MNEM(1) ACC(ALT+1)
ACTION RUN(ISRROUTE) PARM('U1')
PDC DESC('Data set') UNAVAIL(ZUT2) MNEM(1) ACC(ALT+2)
ACTION RUN(ISRROUTE) PARM('U2')
PDC DESC('Move/Copy') UNAVAIL(ZUT3) MNEM(1) ACC(ALT+3)
ACTION RUN(ISRROUTE) PARM('U3')
PDC DESC('Data Set List') UNAVAIL(ZUT4) MNEM(2) ACC(ALT+4)
ACTION RUN(ISRROUTE) PARM('U4')
PDC DESC('Reset Statistics') UNAVAIL(ZUT5) MNEM(5) ACC(ALT+5)
ACTION RUN(ISRROUTE) PARM('U5')
PDC DESC('Hardcopy') UNAVAIL(ZUT6) MNEM(8) ACC(ALT+6)
ACTION RUN(ISRROUTE) PARM('U6')
PDC DESC('Reserved') UNAVAIL(ZUTDT) MNEM(1) ACTION RUN(ISRROUTE) PARM('UDT')
PDC DESC('Outlist') UNAVAIL(ZUT7) MNEM(1) ACC(ALT+8)
ACTION RUN(ISRROUTE) PARM('U8')
PDC DESC('Commands...') UNAVAIL(ZUT8) MNEM(1) ACC(ALT+9)
ACTION RUN(ISRROUTE) PARM('U9')
PDC DESC('Reserved') UNAVAIL(ZUT9) MNEM(6) ACTION RUN(ISRROUTE) PARM('U10')
PDC DESC('Format') UNAVAIL(ZUT10) MNEM(1) ACC(ALT+F1)
ACTION RUN(ISRROUTE) PARM('U11') 
Batch JCL generation panel definition (ISRJPB) (Part 2 of 4)
PDC DESC('SuperC') UNAVAIL(ZUT11) MNEM(1) PDSEP(ON) ACC(CTRL+F2)
ACTION RUN(ISRROUTE) PARM('U12')
PDC DESC('SuperCE') UNAVAIL(ZUT12) MNEM(2) ACC(CTRL+F3)
ACTION RUN(ISRROUTE) PARM('U13')
PDC DESC('Search-For') UNAVAIL(ZUT13) MNEM(2) ACC(CTRL+F4)
ACTION RUN(ISRROUTE) PARM('U14')
PDC DESC('Search-ForE') UNAVAIL(ZUT14) MNEM(6) ACC(CTRL+F5)
ACTION RUN(ISRROUTE) PARM('U15')
PDC DESC('Table Utility') UNAVAIL(ZUT15) MNEM(3) ACC(CTRL+F6)
ACTION RUN(ISRROUTE) PARM('U16')
PDC DESC('Directory List') UNAVAIL(ZUT16) MNEM(2) ACC(CTRL+F7)
ACTION RUN(ISRROUTE) PARM('U17')
)ABCINIT
.ZVARS=PDFUTIL
&zutdt = '1'
&zut9 = '1'
)ABC DESC('Help') MNEM(1)
PDC DESC('General') MNEM(1) ACTION RUN(TUTOR) PARM('ISR50000')
PDC DESC('Assembler') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51000')
PDC DESC('COBOL') MNEM(1) ACTION RUN(TUTOR) PARM('ISR52000')
PDC DESC('VS Fortran') MNEM(4) ACTION RUN(TUTOR) PARM('ISR53000')
PDC DESC('PL/I') MNEM(2) ACTION RUN(TUTOR) PARM('ISR55000')
PDC DESC('VS Pascal') MNEM(4) ACTION RUN(TUTOR) PARM('ISR56000')
PDC DESC('Binder/Link editor') MNEM(1) ACTION RUN(TUTOR) PARM('ISR57000')
PDC DESC('VS COBOL II debug') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5A000')
PDC DESC('Member parts list') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5C000')
PDC DESC('C/370') MNEM(3) ACTION RUN(TUTOR) PARM('ISR5D000')
PDC DESC('REXX/370') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5E000')
PDC DESC('ADA/370') MNEM(2) ACTION RUN(TUTOR) PARM('ISR5F000')
PDC DESC('AD/Cycle C/370') MNEM(5) ACTION RUN(TUTOR) PARM('ISR5G000')
PDC DESC('ISPDTLC') MNEM(5) ACTION RUN(TUTOR) PARM('ISR5I000')
PDC DESC('OS/390 C/C++') MNEM(1) ACTION RUN(TUTOR) PARM('ISR5J000')
PDC DESC('Appendices') MNEM(4) ACTION RUN(TUTOR) PARM('ISR00004')
)ABCINIT
.ZVARS=JPBHELP
)BODY CMD(ZCMD)
.. Menu. Utilities. Help.
.------------------------------------------------------------------------------
. .Batch Selection Panel. .
.Option ===>.Z .
.SAREA38 .
)AREA SAREA38
.1 .Assembler ...7 .*Binder/Link editor ...15.*ADA/370 ..
.2 .COBOL ...10.*VS COBOL II debug ...16.*AD/Cycle C/370 ..
.3 .VS FORTRAN ...12. Member Parts List ...18. ISPDTLC ..
.5 .PLI ...13.*C/370 ...19.*OS/390 C/C++ ..
.6 .VS PASCAL ...14.*REXX/370 .
. ..
. ..*.No packed data support. .
.Instructions:. .
. ..Enter option to continue generating JCL,.CANCEL.command to exit without. .
. ..submitting job or.END.command to &ZBMSG .
. ... .
. ..&multipmt .
. ..Z..Source data online .
. ..Z..Source data packed .
.
.Job Statement Information:. .
. .
.===>.Z .
.===>.Z .
.===>.Z .
.===>.Z .
Batch JCL generation panel definition (ISRJPB) (Part 3 of 4)
)INIT
.ZVARS = '(ZCMD ZDSC ZBPK BJC1 BJC2 BJC3 BJC4)'
&ZWINTTL = ' '
.HELP = ISR50000
&ZDSC = ' '
&ZBPK = ' '
&ZUT6 = 1
&ZUT7 = 1
&ZUT11 = 1
&ZUT12 = 1
&ZUT13 = 1
&ZUT14 = 1
IF (&ZDSCKO = ' ')
&ZDSCKO = Y
&ZDSCKO = TRANS(TRUNC(&ZDSCKO,1),N,NO,*,YES)
&ZDSC = TRANS(&ZDSCKO NO,' ' YES,'/')
IF (&ZBPKED = &Z)
&ZBPKED = N
&ZBPKED = TRANS(TRUNC(&ZBPKED,1),Y,YES,*,NO)
&ZBPK = TRANS(&ZBPKED NO,' ' YES,'/')
IF (&ZJOBSTEP = 'YES')
&ZBMSG = 'submit job.'
IF (&ZJOBSTEP = 'NO ')
&ZBMSG = 'exit without submitting job.'
IF (&ZGUI = ' ')
&MULTIPMT='Enter "/" to select option '
ELSE
&MULTIPMT='Check box to select option '
.CURSOR = 'ZCMD'
)REINIT
REFRESH(ZDSC ZBPK)
&zut6 = 1
&zut7 = 1
&zut11 = 1
&zut12 = 1
&zut13 = 1
&zut14 = 1
)PROC
&zut6 = 0
&zut7 = 0
&zut11 = 0
&zut12 = 0
&zut13 = 0
&zut14 = 0
&ZDSCKO = TRANS(&ZDSC ' ','NO' *,'YES')
&ZBPKED = TRANS(&ZBPK ' ','NO' *,'YES')
&ZDSCKO = TRUNC(&ZDSCKO,1) /*DATA SET (DS) CHECK: */
VER (&ZDSCKO,NB,LIST,Y,N) /* Y= VERIFY DSN;N= NO VERIFICATION*/
&ZDSCHK = TRANS(TRUNC(&ZDSCKO,1),Y,Y,N,N)
&ZBPKED = TRUNC(&ZBPKED,1)
VER (&ZBPKED,NB,LIST,Y,N) /* Y = EXPAND PACKED DATA */
&ZBPKED = TRANS(TRUNC(&ZBPKED,1),Y,YES,N,NO)
&ZBPACK = TRANS(TRUNC(&ZBPKED,1),Y,YES,N,NO)
&DSN = ' ' /* INITIALIZE DATA SET NAME FIELD */
VPUT (ZDSCHK,ZDSCKO,DSN) SHARED /* PLACE IN SHARED POOL FOR ISRJB2 */
VPUT (ZBPACK,ZBPKED) PROFILE
&ZSEL = TRANS (&ZCMD
C,C
CAN,C
CANCEL,C
*,'*' )
Batch JCL generation panel definition (ISRJPB) (Part 4 of 4)
if (&ZSEL = 'C') goto ENDD
&ZCMDWRK = &Z
IF (&ZCMD ¬= &Z)
&ZCMDWRK = TRUNC(&ZCMD,'.')
&ZTRAIL=.TRAIL
IF (&ZCMDWRK = &Z)
.MSG = ISRU000
&ZSEL = TRANS (TRUNC (&ZCMD,'.')
1,'PGM(ISRJB2) PARM((ISRJP01) 1) NEWPOOL'
2,'PGM(ISRJB2) PARM((ISRJP02) 2) NEWPOOL'
3,'PGM(ISRJB2) PARM((ISRJP03) 3) NEWPOOL'
5,'PGM(ISRJB2) PARM((ISRJP05) 5) NEWPOOL'
6,'PGM(ISRJB2) PARM((ISRJP06) 6) NEWPOOL'
7,'PGM(ISRJB2) PARM((ISRJP07) 7) NEWPOOL'
10,'PGM(ISRJB2) PARM((ISRJP10) 10) NEWPOOL'
12,'PGM(ISRJB2) PARM((ISRJP12) 12) NEWPOOL'
13,'PGM(ISRJB2) PARM((EDCJP13,ISRJP13) 13) NEWPOOL'
14,'PGM(ISRJB2) PARM((FANJP14,ISRJP14) 14) NEWPOOL'
15,'PGM(ISRALTDI) PARM(EVGJP15,,ISRJP15,*) NOCHECK'
16,'PGM(ISRJB2) PARM((EDCJP16,ISRJP16) 16) NEWPOOL'
18,'CMD(ISPDTLC (PANEL SUBMIT RETURN)) MODE(FSCR)'
19,'PGM(ISRALTDI) PARM(CBC3PE5A,+,ISRJP19,*,ISRJP19A) NOCHECK'
' ',' '
*,'?')
ENDD:
)PNTS
FIELD(ZPS01001) VAR(ZCMD) VAL(1)
FIELD(ZPS01002) VAR(ZCMD) VAL(7)
FIELD(ZPS01003) VAR(ZCMD) VAL(15)
FIELD(ZPS01004) VAR(ZCMD) VAL(2)
FIELD(ZPS01005) VAR(ZCMD) VAL(10)
FIELD(ZPS01006) VAR(ZCMD) VAL(16)
FIELD(ZPS01007) VAR(ZCMD) VAL(3)
FIELD(ZPS01008) VAR(ZCMD) VAL(12)
FIELD(ZPS01009) VAR(ZCMD) VAL(18)
FIELD(ZPS01010) VAR(ZCMD) VAL(5)
FIELD(ZPS01011) VAR(ZCMD) VAL(13)
FIELD(ZPS01012) VAR(ZCMD) VAL(19)
FIELD(ZPS01013) VAR(ZCMD) VAL(6)
FIELD(ZPS01014) VAR(ZCMD) VAL(14)
)END
/* 5694-A01 COPYRIGHT IBM CORP 1980, 2011 */
/* ISPDTLC Release: 7.5. Level: PID */
/* z/OS 02.05.00. Created - Date: 17 Feb 2020, Time: 23:45 */
Batch Assembler definition (ISRJP01) (Part 1 of 5)
)PANEL KEYLIST(ISRSAB,ISR)
)ATTR DEFAULT(...) FORMAT(MIX) /* ISRJP01 - ENGLISH -
7.5
*/
0B TYPE(AB)
04 TYPE(ABSL) GE(ON)
05 TYPE(PT)
09 TYPE(FP)
0A TYPE(NT)
0C TYPE(NT) SKIP(ON)
11 TYPE(SAC)
12 TYPE(CEF) PADC(USER)
19 TYPE(DT)
22 TYPE(WASL) SKIP(ON) GE(ON)
08 TYPE(CH)
26 TYPE(NEF) CAPS(ON) PADC(USER)
27 AREA(SCRL) EXTEND(ON)
28 TYPE(SAC) CSRGRP(99) RADIO(ON)
)ABC DESC('Menu') MNEM(1)
PDC DESC('Settings') UNAVAIL(ZPM1) MNEM(1) ACC(CTRL+S)
ACTION RUN(ISRROUTE) PARM('SET')
PDC DESC('View') UNAVAIL(ZPM2) MNEM(1) ACC(CTRL+V)
ACTION RUN(ISRROUTE) PARM('BR1')
PDC DESC('Edit') UNAVAIL(ZPM3) MNEM(1) ACC(CTRL+E)
ACTION RUN(ISRROUTE) PARM('ED1')
PDC DESC('ISPF Command Shell') UNAVAIL(ZPM4) MNEM(6) ACC(CTRL+C)
ACTION RUN(ISRROUTE) PARM('C1')
PDC DESC('Dialog Test...') UNAVAIL(ZPM5) MNEM(8) ACC(CTRL+T)
ACTION RUN(ISRROUTE) PARM('DAL')
PDC DESC('Other IBM Products...') UNAVAIL(ZPM6) MNEM(1) ACC(CTRL+O)
ACTION RUN(ISRROUTE) PARM('OIB')
PDC DESC('SCLM') UNAVAIL(ZPM7) MNEM(3) ACC(CTRL+L)
ACTION RUN(ISRROUTE) PARM('SCL')
PDC DESC('ISPF Workplace') UNAVAIL(ZPM8) MNEM(6) ACC(CTRL+W)
ACTION RUN(ISRROUTE) PARM('WRK')
PDC DESC('Status Area...') UNAVAIL(ZPMS) MNEM(8) ACC(CTRL+A)
ACTION RUN(ISRROUTE) PARM('SAM')
PDC DESC('Exit') MNEM(2) PDSEP(ON) ACC(CTRL+X) ACTION RUN(EXIT)
)ABCINIT
.ZVARS=ISR@OPT
)ABC DESC('RefList') MNEM(1)
PDC DESC('Current Data Set List &ZDSCURT') MNEM(1) ACC(CTRL+ALT+P)
ACTION RUN(ISRRLIST) PARM('PL1')
PDC DESC('Current Library List &ZDSCURLT') MNEM(2) ACC(CTRL+SHIFT+P)
ACTION RUN(ISRRLIST) PARM('LL1')
PDC DESC('List of Personal Data Set Lists') MNEM(1) PDSEP(ON) ACC(CTRL+ALT+O)
ACTION RUN(ISRRLIST) PARM('PL2')
PDC DESC('List of Personal Library Lists') MNEM(2) ACC(CTRL+SHIFT+O)
ACTION RUN(ISRRLIST) PARM('LL2')
Batch Assembler definition (ISRJP01) (Part 2 of 5)
)ABCINIT
.ZVARS=REFLIST
VGET (ZCURTB ZCURLTB) PROFILE
IF (&ZCURTB = &Z) &ZDSCURT = &Z
ELSE &ZDSCURT= '(&ZCURTB)'
IF (&ZCURLTB = &Z) &ZDSCURLT = &Z
ELSE &ZDSCURLT= '(&ZCURLTB)'
)ABC DESC('Utilities') MNEM(1)
PDC DESC('Library') UNAVAIL(ZUT1) MNEM(1) ACC(ALT+1)
ACTION RUN(ISRROUTE) PARM('U1')
PDC DESC('Data set') UNAVAIL(ZUT2) MNEM(1) ACC(ALT+2)
ACTION RUN(ISRROUTE) PARM('U2')
PDC DESC('Move/Copy') UNAVAIL(ZUT3) MNEM(1) ACC(ALT+3)
ACTION RUN(ISRROUTE) PARM('U3')
PDC DESC('Data Set List') UNAVAIL(ZUT4) MNEM(2) ACC(ALT+4)
ACTION RUN(ISRROUTE) PARM('U4')
PDC DESC('Reset Statistics') UNAVAIL(ZUT5) MNEM(5) ACC(ALT+5)
ACTION RUN(ISRROUTE) PARM('U5')
PDC DESC('Hardcopy') UNAVAIL(ZUT6) MNEM(8) ACC(ALT+6)
ACTION RUN(ISRROUTE) PARM('U6')
PDC DESC('Reserved') UNAVAIL(ZUTDT) MNEM(1) ACTION RUN(ISRROUTE) PARM('UDT')
PDC DESC('Outlist') UNAVAIL(ZUT7) MNEM(1) ACC(ALT+8)
ACTION RUN(ISRROUTE) PARM('U8')
PDC DESC('Commands...') UNAVAIL(ZUT8) MNEM(1) ACC(ALT+9)
ACTION RUN(ISRROUTE) PARM('U9')
PDC DESC('Reserved') UNAVAIL(ZUT9) MNEM(6) ACTION RUN(ISRROUTE) PARM('U10')
PDC DESC('Format') UNAVAIL(ZUT10) MNEM(1) ACC(ALT+F1)
ACTION RUN(ISRROUTE) PARM('U11')
PDC DESC('SuperC') UNAVAIL(ZUT11) MNEM(1) PDSEP(ON) ACC(CTRL+F2)
ACTION RUN(ISRROUTE) PARM('U12')
PDC DESC('SuperCE') UNAVAIL(ZUT12) MNEM(2) ACC(CTRL+F3)
ACTION RUN(ISRROUTE) PARM('U13')
PDC DESC('Search-For') UNAVAIL(ZUT13) MNEM(2) ACC(CTRL+F4)
ACTION RUN(ISRROUTE) PARM('U14')
PDC DESC('Search-ForE') UNAVAIL(ZUT14) MNEM(6) ACC(CTRL+F5)
ACTION RUN(ISRROUTE) PARM('U15')
PDC DESC('Table Utility') UNAVAIL(ZUT15) MNEM(3) ACC(CTRL+F6)
ACTION RUN(ISRROUTE) PARM('U16')
PDC DESC('Directory List') UNAVAIL(ZUT16) MNEM(2) ACC(CTRL+F7)
ACTION RUN(ISRROUTE) PARM('U17')
)ABCINIT
.ZVARS=PDFUTIL
&zutdt = '1'
&zut9 = '1'
)ABC DESC('Help') MNEM(1)
PDC DESC('Input Data Set') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51001')
PDC DESC('SYSLIB Data Sets') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51002')
PDC DESC('Object Data Set') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51003')
PDC DESC('Listing') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51004')
PDC DESC('Password protection') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51007')
PDC DESC('Assembler selection') MNEM(1) ACTION RUN(TUTOR) PARM('ISR51008')
PDC DESC('Appendices') MNEM(4) ACTION RUN(TUTOR) PARM('ISR00004')
PDC DESC('Index') MNEM(2) ACTION RUN(TUTOR) PARM('ISR91000')
)ABCINIT
.ZVARS=JP1HELP
Batch Assembler definition (ISRJP01) (Part 3 of 5)
)BODY CMD(ZCMD)
.. Menu. RefList. Utilities. Help.
.------------------------------------------------------------------------------
. .Batch Assembler. .
.Command ===>.Z .
.SAREA39 .
)AREA SAREA39
.ISPF Library:. .
. ..Project . . ..Z .
. ..Group . . . ..Z .. . ..Z .. . ..Z .. . ..Z .
. ..Type . . . ..Z .
. ..Member . . ..Z ..(Blank or pattern for member selection list).
.
.Other Partitioned or Sequential Data Set:. .
. ..Data Set Name . ..Z .
.. .
.Assembler.
.List ID . . . . ..Z ..(Blank for hardcopy). .Z..1..High Level Assembler.
.SYSOUT class . . ..Z ..(For hardcopy). .2..Assembler H .
.
.Assembler options:. .
...Term . . ..Z ..(TERM or NOTERM).
...Other . . ..Z .
.
.Additional input libraries:. .
. .. ===>.Z .
. .. ===>.Z .
. .. ===>.Z .
)INIT
.ZVARS = '(ZCMD PRJ1 LIB1 LIB2 LIB3 LIB4 TYP1 MEM DSN LID ZASMOPT BCLA +
BHASMT BHASM BHAL1 BHAL2 BHAL3)'
.HELP = ISR51000
.ATTR(ZASMOPT)='CSRGRP(99) RADIO(ON)'
&ZUT6 = 1
&ZUT7 = 1
&ZUT11 = 1
&ZUT12 = 1
&ZUT13 = 1
&ZUT14 = 1
&ZMLCSR = ' ' /* @M1A*/
&TYP1 = &ASMT /*ASSEMBLER TYPE VARIABLE NAME*/
IF (&DSN ¬= ' ')
&MEM = ' ' /* @M1A*/
IF (.CURSOR = ' ') .CURSOR = DSN
IF (&ZASMOPT ¬= 1)
IF (&ZASMOPT ¬= 2)
&ZASMOPT = 1
IF (&BASMT = ' ')
&BASMT = NOTERM /* DEFAULT TO "NOTERM" */
IF (&ZBTEMP = '')
&ZBPACK = &ZBPACK
VPUT (ZBPACK) SHARED
&ZBTEMP = '0'
IF (&BHALEV = &Z) /* @OW19891*/
&BHALEV = 'HLASM' /* @OW19891*/
VGET (BHAL1,BHAL2,BHAL3) PROFILE /* OW22979*/
)REINIT
REFRESH(PRJ1 LIB1 LIB2 LIB3 LIB4 TYP1 MEM DSN BHAL1 BHAL2 BHAL3)
Batch Assembler definition (ISRJP01) (Part 4 of 5)
IF (&ZNXTMSG='ISRT') .CSRPOS = &ZCSRP /* AUTOTYPE */
.CURSOR = &ZCSRV /* AUTOTYPE */
ELSE &ZXZX = &Z /* AUTOTYPE */
&ZUT6 = 1
&ZUT7 = 1
&ZUT11 = 1
&ZUT12 = 1
&ZUT13 = 1
&ZUT14 = 1
IF (&ZMLCSR ¬= ' ') /* @M1A*/
.CURSOR = &ZMLCSR /* @M1A*/
IF (.MSG = ISRDS003) /* @M1A*/
REFRESH (PRJ1,LIB1,LIB2,LIB3,LIB4,TYP1,MEM,DSN)
)PROC
&ZCSRV = .CURSOR /* AUTOTYPE */
&ZCSRP = .CSRPOS /* AUTOTYPE */
&ZODSNLN = 0 /* AUTOTYPE */
&ZODSNMB = &Z /* AUTOTYPE */
&ZNAMES='ZCSRV ZCSRP PRJ1 LIB1 LIB2 LIB3 LIB4 TYP1 MEM '
&ZNAMES='&ZNAMES *.&ZODSNLN&ZODSNMB ZCMD'
IF (.CURSOR = DSN, BHAL1, BHAL2, BHAL3)
&ZODSNLN = 56
&ZODSNMB = &Z
IF (.CURSOR = BHAL1) &ZODSNLN = 65
IF (.CURSOR = BHAL1) &ZODSNMB = '%'
IF (.CURSOR = BHAL2) &ZODSNLN = 65
IF (.CURSOR = BHAL2) &ZODSNMB = '%'
IF (.CURSOR = BHAL3) &ZODSNLN = 65
IF (.CURSOR = BHAL3) &ZODSNMB = '%'
&ZNAMES='ZCSRV ZCSRP * * * * * * * &ZCSRV&ZODSNLN&ZODSNMB ZCMD'
PANEXIT((ZNAMES),LOAD,ISRAUTOT) /* AUTOTYPE */
IF (&ZNXTMSG='ISRT') EXIT /* AUTOTYPE */
VER(&ZASMOPT,NONBLANK)
VER(&ZASMOPT RANGE,1,2)
&ZUT6 = 0
&ZUT7 = 0
&ZUT11 = 0
&ZUT12 = 0
&ZUT13 = 0
&ZUT14 = 0
VGET (ZRDSN) SHARED /* REFERENCE LIST CODE */
IF (&ZRDSN ¬= ' ') /* IF DATA SET SELECTED */
&DSN = &ZRDSN /* PUT DSN VARIABLE */
&ZRDSN = ' ' /* INTO PANEL */
&ZRVOL = ' ' /* INTO PANEL */
VPUT (ZRDSN ZRVOL) SHARED /* */
.CURSOR = DSN
.MSG = ISRDS003 /* MSG PENDING */
VGET (DSALSEL) SHARED /* */
IF (&DSALSEL ¬= ' ') /* IF LIBRARY SELECTED */
VGET (DSA1,DSA2,DSA3,DSA4,DSA5,DSA6,DSA7) SHARED
&PRJ1 = &DSA1 /* PUT LIBRARY VARIABLES */
&LIB1 = &DSA2 /* INTO PANEL */
&LIB2 = &DSA3 /* . */
Batch Assembler definition (ISRJP01) (Part 5 of 5)
&LIB3 = &DSA4 /* . */
&LIB4 = &DSA5 /* . */
&TYP1 = &DSA6 /* . */
&MEM = &DSA7 /* . */
&DSN = ' ' /* BLANK OUT DSN */
&DSALSEL = ' ' /* CLEAR LIBRARY SELECTION */
VPUT (DSALSEL) SHARED /* */
.CURSOR = MEM
.MSG = ISRDS003 /* MSG PENDING */
/* */
IF (&ZCMD ¬= ' ') .MSG = ISPZ001 /* INVALID COMMAND */
VER (&LID,NAME) /* LIST ID MUST BE VALID NAME */
IF (&ZDSCHK = 'N' ) /* IF NO SPF CHECK OF DATASET */
IF (&DSN = ' ' ) /* AND SPF LIBRARY SPECIFIED */
VER (&PRJ1,NB,NAME) /* REQUIRED FIELD */
VER (&LIB1,NB,NAME) /* REQUIRED FIELD */
VER (&TYP1,NB,NAME) /* REQUIRED FIELD */
IF (&DSN ¬= ' ') /* @M1A*/
VER(&DSN DSNAMEPQ)
ELSE
IF (&DSN ¬= ' ')
VER(&DSN DSNAMEFM)
IF (&ZASMOPT = 1)
&BHALEV = 'HLASM'
IF (&ZASMOPT = 2)
&BHALEV = 'HASM'
VER (&BHALEV,NB,LIST,HASM,HLASM) /* Assembler level OW10516*/
VER (&BHASMT,NB,LIST,TERM,NOTERM) /* TERM OR NOTERM REQUIRED */
IF (&LID = ' ' ) /* IF HARDCOPY DESIRED SPECIFY*/
VER (&BCLA,NONBLANK) /* VALID LOCAL SYSOUT CLASS */
IF (&BHAL1 ¬= ' ') /* IF LIB #1 SPECIFIED @M2A*/
VER (&BHAL1,DSNAMEPQ) /* VERIFY ADDITIONAL LIB1@DSNQ*/
IF (&BHAL2 ¬= ' ') /* IF LIB #2 SPECIFIED @M2A*/
VER (&BHAL2,DSNAMEPQ) /* VERIFY ADDITIONAL LIB2@DSNQ*/
IF (&BHAL3 ¬= ' ') /* IF LIB #2 SPECIFIED @L2A*/
VER (&BHAL3,DSNAMEPQ) /* VERIFY ADDITIONAL LIB2@DSNQ*/
&ASMT = &TYP1 /* SAVE ASSEMBLER TYPE */
&ZSEL = 'CMD(%ISRJC01)' /* EXECUTE ASSEMBLE CLIST */
IF (&LID ¬= ' ' ) /* IF &BCLA NOT REQD */
IF (&BCLA = ' ') /* AND NOT SET */
&BCLA = * /* DEFAULT TO MSGCLASS */
/* Begin @L3A */
&ZSYSDS1 = &BHAL1 /* Fill fields for ISRJFSYS */
&ZSYSDS2 = &BHAL2 /* to use as input. */
&ZSYSDS3 = &BHAL3 /* ZSYSDS? is a qualified */
&ZSYSCUR1 = 'BHAL1' /* dataset. */
&ZSYSCUR2 = 'BHAL2' /* ZSYSCUR? is were the cursor*/
&ZSYSCUR3 = 'BHAL3' /* is placed on a error. */
VPUT (ZSYSDS1 ZSYSDS2 ZSYSDS3 ZSYSCUR1 ZSYSCUR2 ZSYSCUR3) SHARED
/* End @L3A */
VPUT (PRJ1,LIB1,LIB2,LIB3,LIB4,ASMT,BCLA,BHASMT,BHASM) PROFILE
VPUT (BHAL1,BHAL2,BHAL3,BHALEV,ZASMOPT) PROFILE
VPUT (PRJ1,LIB1,LIB2,LIB3,LIB4,ASMT,BCLA,BHASMT,BHASM) SHARED
VPUT (DSN,LID,BHAL1,BHAL2,BHAL3,BHALEV) SHARED /* OW10516*/
)END
/* 5694-A01 COPYRIGHT IBM CORP 1980, 2011 */
/* ISPDTLC Release: 7.5. Level: PID */
/* z/OS 02.05.00. Created - Date: 18 Feb 2020, Time: 07:41 */

The names of the ISPF-supplied panels, CLISTs, and skeletons for the Batch processing option are shown in the Table 1.
| Option | Description | Panel ID | CLIST ID | SKEL ID |
|---|---|---|---|---|
| - | BATCH SELECTION MENU | ISRJPA | - | ISRJSJC |
| -- | BATCH TERMINATION MENU | ISRJPB | -- | -- |
| 1 | ASSEMBLER | ISRJP01 | ISRJC01 | ISRJS01 |
| 2 | VS COBOL II | ISRJP02 | ISRJC02 | ISRJS02 |
| 3 | FORTRAN COMPILE | ISRJP03 | ISRJC03 | ISRJS03 |
| 5 | PLI OPTIMIZER COMPILE | ISRJP05 | ISRJC05 | ISRJS05 |
| 6 | VS PASCAL COMPILE | ISRJP06 | ISRJC06 | ISRJS06 |
| 7 | BINDER/LINK EDIT | ISRJP07 | ISRJC07 | ISRJS07 |
| 10 | VS COBOL II DEBUG | ISRJP10 | ISRJC10 | ISRJS10 |
| 12 | MEMBER PARTS LIST | ISRJP12 | ISRJC12 | ISRJS12 |
| 13 | C/370 COMPILE | -- | -- | -- |
| 14 | REXX/370 COMPILE | -- | -- | -- |
| 15 | ADA/370 COMPILE | -- | -- | -- |
| 16 | AD/CYCLE C/370 COMPILE | -- | -- | -- |
| 17 | AD/CYCLE C/370 COBOL/370 | -- | -- | -- |
| 18 | ISPDTLC | ISPCP01 | -- | ISPDTLB |
| 19 | OS/390® C C++ | -- | -- | -- |
The overall flow of control for Batch processing is shown in Figure 1.

Two PDF programs control Batch processing: ISRJB1 and ISRJB2. Program ISRJB1 receives control directly from the ISPF Primary Option Menu, ISR@PRIM, through specification of these selection keywords when you select primary option 5:
'PGM(ISRJB1) PARM(ISRJPA) NOCHECK'
The parameter specifies the name of the Batch Selection panel.
The NOCHECK keyword allows ISRJB1 to receive control if you specify
option 5.n, where n
is a batch option.
ISRJB1 either displays the Batch Selection panel (if you entered option 5 on the ISPF Primary Option Menu) or processes the Batch Selection panel in non-display mode (if you entered 5.n). ISRJB1 makes this determination by examining the ZTRAIL variable, which is set from the ISPF Primary Option Menu. ZTRAIL contains either the option number, or a blank if no option was specified.
Regardless of whether the Batch Selection panel is actually displayed, ISRJB1 invokes file tailoring services to write the four job statements from the Batch Selection panel to a temporary data set. Skeleton ISRJSJC is used to generate the job statement output. ISRJB1 then invokes program ISRJB2 (through the SELECT service) and passes a parameter containing the name of the first (or only) option panel to be displayed.
The selection keywords used to invoke ISRJB2 actually come from the Batch Selection panel, ISRJPA, where they are stored in variable ZSEL. ISRJB1 uses the DISPLAY service, rather than the SELECT service, to display the Batch Selection panel, and subsequently passes ZSEL as input to the SELECT service when it is ready to invoke ISRJB2.
Program ISRJB2 is analogous to the Foreground control program ISRFPR. See Foreground processing panels and CLISTs. ISRJB2 displays and processes the option panel and invokes the corresponding CLIST. The CLIST, in turn, uses file tailoring services to generate JCL statements for the particular option. All Batch JCL is accumulated in the same temporary data set that contains the four job statements.
Eventually, control returns to ISRJB1, the first batch program. ISRJB1 then either displays the Batch Selection panel (ISRJPB) with Job Step Generated, or processes it in non-display mode if display of the Batch Selection panel was bypassed. The Job Step Generated panel is similar in appearance to the Batch Selection Panel, except that the job statements can no longer be modified. From the Job Step Generated panel, you can select additional options, causing additional job steps to be generated.
- No JCL was generated by the options.
- You entered CANCEL on the Batch Selection panel with Job Step Generated.