× 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.



Jeff Young wrote:
I am attempting to call a procedure in a service program from a CLLE pgm.
The CLLE pgm source is:
CALLPRC PRC(GET_WMS_PICK_TYPE) PARM((&CMPA *BYVAL) + (&LOC *BYVAL) (&AREA *BYVAL) (&EOJ + *BYVAL)) RTNVAL(&PICK_TYPE) The prototype for the procedure is:
D Get_WMS_Pick_Type... D PR LIKE(##FLAG) D Company LIKE(##CMPA) CONST D Location LIKE(##LOC) CONST D Area LIKE(##BINAREA) CONST D EOJ_Flag LIKE(##FLAG) CONST D Options(*NoPass)
When I call the procedure, I get a MCH3601 error in the procedure when I attempt to reference the &EOJ parm.
If I change the CL to use *BYREF for the parms, I get a MCH3601 error when the procedure references the return value &PICK_TYPE.

*BYVAL should not be used for parameters with CONST. I remember it by "CONST is short for 'CONSTant reference'".

As for the problem with &pick_type, what is the definition of ##FLAG?

As an Amazon Associate we earn from qualifying purchases.

This thread ...


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

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.