上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.7 INCLUDE组
INCLUDE语句指定包含JCL语句集的PDS或PDSE的成员名,通过INCLUDE语句引用的JCL语句称为INCLUDE组,INCLUDE组语句取代INCLUDE语句。系统把INCLUDE组的JCL语句当做JCL作业流的一部分进行处理。INCLUDE语句语法如下。
//[name[ INCLUDE MEMBER=name
存储INCLUDE组的作业必须是过程库的一部分,与过程的查找顺序相同。一个INCLUDE语句可以出现在:
● 作业里JOB语句之后的任何地方。但有一例外,就是如果有JCLLIB语句,它必须跟随在JCLLIB语句之后。
● 可以出现在INCLUDE组里,INCLUDE组可以包含INCLUDE语句,并且可以嵌套使用,嵌套层不超过15层。
INCLUDE组不能包含下列语句。
● JOB语句。
● PROC/PEND语句。
● JCLLIB语句。
● JES2/JES3语句。
● DD */DD DATA语句。
下面是一个INCLUDE语句的例子。
//IBMUSERA JOB (36512),'IBMUSER',CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1), // NOTIFY=IBMUSER //* // INCLUDE MEMBER=KWLIBNAM //* //FSRX81 EXEC PGM=FSRX81,REGION=512K //SYSUDUMP DD SYSOUT=* //SYSDBOUT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //MGFEOTI DD DSN=&ENV.BNK.MG.MGFEOT.TX.FILE,DISP=SHR //KWFKCTI DD DSN=&ENV.BNK.KW.KWFKCT.ONLINE.CTL.TBL,DISP=SHR //FSFKCTU DD DSN=&ENV.BNK.FS.FSFKCT.CONTROL.TABLE,DISP=SHR //SYSIN DD DSN=&ENVPRM..PARMLIB(FSRX81),DISP=SHR //SYSLST1 DD SYSOUT=(,),OUTPUT=*.OUTZ //SYSLST2 DD SYSOUT=(,),OUTPUT=*.OUTZ //* //
KWLIBNAM的内容为:
//JOBLIB DD DSN=FBNK.EFIX.LOADLIB,DISP=SHR // DD DSN=PBNK.XOVR.LOADLIB,DISP=SHR // DD DSN=PBNK.PROD.LOADLIB,DISP=SHR // DD DSN=FCBK.EFIX.LOADLIB,DISP=SHR // DD DSN=PCBK.XOVR.LOADLIB,DISP=SHR // DD DSN=PCBK.PROD.LOADLIB,DISP=SHR // DD DSN=CICS.CICSRUN.LOADLIB,DISP=SHR // DD DSN=CICS.CICSRUN.SDFHEXCI,DISP=SHR
上面作业流中的JCL语句INCLUDE MEMBER=KWLIBNAM相当于将这一组JOBLIB语句调用到作业流中,其好处在于减少了JCL语句的长度,又可以供多个作业流反复调用,避免在多个作业流中重复编写同样的语句。