Bryan's RPG IV Journal
V5R3 Activation Group Question
Q: V5R3 includes a change to the CRTPGM command; for the activation group if the *Entry module is an ILE module, the activation defaults to QILE.
We just had a very significant situation occur with an OPNQRYF in a CLLE program. The RPG program that was called to process the file in the OPNQRYF used to be an ILE program, *CALLER. However, it was not recompiled that way, and essentially ignored the selections made in the OPNQRYF and processed the whole file! This program needs to remain ACTGRP(*CALLER).
Am I correct that if this program were recompiled in activation group QILE, it would still not see the OPNQRYF selections and would still process the whole file?
A: Yes, you are correct. If the RPG program is compiled to run in QILE, then you'll want to be sure to recompile the CLLE program as well, to run in QILE. Otherwise, the OPNQRYF path would not be used.
At V5R3, the CRTPGM command changed the default to ACTGRP(*ENTMOD), which lets the binder evaluate which activation group the program should use, depending upon the nature of the program entry module. If the module attribute is RPGLE, CBLLE, or CLLE, then ACTGRP(QILE) or ACTGRP(QILETS) is used. QILE is used when STGMDL(*SNGLVL) is specified, and QILETS is used when STGMDL(*TERASPACE) is specified. If the module attribute is not RPGLE, CBLLE, or CLLE, then ACTGRP(*NEW) is used.
You still have the options to specify ACTGRP(*CALLER), ACTGRP(*NEW), or ACTGRP(name).
If the CL program is a CLP program (not CLLE), then you'll need to be sure that the RPG program is always compiled with ACTGRP(*CALLER), which is usually appropriate during the transition from OPM to ILE.
We just had a very significant situation occur with an OPNQRYF in a CLLE program. The RPG program that was called to process the file in the OPNQRYF used to be an ILE program, *CALLER. However, it was not recompiled that way, and essentially ignored the selections made in the OPNQRYF and processed the whole file! This program needs to remain ACTGRP(*CALLER).
Am I correct that if this program were recompiled in activation group QILE, it would still not see the OPNQRYF selections and would still process the whole file?
A: Yes, you are correct. If the RPG program is compiled to run in QILE, then you'll want to be sure to recompile the CLLE program as well, to run in QILE. Otherwise, the OPNQRYF path would not be used.
At V5R3, the CRTPGM command changed the default to ACTGRP(*ENTMOD), which lets the binder evaluate which activation group the program should use, depending upon the nature of the program entry module. If the module attribute is RPGLE, CBLLE, or CLLE, then ACTGRP(QILE) or ACTGRP(QILETS) is used. QILE is used when STGMDL(*SNGLVL) is specified, and QILETS is used when STGMDL(*TERASPACE) is specified. If the module attribute is not RPGLE, CBLLE, or CLLE, then ACTGRP(*NEW) is used.
You still have the options to specify ACTGRP(*CALLER), ACTGRP(*NEW), or ACTGRP(name).
If the CL program is a CLP program (not CLLE), then you'll need to be sure that the RPG program is always compiled with ACTGRP(*CALLER), which is usually appropriate during the transition from OPM to ILE.
Log of Journal Entries |
|
Use this scrollable blog map to view other journal entries: |
|
| It is your responsibility to ensure procedures, techniques, and code used from this website are accurate and appropriate for your installation. No warranty or support is implied or expressed. |
![]() |
| Privacy and Email Policy |
| AS/400®, eServer, i5/OS, IBM i, Integrated Language Environment®, iSeries, OS/400®, RPG/400®, System i5, VisualAge®, and WebSphere® are trademarks of IBM Corporation. Note: IBM® System i is the latest member of the family of eServer iSeries. This site might refer to System i as System i5, iSeries, or AS/400. |
|
If you are having trouble navigating the menu at the top of this page, you may use the following scrollable site map instead: |
|
|











International visitors: