Can you define a standalone variable to be like a procedure?
Yes, you can, if the procedure is designated to have a return value.

Why not change the like on your "Rtn" variable to be SFCLB2Ctmp.LBL?
This way is more fun, and has a practical benefit too. I might decide to
change the type of the return value (I often do). Making the standalone
values in the procedure be like the procedure interface, make a few less
places I have to look for where to change the type spec.





Michael_Schutte@b
obevans.com
Sent by: To
rpg400-l-bounces@ RPG programming on the IBM i /
midrange.com System i <rpg400-l@xxxxxxxxxxxx>
cc

09/09/2009 12:51 Fax to
PM
Subject
Re: Precompiler doesn't like the
Please respond to LIKE
RPG programming
on the IBM i /
System i
<rpg400-l@midrang
e.com>






I'm not on V6R1, but can you define a standalone variable to be like a
procedure? That doesn't make sense to me. But that's me.


Why not change the like on your "Rtn" variable to be SFCLB2Ctmp.LBL?







--

Michael Schutte
Admin Professional



Try Bob Evans GRILLING SAUSAGE! This summerâs hottest destination is your
own backyard with Bob Evans Brats and Italian Sausage! For tasty recipes
using Bob Evans grilling sausage, visit http://www.BobEvans.com/Recipes



rpg400-l-bounces@xxxxxxxxxxxx wrote on 09/09/2009 12:35:21 PM:


I have the following subprocedure, at OS level V6.1. The precompiler
chokes, saying that 'Rtn' is not defined, or not usable. RPGLE seems to
have no trouble, as I've defined return values like this before, just
never
a variable used as a host variable in an SQL statement. Is this just a
Pre-Compiler shortfall, or is there something I'm doing incorrectly?



D $GetLblMod PR LIKE(SFCLB2Ctmp.LBL)
D InCust LIKE(ECLtmp.LCUST) CONST
D InShip LIKE(ECLtmp.LSHIP) CONST
D OPTIONS(*NOPASS)
....
....
....
P $GetLblMod B
D $GetLblMod PI LIKE(SFCLB2Ctmp.LBL)
D InCust LIKE(ECLtmp.LCUST) CONST
D InShip LIKE(ECLtmp.LSHIP) CONST
D OPTIONS(*NOPASS)
D*-------------------
D Rtn S like($GetLblMod)
D Ship S like(ECLtmp.LSHIP)

/FREE

if %parms>=2;
Ship=InShip;
endif;

exec sql
select LBL into :Rtn
from SFCLB2C
where ID='ID'
and Cust=:InCust
and (Ship=:Ship or Ship=0)
order by Ship desc
fetch first row only;

RETURN Rtn;

/END-FREE
P $GetLblMod E

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.