Aka*_*tty 0 rpgle db2-400 ibm-midrange
程序A调用程序B。我正在基于程序B中的文件A创建全局临时表。
我必须打开并阅读程序A中的临时表。我在F Spec中使用EXTFILE操作码来编译程序A。
fFILEA if e disk extfile(wrk_filnam)
f usropn
/free
wrk_filnam = 'QTEMP/TEMP_TABLE'
open FILEA
/end-free
Run Code Online (Sandbox Code Playgroud)
当我返回到程序A和打开文件A时,由于使用新的格式级别标识符创建了临时表,因此出现级别检查错误。
有解决方法吗?如果我可以使用CRTDUPOBJ,那就太好了。
只要您确保与原始记录格式名称相同,该sql语句DECLARE GLOBAL TEMPORARY TABLE tmptable LIKE srctable RCDFMT srcfmt
将tmptable
使用相同的格式级别标识符创建。srctable
srcfmt
您是否使用正确的文件进行编译以获得正确的级别标识符?您可以使用DSPPGMREF
找出程序期望的每个文件的级别标识符。