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



As I read the docs *CL is only needed if an RPG returns a char(1) to a CL program.

-Matt


-----Original Message-----
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Charles Wilt
Sent: Thursday, August 5, 2021 10:20 AM
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: Return *on or *off from CLLE module

I seem to recall issues with passing char(1) parameters from RPG to CL...

I can't seem to find the details, just solutions
- extproc(*CL:name)
- use two byte parms...

Not sure if this will matter or not in this scenario...

And if somebody could refresh my memory on what the differences are for
char(1) parms between RPG and CL, that'd be nice :)

Charles

On Thu, Aug 5, 2021 at 9:22 AM <smith5646midrange@xxxxxxxxx> wrote:

Thanks for the reply.

This worked but since it took me a while to figure it out using "old
school"
formatting, I thought I would reply back with the code that I used to
test the concept.

--------------------
Program RTNPARMPGM
d rtnparmcl pr n rtnparm
if rtnparmcl();
dsply 'Success';
else;
dsply 'Failure';
endif;
*inlr = *on;
return;
--------------------
Program RTNPARMCL
PGM PARM(&STATUS)
DCL VAR(&STATUS) TYPE(*LGL)
CHGVAR VAR(&STATUS) VALUE('0')
ENDPGM: ENDPGM
--------------------
I compiled both sources to modules and then executed command CRTPGM
PGM(RTNPARMPGM) MODULE(RTNPARMPGM RTNPARMCL)

When I ran RTNPARMPGM, it properly displays Success or Failure (had to
mod the CHGVAR in the CL to test both results).

One other fun fact. SEU does not like the keyword RTNPARM but when
you look at the error message, it says RTNPARM is one of the value
values. I know, SEU is dead but it is still used in a lot of places
so I thought that I would point out this info because it took me a
while to figure out what was wrong with it.



-----Original Message-----
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of
Niels Liisberg
Sent: Thursday, August 5, 2021 9:41 AM
To: Midrange Systems Technical Discussion
<midrange-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: Return *on or *off from CLLE module

I suggest you create the prototype for the CL where the first
parameter is the RTNPARM

The you can use it in RPG as a function ( as you describe) but the CL
is just the first parameter you have to set to LGL '1' or '0'

https://urldefense.com/v3/__https://www.ibm.com/docs/en/i/7.4?topic=ke
ywords-rtnparm__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIj
besgg5AOqqRf6HmexttlgfTZAUbu1$


On Thu, Aug 5, 2021 at 3:24 PM <smith5646midrange@xxxxxxxxx> wrote:

I define a lot of my RPGLE modules with a return type of indicator.
In the module, I return *on for success or *off for failure. If I
need more details from the module, I include fields as part of a
parm list. Then in my code, I can write something like this



If DoesCustomerExist(customerNumber);

// execute code based on customer existing

Else

// execute code based on customer not existing

Endif



Is there a way to return the *on or *off from a CLLE module? RETURN
does not have a parm.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit:
https://urldefense.com/v3/__https://lists.midrange.com/mailman/listi
nfo/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_c
Ijbesgg5AOqqRf6HmexttlgfRtG5hVd$ or email:
MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://urldefense.com/v3/__https://archive.midrange.com/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6Hmexttlgfe-COX5Y$ .

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link:
https://urldefense.com/v3/__https://amazon.midrange.com__;!!O6xM9Yim
9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6HmexttlgfWwh
Xcsi$

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit:
https://urldefense.com/v3/__https://lists.midrange.com/mailman/listinf
o/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbe
sgg5AOqqRf6HmexttlgfRtG5hVd$ or email:
MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://urldefense.com/v3/__https://archive.midrange.com/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6Hmexttlgfe-COX5Y$ .

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link:
https://urldefense.com/v3/__https://amazon.midrange.com__;!!O6xM9Yim9Y
k!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6HmexttlgfWwhXcsi
$

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit:
https://urldefense.com/v3/__https://lists.midrange.com/mailman/listinf
o/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbe
sgg5AOqqRf6HmexttlgfRtG5hVd$ or email:
MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://urldefense.com/v3/__https://archive.midrange.com/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6Hmexttlgfe-COX5Y$ .

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link:
https://urldefense.com/v3/__https://amazon.midrange.com__;!!O6xM9Yim9Y
k!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6HmexttlgfWwhXcsi
$

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: https://urldefense.com/v3/__https://lists.midrange.com/mailman/listinfo/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6HmexttlgfRtG5hVd$
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at https://urldefense.com/v3/__https://archive.midrange.com/midrange-l__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6Hmexttlgfe-COX5Y$ .

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link: https://urldefense.com/v3/__https://amazon.midrange.com__;!!O6xM9Yim9Yk!p1FjEMPrmZkZTTf6ktTEN8Y4m45sxw0SFVX_cIjbesgg5AOqqRf6HmexttlgfWwhXcsi$

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