从rpgle pgm向cl变量返回dsply消息



我有一个cl程序,叫做rpgle程序。rpgle程序产生一个dsply";消息";我想将dsply消息设置为用于调用rpgle pgm的cl程序中的一个变量。

用什么cl命令将dsply消息检索到变量?

DSPLY操作码发送Information消息。。。

查看CL编程文档的CL程序或程序部分的接收消息中提到的接收消息(RCVMSG(。

我的理解是,您试图通过调用RPG程序来更改CL程序中的变量。

让我们暂时忽略DSPLY,因为我的猜测是你实际上并不需要它。

示例CL程序(MYCLPGM(,其将变量设置为"0";Apple";,调用RPG程序,将所述变量改变为"0";橙色";并在作业日志中以消息的形式显示结果变量的值(以及屏幕上的消息区域,具体取决于您的模拟器(;

PGM                                                   

DCL        VAR(&MYVAR) TYPE(*CHAR) LEN(10)            

/* Change variable "&MYVAR" to "APPLE" */             
CHGVAR     VAR(&MYVAR) VALUE('APPLE')                 

/* Call RPG program to change "&MYVAR" to "Orange" */ 
CALL       PGM(MYRPGPGM) PARM(&MYVAR)                 

/* Send message to job log showing what &MYVAR now contains */
SNDPGMMSG  MSG('&MYVAR = ' || &MYVAR)                 

ENDPGM

示例RPGLE程序(MYRPPGM(更改变量;

d MYRPGPGM        pr                  extpgm('MYRPGPGM')        
d   myVar                       10a                             

d MYRPGPGM        pi                                            
d   myVar                       10a                              

/free                                                          

// Change passed in variable "myVar" from "Apple" to "Orange"
myVar = 'Orange';                                            

// Return to caller                                          
return;                                                      

/end-free                                                                                                                             

相关内容

  • 没有找到相关文章

最新更新