AS400重复文件在逻辑文件中命名不同的类型

时间:2018-05-04 08:40:29

标签: ibm-midrange db2-400 rpgle rpg

我正在解决我的程序中的问题。有2个物理文件将字段声明为xxBABA。 'xx'对于这两个PF是不同的,并且这些字段具有不同的类型,其中一个字符为其他小数。存在包含这两个文件的逻辑文件。

在程序'xx'中,前缀由YY替换为所有字段,因此有YYBABA char和YYBABA decimal。

有没有办法从第二个获取数据?

2 个答案:

答案 0 :(得分:1)

如果程序在RPG中,您可以使用I规范重命名一个或两个字段。

     IPF1RECFMT    
     I              XXBABA                      XXBABA#                               
     IPF2RECFMT    
     I              XXBABA                      XXBABA@

答案 1 :(得分:-1)

不,你甚至不能这样编译。

您可以解决此问题的一种方法是使用@RobSchember建议的I规范重命名一个字段。另一种方法,从v7.1开始,将在文件上放置Qualified关键字,并将IO作为数据结构。这种类似命名字段的方式现在与其特定记录相关联。它看起来像这样:

dcl-f file1       Disk Qualified;

dcl-ds rec1       LikeRec(file1.record1: *input);
dcl-ds rec2       LikeRec(file1.record2: *input);

read file1.record1 rec1;
read file1.record2 rec2;