我正在将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&字段不是唯一的
答案 0 :(得分:5)
您可以将%kds()与使用EXTNAME(...:*KEY)
或LIKEREC(...:*KEY)
dcl-ds key_list likerec(myfileR:*key);
//
chain %kds(key_list) myfile;
或者直接使用这些字段,因为它们已经定义了......
chain (field1:field2) myfile;
任何一种方法都应该摆脱重复的定义并从预编译器中停止SQL0314错误。