|
NigsRpgId@aol.com wrote: > CL Pgm A - sets library list & calls RPG Pgm B > RPG Pgm B - calls various programs, including a CALLB to RPG Module C > RPG Module C - uses procedures defined within Service Program D > Service program D is a group of procedures/functions. There > is no mainline code. The service program uses a named > activation group. > > Programs A and B run in the default activation group. > Service Program D runs in its own named activation group. > > My problem is when the user executes the function the first > time, all works well. However if the process returns to CL > Pgm A, to set/reset library list, the named activation group > for the service program D is deleted. That shouldn't be the case unless a RCLACTGRP command is executed, or the API (CEETREC?) is called from within the service program. If either of these is happening, stopping it should remove the problem. However, the real cause of the problem is program P running in the default activation group. The default activation group is there to provide ILE/OPM compatibility, and if you are developing in ILE, you should really steer well clear of it, as it often leads to problems like this. If, in a case like the above, you run RCLACTGRP *ELIGIBLE, for example (strongly NOT recommended outside of develpment/testing) the service program's activation group will be destroyed, but the default one can't be. Then, when you call program A again, the system expects everything downstream to be activated (because it doesn't have to create the first activation group, I assume). And when it isn't, you get the behaviour you see. HTH. Cheers, Martin.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.