Db2 不允许使用CLLE SNDRCVF命令
我正试图使用Rational Series编译这段CL代码,但不断出现错误 这是我的CL代码:Db2 不允许使用CLLE SNDRCVF命令,db2,ibm-midrange,control-language,Db2,Ibm Midrange,Control Language,我正试图使用Rational Series编译这段CL代码,但不断出现错误 这是我的CL代码: PGM DCLF FILE(LAB4DF) SNDRCVF RCDFMT(RECORD1) /* send, recieve file */ DOWHILE (&IN03 = '0') SELECT WHEN (&USER
PGM
DCLF FILE(LAB4DF)
SNDRCVF RCDFMT(RECORD1) /* send, recieve file */
DOWHILE (&IN03 = '0')
SELECT
WHEN (&USERINPUT = '1' *OR &USERINPUT = '01') CALLSUBR OPTION1
OTHERWISE DO
*IN03 = '1'
ENDDO
ENDSELECT
ENDDO
SUBR OPTION1
DSPLIBL
ENDSUBR
ENDPGM
这是我的DSPF代码
A R RECORD1
A 1 38'LAB 4'
A 3 3'Please select one of the following-
A options:'
A 6 11'3. Maximum Invalid Signon Attempt-
A s allowed'
A 8 11'5. Run Instructor''s Insurance Pr-
A ogram'
A 5 11'2. Signed on User''s Message Queu-
A e'
A 1 3'Yathavan Parameshwaran'
A 7 11'4. Initial number of active jobs -
A for storage allocation'
A 4 11'1. Previous sign on by signed on -
A user'
A 14 11'F3 = Exit'
A 14 31'F21 = Command Line'
A 2 70TIME
A 1 72DATE
A 9 11'Option: '
A USERINPUT 2 B 9 19
A 91 DSPATR(RI)
A 92 DSPATR(PC)
A MSGTXT1 70 O 11 11
A MSGTXT2 70 O 12 11
我的CL代码或DSPF代码有问题吗?查看文档,我怀疑您需要将
RCDFMT
添加到DCLF
规范中,如下所示:
DCLF FILE(LAB4DF) RCDFMT(RECORD1)
SNDRCVF RCDFMT(RECORD1) /* send, recieve file */
如果显示文件中确实只有一种记录格式,则还可以从两个命令中省略RCDFMT
,如下所示:
DCLF FILE(LAB4DF)
SNDRCVF /* send, recieve file */
查看文档,我怀疑您需要将
RCDFMT
添加到DCLF
规范中,如下所示:
DCLF FILE(LAB4DF) RCDFMT(RECORD1)
SNDRCVF RCDFMT(RECORD1) /* send, recieve file */
如果显示文件中确实只有一种记录格式,则还可以从两个命令中省略RCDFMT
,如下所示:
DCLF FILE(LAB4DF)
SNDRCVF /* send, recieve file */
你忘了说你犯了什么错误。把所有关于错误信息的信息都放进你的问题中总是很重要的 有两个错误
- &IN03未定义
- 您分配给*IN03的任务应该是分配给&IN03,但这不是您在CLP中执行任务的方式
CHGVAR name value
你忘了说你犯了什么错误。把所有关于错误信息的信息都放进你的问题中总是很重要的 有两个错误
- &IN03未定义
- 您分配给*IN03的任务应该是分配给&IN03,但这不是您在CLP中执行任务的方式
CHGVAR name value
我尝试编码,将另一种记录格式添加到文件中。事实证明,只要在SNDRCVF上指定RCDFMT,就不需要在DCLF上指定RCDFMT。事实证明,只要在SNDRCVF上指定RCDFMT,就不需要在DCLF上指定RCDFMT。啊,很抱歉没有错误消息。我得到的主要是&IN03错误。我会试试你的建议。谢谢啊,很抱歉没有错误消息。我得到的主要是&IN03错误。我会试试你的建议。谢谢