以自由格式SQLRPGLE替换键列表

时间:2017-11-14 16:01:00

标签: rpgle

我正在将RPGLE固定格式转换为自由格式,而在转换时我遇到了一个问题KEY-LIST&字段转换为数据结构。这基本上是重新定义已经直接或间接定义的字段......

DCL-DS Key_List;                                                                               
     Field1 CHAR(4);                                                                            
     Field2 CHAR(4);  
END-DS;  

field1& field2是文件的字段。下面是旧式(固定格式)

C     Key_list      KLIST                           
C                   KFLD                    Field1
C                   KFLD                    Field2       

请建议...程序正在给出编译时错误(SQL0314)field1&字段不是唯一的

1 个答案:

答案 0 :(得分:5)

您可以将%kds()与使用EXTNAME(...:*KEY)LIKEREC(...:*KEY)

定义的数据结构一起使用
dcl-ds key_list likerec(myfileR:*key);
//
chain %kds(key_list) myfile;

或者直接使用这些字段,因为它们已经定义了......

chain (field1:field2) myfile;

任何一种方法都应该摆脱重复的定义并从预编译器中停止SQL0314错误。