首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JCL这是怎么回事?

JCL这是怎么回事?
EN

Stack Overflow用户
提问于 2015-12-10 09:53:47
回答 1查看 257关注 0票数 0

我正在尝试破解这个JCL,想知道出了什么问题。

这是我的代码:

代码语言:javascript
复制
 000001 //SORTJCL   JOB                                        
 000002 //SORTSTEP  EXEC PGM=SORT                              
 000003 //SYSOUT    DD SYSOUT=*                                
 000004 //SORTOUT   DD SYSOUT=*                                
 000005 //SORTWK01  DD SPACE=(CYL,(1,1))                       
 000006 //SORTIN    DD DISP=SHR,DSN=Y2015.PUBLIC.DATA(AREACODE)
 000007 //SYSIN     DD *                                       
 000008   SORT FIELDS=(6,10,CH,A)                              
 000009 //  IF RC = 0 THEN                                     
 000010 //COPYSTEP  EXEC PGM=ICEGENER                          
 000011 //SYSUT1    DD DISP=SHR,DSN=Y2015.PUBLIC.DATA($005)    
 000012 //SYSUT2    DD DISP=SHR,DSN=&SYSUID..P2.OUTPUT($005)   
 000013 //SYSOUT    DD SYSOUT=*                                
 000014 //SYSPRINT  DD SYSOUT=*                                
 000015 //SYSIN     DD DUMMY                                   
 000016 //  ELSE                                               
 000017 //  ENDIF             

此代码的目的-读取Y2015.PUBLIC.DATA(AREACODE)并对其进行排序,并将输出复制并写入MYID.P2.OUTPUT($005)

谁能给我解释一下我漏掉了什么?

EN

回答 1

Stack Overflow用户

发布于 2016-01-10 02:20:58

要"read and sort Y2015.PUBLIC.DATA(AREACODE)",您已经在第000006行的第一个作业步骤中使用了正确的//SORTIN。读取和排序的结果被写入到//SORTOUT,在您的JCL中,它似乎被写入到SYSOUT=* (假脱机),在第000003行。

但这不是你应该做的(根据你的"copy and write the output into MYID.P2.OUTPUT($005)")。因此,您必须像这样修改000003行:

代码语言:javascript
复制
 000003 //SYSOUT    DD DISP=SHR,DSN=&SYSUID..P2.OUTPUT($005)

应用此更改后,还必须删除与第二个jobstep相关的所有内容(因此从第000009行开始,以及该行后面的所有内容)。

如果出于任何原因,您仍然希望所有这些行都继续包含在此JCL中,则只需在第000009行之前插入一个新行,如下所示:

代码语言:javascript
复制
 000009 //

这将导致后面的所有剩余JCL行都被忽略。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34192394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档