3

我目前正在修改现有的 RPG 程序。目的是设置一个指标,以便该指标将激活显示文件中的显示属性 ND 以隐藏字段。问题是所有的通用指标IN01~IN99都用完了,我不能在不干扰现有程序流程的情况下重用它们。是否可以使用外部指示器 U1~U8 代替?如果不可能,还有其他选择吗?还是我只是搞砸了?

4

2 回答 2

3

考虑使用程序来系统字段而不是指标。 http://wiki.midrange.com/index.php/Program_To_System_Fields

另一种可能性是通过 DDS 关键字 INDARA http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Frzakc%2Frzakcmstdfindar.htm将所有显示文件指示器外部化

于 2012-07-25T13:28:21.007 回答
2

检查每个指标 01-99 的使用情况,以确定您是否可以释放它们以在您的显示文件中使用。

如果它们中的任何一个仅用于控制程序流程,而不直接涉及显示文件、打印文件、I-specs 或 O-specs,那么您可以将其使用替换为指标类型变量。将内部数据类型为 N(D-spec 的第 40 位)的变量声明为字符指示符格式字段。使用此变量代替仅用于程序流控制的指示器。

如果没有这样的指标,那么您可能应该使用 Buck 推荐的方法之一。

一种旧式替代方案,您可以将整个指示器阵列 *IN 保存到一个保持区域,暂时重新使用一些 I/O 指示器,然后将保持区域放回指示器阵列。您可能有多个 99 指标结构,您可以在适当的时间移动到 *IN 或从 *IN 加载。对于每种记录格式,您可以有一个这样的结构,您可以在该记录格式的 I/O 之前移动到 *IN,并在 I/O 之后加载回来。这为您的程序中提供了几乎无限数量的指标,尽管每种显示格式仍限制为 99 个。

于 2012-07-25T21:35:00.477 回答