4

我正在尝试将 AFP 打印到 sysout,但 JCL 不知道(也不知道)FORMS 参数。我目前的解决方案是创建动态 JCL 并将其旋转到 INTRDR,但这是一个弱解决方案,因为该作业将不受我们的调度程序的控制......因此,异常结束或其他问题将在夜间被忽视运营商。

我开始设计一种通过 COBOL 程序打印 AFP 的方法。我使用 BPXWDYN 动态创建 SYSOUT DD,这允许我根据需要设置 FORMS 参数。但下一步是将 AFP 转储到该 DD。

我以为我可以从我的 COBOL 程序中动态调用 IEBGENER,但这会拉取 S0C4。

我可以在 COBOL 程序中将 AFP 记录从一个 DD 移动到另一个,但这将我限制在一个 LRECL 中……而且我在整个系统中对 AFP 有许多不同的 LRECL 定义,并且 COBOL必须在编译时知道 LRECL。

有什么想法吗?是否可以动态调用 IEBGENER 而得不到 S0C4?还有什么我没有想到的想法吗?

提前致谢...

4

2 回答 2

3

你有没有想过写一个小的汇编程序?您可以在 BPXWDYN 调用中指定 LRECL,而 DCB 不需要指定 LRECL;它将在 OPEN 时从 DCB 参数中获取。模拟 IEBGENER 的程序非常简单。

或者,查看使用 FIELDS=COPY 参数调用 SORT。SORT 也不需要 LRECL。或者写一个 REXX 脚本。

有很多方法可以做到这一点;你只需要看看 COBOL 框外。

于 2013-08-06T07:05:01.880 回答
0

您的问题不是很清楚,但我想知道您是否应该考虑使用名为 APKACIF 而不是 IEBGENR 的 ACIF 实用程序。该实用程序将合并您的数据并将 AFP FORMDEF、PAGEDEF 对象解析为数据集或打印流。

于 2013-08-05T18:47:09.230 回答