有没有一种方法可以使用crtsqlrpgle而不使用QTEMP / QSQLPRE?

时间:2020-08-27 08:55:54

标签: compilation ibm-midrange rpg

从SQLRPGLE源成员创建对象的过程是一个多步骤过程:

  1. 检查源成员中SQL的语法,以确保其有效。
  2. 正在编译的源成员的副本已移至QTEMP中的源文件QSQLPRE。
  3. 将源成员中的SQL语句转换为调用,并将新的源成员作为RPGLE源类型放置在QTEMP中的源文件QSQLTEMP1中。
  4. 正是这个源成员被编译。

如果过程的步骤2失败,则抛出RNF0733。有什么办法可以避免这种情况?

  • 使用交互式作业不是一种选择。
  • 由于我需要rpgPpOpt(* lvl2),所以不选择使用crtBndRpg

1 个答案:

答案 0 :(得分:1)

我通过Makefile中的以下附加命令解决了这个问题:

  1. 系统“ dltObj LIB /编译objType(* FILE)”
  2. 系统“ crtSrcPf LIB /编译rcdLen(250)”
  3. 系统“ cpyFrmStmF从StmF('$ <')到Mbr('/ QSYS.LIB / LIB.LIB / COMPILE.FILE / $ @。MBR')”