"Unpredictable results" is a rather broad statement... It mostly
depends on the design of your OPM applications. Typically, if you end a
program with LR on, you won't have too many issues, but programming OPM
for performance typically involved exiting a program without LR and
leaving files open. It is these performance enhancing techniques that
don't work the same in ILE.
ILE activation groups circumvent some of the need to code for
performance, since many of these elements are implemented by default in
an ILE module.
My opinion is that trying to maintain a hybrid (part OPM, part ILE)
application is much more difficult in the long run. I see issues with
overrides all the time, and it leads toward stupid standards like
"Always use OVRSCOPE(*JOB)". A simple alternative would be to convert
the rest of your OPM to ILE, and run them all in a single named AG. Any
service programs would use ACTGRP(*CALLER), so that you could refine
your AG strategy later as needed.
Jmo,
-Eric DeLong
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of David FOXWELL
Sent: Wednesday, September 08, 2010 8:46 AM
To: RPG programming on the IBM i / System i
Subject: RE: AW: AW: program won't let go of file
-----Message d'origine-----
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] De la part de Scott Klement
If
you specify DFTACTGRP(*YES), the program will act like an OPM
program, and the activation will indeed be removed from
memory with LR=*ON or RCLRSC.
We have converted a number of OPM that were needed by an application
that runs in a named ACTGRP. Obviously, we have recompiled with
ACTGRP(*CALLER).
If I understand correctly, we can expect that unpredictable results may
occur in the applications where previously the programs were OPM?
As an Amazon Associate we earn from qualifying purchases.