|
Scott: Have you checked the definition for the INDX field, if it is 1 byte the tenth record's index will be *Zero. Scott Cornell wrote: > > I have kind of an odd problem - an RPG III program > uses a multiple occurance data structure defined > for 25 occurances like so: > > IMDEARN DS 25 > I 1 4 NONTAX > > The structure is filled with some number of values > from a database file, then later traversed in a DO > loop. The loop exit criteria is that a field from > the DS = *blanks, e.g. no value loaded from the > file, e.g. "End Of File" (yeah it's bad technique - I > didn't write it, it's legacy code!), like so: > > C Z-ADD 1 INDX > C INDX OCUR MDEARN > C NONTAX DOWNE*BLANKS > <process DS entry> > C ADD 1 INDX > C INDX OCUR MDEARN > C END > > Problem - program blows up on an "index out of > range error" for one of our client's whose > database has 10 values to be loaded into MDEARN, > e.g. the error occurs when INDX in the above > snippet reaches 11. I'm confused... since MDEARN > is defined w/25 occurances, 11 shouldn't cause an > index error, right? Compile listing shows > MDEARN(25) and yet, sure enough, in the program > dump after the error, MDEARN says dimension(10) > and only shows 10 spaces allocated to the > structure. What's up with this... did RPG III > suddenly start allocating memory for data > structures dynamically? > >-- Richard Rosenbluth Rose Information Management Co. rose400@pacbell.net ------------------------------- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * This is the Midrange System Mailing List! To submit a new message, * * send your mail to "MIDRANGE-L@midrange.com". To unsubscribe from * * this list send email to MAJORDOMO@midrange.com and specify * * 'unsubscribe MIDRANGE-L' in the body of your message. Questions * * should be directed to the list owner / operator: david@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.