|
Jocke wrote: >Im rather new at ILE-RPG and have just started doing some module >programming. Now I want the main program to call another module >with parameters and get a result back. > >After I read the manuals I beelive CALLB is the way to call other modules >in the program but whats the best way to exchange data ? > >Should I use *ENTRY PLIST or go with the keyfunctions IMPORT / EXPORT fields ? Forget about CALLB (and CALL while you're at it). Go back to the manuals and read up about CALLP, procedures, and prototypes. This is the preferred way to do things in ILE RPG IV for many reasons: CALLP allows you to use free-form expressions. You can have return values from procedures. You can pass parameters by value, which is safer than passing by reference. Parameter types on CALLP are checked against the prototype definitions, which can catch coding errors at compile-time. CALLP allows either bound or dynamic call (depending on the prototype). ... (If we ever decided to "deprecate" certain opcodes, CALL and CALLB would certainly be on that list!) Avoid using IMPORT/EXPORT for passing values to procedures. Instead, parameter passing is much clearer and easier to understand. Cheers! Hans Hans Boldt, ILE RPG Development, IBM Toronto Lab, boldt@ca.ibm.com * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * This is the RPG/400 Discussion Mailing List! To submit a new * * message, send your mail to "RPG400-L@midrange.com". To unsubscribe * * from this list send email to MAJORDOMO@midrange.com and specify * * 'unsubscribe RPG400-L' in the body of your message. Questions should * * be directed to the list owner / operator: david@midrange.com * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
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.