企业Cobol 5.2调试器线路数超过

时间:2017-12-05 13:25:37

标签: cobol mainframe zos

我有"精彩"维护我没有写过的遗留程序的任务。 Cobol程序在z / OS 2.2环境中运行,并使用IBM Enterprise Cobol 5.2进行编译。对于调试,我想使用选项 CBL LIST,TEST(EJPD,SOURCE)编译程序。不幸的是,我的源代码有超过999999行,所以在编译时会出错。 有没有办法规避行数的限制,还是只有一种方法来分割程序?

2 个答案:

答案 0 :(得分:6)

自20世纪80年代中期发布的至少VS COBOL II以来,{9}号线的限制为999999。它是Enterprise COBOL 4.2中的has been present,它是编译器重写之前的最新版本,它为我们提供了5.x及其后续版本。

也许有人在等你,向你展示无法编辑的来源。这是一个编译器限制,正如@SaggingRufus指出的那样,解决方案是将程序分解为多个模块。

我认为有一百多万行源代码是不可理解的。

您可以使用的其他机制包括评估代码,查找跨越多行的语句,没有充分理由......

MOVE
A
TO
B

......真是太傻了。

顺便说一句,维护你没有写的代码是工作的一部分。将新员工维持现有代码库以使他们熟悉商店标准等,这是正常的。

答案 1 :(得分:1)

根据JES版本的不同,我相信你可以使用//JOB10 JOB 1234,ME,LINES=(999999,WARNING) 参数看起来像这样

OR

这告诉系统即使遇到行限制也要继续,并且只发出警告。

或者,您可以将此编译列表输出到文件而不是SYSOUT。然后行限制将不适用

另外请记住,在JES假脱机中使用那么多行并不是一件好事,所以我建议你去文件路径。