首页 > 解决方案 > 有没有办法在不使用 QTEMP/QSQLPRE 的情况下使用 crtsqlrpgle 进行编译?

问题描述

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

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

如果过程的第 2 步失败,则抛出 RNF0733。有没有办法避免这种情况?

标签: compilationibm-midrangerpg

解决方案


我用我的 Makefile 中的这个附加命令解决了这个问题:

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

推荐阅读