If PgmB was designed to run in batch and isn't a program of a few hundred
lines, I wouldn't dare hope that everything will work just by activating LR
on exit. You should be sure it doesn't call other programs or use service
programs.
If you can guarantee this, you could save yourself the cost of a new job
with every invoice by modifying PgmB with ACTGRP(*NEW).

One possible solution is to start separating PgmB (if possible) into
smaller, specialized programs to run via DTAQ. If you can compare the
results between production and a test environment, it becomes much easier
to identify where the original programmer didn't handle cleanup properly.
This eliminates the need to rewrite the program from scratch.

HTH
--
Marco Facchinetti

Mr S.r.l.

Tel. 035 962885
Cel. 393 9620498

Skype: facchinettimarco


Il giorno gio 16 apr 2026 alle ore 21:06 <smith5646midrange@xxxxxxxxx> ha
scritto:

Thanks everyone for your thoughts on how to rewrite this but unfortunately,
the logic was only an example to show the program flow. Because of how the
system is written and what needs to be done, PgmA submitting PgmB as
individual jobs is the only solutions without spending a ton of hours doing
code rewrite.

I think that I have my answer in that *inlr being on or off really makes no
difference because when the job ends, everything from PgmB gets cleaned up
either way. Feel free to correct that if I misunderstood some of the
explanations.



-----Original Message-----
From: smith5646midrange@xxxxxxxxx <smith5646midrange@xxxxxxxxx>
Sent: Wednesday, April 15, 2026 4:48 PM
To: Midrange RPG List <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: *INLR

If I have PgmA and it repeatedly calls PgmB, I know not setting on LR makes
the process faster because it doesn't have to reload PgmB into memory every
time.

The argument that we are having is related to PgmA submitting PgmB to
enable
multi-thread processing. Does not setting on LR help in this case because
they are different jobs?

For example,
PgmA
Do until shutdown
Read Invoice Header File for unprocessed invoices
If a new invoice is found
Mark the invoice as In-Process
Submit PgmB to process the invoice


PgmB
Process invoice based on invoice number received
Mark invoice as Processed
** Note: no *INLR logic here
Return

VS

Process invoice based on invoice number received
Mark invoice as Processed
*inlr = *on
Return


--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 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.