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



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://www.ibm.com/docs/en/i/7.4?topic=keywords-rtnparm


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://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
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://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link:
https://amazon.midrange.com

--
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://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com


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.