Hi,
if you are on release V5R4 or higher it is possible to directly define a
data structure in CL.
This data structure can be passed as parameter to RPG.
DCL VAR(&MYDS) TYPE(*CHAR) LEN(7)
DCL VAR(&MYSUBFLD1) TYPE(*CHAR) STG(*DEFINED) LEN(3) DEFVAR(&MYDS)
DCL VAR(&MYSUBFLD2) TYPE(*CHAR) STG(*DEFINED) LEN(4) DEFVAR(&MYDS 4)
As Alan already pointed out only a pointer to either the data structure or a
character field will be passed.
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im
Auftrag von Alan Campin
Gesendet: Friday, 04. February 2011 08:06
An: RPG programming on the IBM i / System i
Betreff: Re: call rpg from clp with ds
i am not sure why not. RPG just receives a pointer to the data. You can
simply define a type as two fields and receive that it should be fine.
d TD_Receive...
d ds Qualified
d Template
d Field1...
d 3a
d Field2...
d 4a
p MyProgram...
p b
d pi Extpgm('APGM')
d InFields...
d LikeDs(TD_Receive)
d Const
/Free
Afield = InFields.Field1;
Bfield = InFields.Field2;
On Thu, Feb 3, 2011 at 8:38 AM, David FOXWELL
<David.FOXWELL@xxxxxxxxx>wrote:
Hi,
If a parameter to an rpg4 pgm is a data structure with 2 zones 3A and 4A,
can I call it from a clp like call mypgm(7A)?
Thanks
--
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.