|
Bob Cozzi wrote:
I believe the CL interface, which is probably what's being used, will pass the minimal descriptor as well. Similar to calling it from Command Entry. I think it was referring to C calling RPG IV.
%PARMS for procedures is implemented by using the operational-descriptor mechanism; one part of the information in an operational descriptor is the number of parameters. A "full" operational descriptor has (some) information about every parameter that is passed, but RPG only builds a full one if asked (OPDESC keyword on the prototype or (D) extender on CALLB). Otherwise, it just builds a "minimal" one that only has the number of parameters. So you're fine to use %PARMS if RPGLE is your caller. And CL always passes a full operational descriptor, so that's fine too. But C and COBOL both have to be told to pass a descriptor. There are a few ways to call your procedure that will never pass a descriptor; for example the SrvpgmCall class in the Java toolkit, an API whose name I forget that will call a procedure in a service program, JNI native-method calls, and I think SQL stored procedure calls.
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.