如何删除自己创建的module和CRTPGM的程序?

发布于 2022-09-08 02:13:33 字数 92 浏览 15 评论 5

怎么样删除module和CRTPGM以及CRTSRVPGM的程序?
还有就是,在CLLE中只可以进行CALL/CALLPRC么,RPGLE中只能CALL/CALLB?谢谢.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

叹梦 2022-09-10 04:02:11

谢谢啊,呵呵.
CALL:动态调用,程序和程序之间.
CALLB:静态调用,只局限与一个程序bound的modules间的调用.比如,CL程序作为interface,传入一个参数给RPGLE,RPGLE中CALLB一个公共程序(CRTBNDRPG). 此时RPGLE和公共程序必须bind,CL可bind,也可以不bind。
CALLP:静态调用。
CALL和CALLP可以调用系统特殊子例程,如获得信息子例程,CALLB不可以.
不过在CL中可以用CALLPRC PRC(CEEDOD),14可以编译。这里是因为CEEDOD is system apis么?

预谋 2022-09-10 01:54:28

LZ,你要搞搞清楚
在RPGLE中,有CALL ,CALLB 和CLLP三个概念,具体区别查资料
在CLLE中有CALL和CALLPRC
CALL的话是CALL PROGRAM,属动态调用,14就可以直接编译成program CRTBNDRPG/CRTBNDCL

如果用到CALLPRC或者CALLP CALLB,属于静态调用(CALLB看情况可能静态也可能动态),本身无论调用还是被调用都是MODULE,不能看作是一个完整的PROGRAM,所以14编译是不行
要15先编译成把调用和被调用编译成MODULE,然后在用CRTPGM把MODULE绑到一起

在RPGLE中往往一个PROGRAM会调用到很多MODULE,这个时候常用的MODULE就会放到SRVPGM里面,然后做成BNDDIR
用CRTPGM的时候就不需要一个个的输入那么多的MODULE

遗心遗梦遗幸福 2022-09-10 00:16:54

PGM        PARM(&TEXT)                        
DCL        VAR(&TEXT) TYPE(*CHAR) LEN(10)     
CALLPRC       PRC(ZPROC1) PARM(('0'))            
CALLPRC      PRC(ZPROC1) PARM(('1') (&TEXT))   
CALLPRC    PRC(ZPROC1) PARM(('1') ('GOODBYE'))
ENDPGM  
14编译出错了,15编译就OK?如果CALLPRC-----》CALL,14可以编译.

糖粟与秋泊 2022-09-09 10:07:18

还有,当CLLE里面是CALL时,只能用14来编译?CALLPRC时用15?
为什么CRTPGM创建的程序不需要进行编译?

无法言说的痛 2022-09-08 14:02:26

无语,删除它们竟然可以直接DLTXXX,哎!这样是完全删除么,我记得删除时,需要在WRKOBJPDM和WRKMBRPDM2边一起删除的?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文