|
You should not be using LIKE. You should use LIKEDS.
That way all fields within the DS can be accessed directly try from the
parm. For example:
dcl-ds myParmDS Template; // Put this in a /Copy so all progs can use it
field1 char(5);
field2 packed(7:2);
field3 varchar(200);
end-ds;
dcl-ds parms LikeDS(myParmDS);
dcl-pr CallPgm ExtName('WHATEVER');
allParms LikeDS(myParmDS);
end-pr;
parms.field1 = 'ABCDE';
CallPgm( parms );
In the WHATEVER program.
/Copy the template(s)
dcl-pi .....
parmData LikeDS(myParmDS);
end-pi;
// example file use
CHAIN parmdata.field1 AnyFile;
If %Found(AnyFile);
parmdata.field2 = data from file
etc. etc.
End-If;
NOT TESTED - done in a hurry.
There are lots of examples on the web look for use of Qualified Data
Structures.
On Mar 4, 2020, at 5:39 AM, Mónica Anastácio <monicaanastacio@xxxxxxxxx>wrote:
and
In fixed we work with external data structures to received information
pass information between programs.*---------------------------------------------------------------------------------------------
D er6005ds e ds extname(er6005ds)*---------------------------------------------------------------------------------------------
D wrtprba 4 dim(50) overlay(#tractprba)
Tp Reembolso Anteci.
D wrdesc 80 dim(50) overlay(#tracdesc)
Desc. Tp Reemb. Ant.
C *entry plistDS
C parm er6005ds
And now we have to used FREE and maintain the same structure.
DCL-DS ER6005DS extname('ER6005DS') inz;
wrtprba char(4) dim(50) overlay(#tractprba);
wrdesc char(80) dim(50) overlay(#tracdesc);
but i can use the same ext DS in the procedure interface:
DCL-PI *N;
p_er6005ds like(ER6005DS);
END-PI;
The information from the caller is on P_ER6005DS.
And i have on the pcpgm always to do:
ER6005DS = P_ER6005DS;
e the ucpgm the inverse:
P_ER6005DS = ER6005DS;
Theres any way of receive the information not in P_ER6005DS, but in the
declare with the arrays???questions.
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxx for any subscription related
link: https://amazon.midrange.com
Help support midrange.com by shopping at amazon.com with our affiliate
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxx 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 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.