|
I was coding a Data Structure, and the Overlay's *next option did not work as I expected it to. I have to assume it's working as designed, but I wanted to mention what I encountered and see what others thought.
Essentially, I had (wrongly) thought that once you specify an Overlay with a position number, that any *next that follows will be based on that position. Why? Because that's how it works when the first Overlay specifies a position.
The code that doesn't work:
D ds_example DS Qualified
D Geo 12a
D State 2s 0 Overlay( Geo: 1 )
D County 3s 0 Overlay( Geo: *next ) //starts in position 3 of Geo
D City 4s 0 Overlay( Geo: *next )
D Filler1 3s 0 Overlay( Geo: *next )
D Npa 3s 0 Overlay( Geo: 1 )
D Nxx 3s 0 Overlay( Geo: *next ) //expected to start in position 3, however ---> Error, Geo not large enough.
D Filler2 6a Overlay( Geo: *next )
The code that does work:
D ds_example DS Qualified Static
D Geo 12a
D State 2s 0 Overlay( Geo: 1 )
D County 3s 0 Overlay( Geo: *next )
D City 4s 0 Overlay( Geo: *next )
D Filler1 3s 0 Overlay( Geo: *next )
D Npa 3s 0 Overlay( Geo: 1 )
D Nxx 3s 0 Overlay( Geo: 4 )
D Filler2 6a Overlay( Geo: 7 )
This is only the beginning of the data structure. There is actually more overlaying going on afterward as well.
Thanks,
Kurt Anderson
Sr. Programmer/Analyst
CustomCall Data Systems
--
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.
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.