Ibm midrange 使用SQL,是否可以创建与它所基于的原始文件(PF)具有相同格式级别标识符的全局临时表?

Ibm midrange 使用SQL,是否可以创建与它所基于的原始文件(PF)具有相同格式级别标识符的全局临时表?,ibm-midrange,db2-400,rpgle,Ibm Midrange,Db2 400,Rpgle,程序A调用程序B。 我正在基于Prog B中的文件A创建全局临时表 我必须打开并读取程序A中的临时表。我在F规范中使用了EXTFILE操作码来编译程序A fFILEA if e disk extfile(wrk_filnam) f usropn /free wrk_filnam = 'QTEMP/TEMP_TABLE' open FILEA /end-free 当我返回到Pr

程序A调用程序B。 我正在基于Prog B中的文件A创建全局临时表

我必须打开并读取程序A中的临时表。我在F规范中使用了EXTFILE操作码来编译程序A

fFILEA   if   e             disk    extfile(wrk_filnam)
f                                      usropn

/free

wrk_filnam = 'QTEMP/TEMP_TABLE'

open FILEA

/end-free
当我返回到Prog A并打开文件A时,由于使用新的格式级别标识符创建了临时表,所以得到了级别检查错误


有解决办法吗?如果我能用CRTDUPOBJ,那就太好了

CRTDUPOBJ应该创建一个与原始文件具有相同格式级别标识符的文件。

sql语句
声明全局临时表tmptable,如srctable RCDFMT srcfmt
将创建
tmptable
,其格式级别标识符与
srctable
相同,只要您确保
srcfmt
与原始记录格式名称相同


您是否使用正确的文件进行编译以获得正确的级别标识符?您可以使用
DSPPGMREF
查找程序对每个文件所需的级别标识符。

谢谢,它现在可以工作了。由于我相信的记录格式,我得到了不同的标识符。是的,我可以。我不想使用CRTDUPOBJ。谢谢你的回答。