|
uuhhhh. That might be my problem. Will try it out. thanks. -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]On Behalf Of Scott Klement Sent: Tuesday, April 05, 2005 2:59 PM To: RPG programming on the AS400 / iSeries Subject: RE: Passing multi occurrence DS pointer to procedure - Data out ofalignment Hello, > When I'm in debug and eval the pointer of the multi occurrence DS and > occurrence one and get different pointer value (see below). Is this > normal? > > EVAL %ADDR(MCRADD) > %ADDR(MCRADD) = SPP:CFFC819861042450 > EVAL %ADDR(MCRADD(1)) > %ADDR(MCRADD(1)) = SPP:CFFC819861041F50 The %occur() BIF or the OCCUR op-code can be used to set the ocurrance of a MODS. When the occurence is set to 1, the addresses should be the same. When the occurrence is set to 2, then %ADDR(MCRADD) shoudl equal %ADDR(MCRADD(2)). When the occurence is set to 3, then %ADDR(MCRADD) should match %ADDR(MCRADD(3)) and so on... If you're passing the data to a subprocedure by pointer, make sure you set the occurrence to 1 before getting the address that you pass. A much better alternative is to use data structure arrays INSTEAD OF multiple occurence data structures. Then you can declare the array on the prototype (instead of a pointer) so that it'll always be passed correctly. -- This is the RPG programming on the AS400 / iSeries (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 mailing list archive is Copyright 1997-2025 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.