如何在as400中编译使用RPG3上的子教程文件的程序



我修改了一个已经在生产中运行的程序,该程序使用文件替换。我无法编译它,因为声明为输入的文件与另一个文件具有相同的格式名称。这个相同的输入文件在运行时被另一个替换,其字段在链操作的其余代码中使用,由于这个没有声明,这些字段不会被识别:

FFILELCT IF  E                    DISK
F                                              KRECNO RCDNBR
FEXTRPHOTO   E                    DISK                      A      

这两个文件具有相同的格式名称===>编译错误当作业正在运行时:使用wrkusrjob+5+选项15,我可以看到文件替换FILELCT DB到文件(XXXXXXXX/FILE2(

你有什么解决方案可以编译它吗?

正如@nfgl所说,您需要使用K RENAME来重命名第二个文件的格式。对于下面的代码,我假设格式的名称是";ELCFMT";。我将EXTRPHOT文件的格式重命名为EXTRFM。

FFILELCT IF  E                    DISK                        
F                                              KRECNO RCDNBR  
FEXTRPHOTO E                      DISK                      A 
F            ELCFMT                            KRENAMEEXTRFM 

您可以先使用cvtRpgSrc创建ILE程序。然后再次尝试编译。

通过将文件1复制到qgpltemp并用文件名2重命名它,然后将qgpltemp-库放在库列表的第一位,解决了此问题。感谢大家对的支持

相关内容

  • 没有找到相关文章

最新更新