生成数据组(GDG)

use*_*516 1 mainframe jcl

如果在作业的第一步中创建了(+1)生成数据集,那么如何在同一作业的后续步骤中引用它以进行输入?

Gil*_*anc 8

创建(+1)生成数据组(GDG)文件的作业步骤完成后,最新的GDG文件为(+1).

在工作结束或异常结束之前,当前的GDG不会变为零.

以下是我们其中一个批处理作业的示例.

//STEP05   EXEC PGM=OUTBOUND,REGION=4M,TIME=60                
//STEPLIB  DD  DSN=M5.M593CLLV.LOAD,DISP=SHR                  
//SYSTCPD  DD  DSN=M5.M51TCDLV.IBM.TCPPARMS(TCPDATA),DISP=SHR 
//INDD1    DD  DSN=J3.J3DVLP.W.J1PPB70.RDEXFILE(+1),DISP=OLD  
//OBNSTAT  DD  DSN=J3.J3PZOUTB.DVLP.OBNSTAT,DISP=SHR         
//SYSPRINT DD  SYSOUT=*                                 
//SYSUDUMP DD  SYSOUT=*                                
//SYSIN    DD  DUMMY       
Run Code Online (Sandbox Code Playgroud)

这通常不是一个好习惯,因为在异常终止之后重新开始变得困难.您必须将所有GDG(+1)更改为(+0)或(0).

更好的做法是创建一个普通文件,以便在整个作业中使用.然后,在上一个作业步骤中,将普通文件复制到GDG(+1)中.