×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
On 2011/6/21 8:43 PM, James Lampert wrote:
But when I convert it to ILE, I find that it uses the FREE statement to
deactivate a called MI program.
You could write an OPM RPG program that just does the FREE opcode, and
call it from the MI program.
The FREE opcode does two things:
1. it deactivates the called program
2. it causes the RPG program to forget that it had called the program
before, so it will re-resolve on the next call
It doesn't sound like you need the second feature, but if you do, you
can use call-by-variable, and use the variable to call a dummy program
to get the ILE RPG program to forget that it had called the MI program.
Something like this:
D mipgm pr extpgm(pgmname)
D parms
D dummypgm pr extpgm(pgmname)
D pgmname s 10a inz('MIPGM')
/free
mipgm(parms);
// forget that we have called MIPGM before
pgmname = 'DUMMYPGM';
dummypgm(); // this should be very fast running
pgmname = 'MIPGM';
...
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.