|
Steve, Try changing the definition of the pointer in ErrorsInDS. PointerPassedIn * Const By default the pointer is being passed by reference so the receiving pointer is actually a pointer to a pointer, not a pointer to the DS. HTH, Rick > -----Original Message----- > From: rpg400-l-bounces@xxxxxxxxxxxx > [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Ellsberry, Steve > Sent: Tuesday, May 23, 2006 4:18 PM > To: RPG programming on the AS400 / iSeries > Subject: Pointer / Based issue > > I have a program that contains a data structure and a pointer defined > as: > > d FeatTypeDS ds Qualified > d dsFeat 3 dim(1000) > d dsType 2 dim(1000) > > d PointerToDS s * > > I set the pointer by using: > PointerToDS = %ADDR( FeatTypeDS ) > > I have a procedure called ErrorsInDS in a service program > that accepts a pointer as a parameter and returns a Boolean. > I get to the procedure by using... > > If ErrorsInDS( PointerToDS ); > > In the service program I have the procedure interface defined as > p ErrorsInDS pi n > PointerPassedIn * > > I also have a data structure in the procedure defined as > d FeatTypeDS ds Qualified > Based(PointerPassedIn) > d dsFeat 3 dim(1000) > d dsType 2 dim(1000) > I'm trying to manipulate the data within the DS from my > service program without duplicating the contents of the data > structure and without actually passing the data. I figured > the DS in the service program would be exactly as the DS in > the calling program but it's not. The memory address leaving > the program, PointerToDS, and entering the service program, > PointerPassedIn, is exactly the same but the contents of the > DS in the service program is not the same as the DS in the > program. The program has valid data. The DS is the service > program contains all asterisks. > > Any ideas what I'm doing wrong? > > > Thanks, > S. Ellsberry Privileged and Confidential. This e-mail, and any attachments there to, is intended only for use by the addressee(s) named herein and may contain privileged or confidential information. If you have received this e-mail in error, please notify me immediately by a return e-mail and delete this e-mail. You are hereby notified that any dissemination, distribution or copying of this e-mail and/or any attachments thereto, is strictly prohibited.
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.