从外部描述的文件中引用字段

Referencing Fields from an Externally Described File

我是 RPG 编程的新手。

F/SPACE 2                                                      
FVSPerf  IF   E           K Disk    Prefix(s)               
FVhipp  O    E              Printer Prefix(rp) OfLInd(*IN90)

使用上面的代码,我试图定义一个外部 table 文件并为其添加前缀。但是,当我尝试设置 Vhipp 打印文件中的任何字段时,如下所示:

Z-ADD     0             rpRpTot

我收到一个编译错误,指出:名称或指示符未定义。 Vhipp 的所有字段都会发生这种情况。

我是不是漏掉了什么明显的东西?我对RPG的理解是一旦你定义了一个外部文件就可以引用它的字段,我是不是定义错了?

我们需要查看打印机文件的 DDS。也可能是一个编译列表。

我刚刚做了一个快速测试,一切正常:

来自 DDS:

A          R DETAIL8                                       
A                                      SPACEB(1)           
A            TESTDATA     100         1    

文件定义:

FTEST4PT   O    E             PRINTER INFDS(OPNFBK) PREFIX(rpt) 

来自编译清单:

O                       RPTTESTDATA        100A CHAR      100 (TESTDATA) 

如您所见,前缀是从外部描述的 Printer 文件放在字段上的。

原来我没有在工作存储中定义关键字段。这些关键字段用于填充 Venshipp 字段,但由于它们是 blank/null,因此 table 字段返回时未定义。