首页 > 解决方案 > 我如何清除这个问题?无法编译?

问题描述

得到这个错误

11.43.36 JOB05184 $HASP165 IBMUSERX 结束于 N1 MAXCC=12 CN(内部)

DDNAME SYSLMOD 的 IEW2735S DA0F 输出数据集具有无效的记录格式。R IEW2008I 0F03 处理完成。返回码 = 12。

这是我要编译的代码:-

 //IBMUSERX JOB '285','POLSANI',NOTIFY=&SYSUID,REGION=6M   
 //JOBPROC JCLLIB ORDER=S1304.ANIL.PROC                    
 //COBCL   EXEC  COBCL,MEM=HELLPGM1                        
 //COMPILE.SYSIN DD DSN=IBMUSER.RKSH.COBOL(&MEM),DISP=SHR  
 //LKED.SYSLMOD DD DSN=IBMUSER.RKSH.LOAD(&MEM),DISP=SHR 

请解决这个问题。

标签: linkercobolmainframejcl

解决方案


这里没有人可以看到在您拥有 SYSLMOD 覆盖的 LKED 步骤中真正正在执行的程序,但它可能是 IEWL(活页夹,在古代称为链接编辑器)。

这里没有人可以看到您的 IBMUSER.RKSH.LOAD 数据集的属性是什么,但它必须具有 RECFM=U。

这里没有人可以看到您正在使用哪个编译器,但从您的数据集名称看来,您正在编译一个 COBOL 程序。如果您使用的 COBOL 编译器版本高于 4.2.1,那么您的 IBMUSER.RKSH.LOAD 数据集必须是 PDSE(而不是PDS)。如果您使用的是 IBM Enterprise COBOL 4.2.1 或更早版本,那么您的 IBMUSER.RKSH.LOAD 数据集可以是 PDS 或 PDSE。您的编译清单包括正在调用的编译器版本。

你的覆盖...

//LKED.SYSLMOD DD DSN=IBMUSER.RKSH.LOAD(&MEM),DISP=SHR 

...不应指定成员名称。它应该看起来像这样......

//LKED.SYSLMOD DD DSN=IBMUSER.RKSH.LOAD,DISP=SHR

IBM Enterprise COBOL 的文档可在此处获得。可在此处获得活页夹的文档。


推荐阅读