× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Scott,

Yes, that makes sense.  That was exactly what my understanding was, I just 
wanted to make sure I had it right.



Thanks for the reply.

Charles Wilt
iSeries Systems Administrator / Developer
Mitsubishi Electric Automotive America
ph: 513-573-4343
fax: 513-398-1121
 

> -----Original Message-----
> From: rpg400-l-bounces+cwilt=meaa.mea.com@xxxxxxxxxxxx
> [mailto:rpg400-l-bounces+cwilt=meaa.mea.com@xxxxxxxxxxxx]On Behalf Of
> Scott Klement
> Sent: Friday, February 04, 2005 12:55 PM
> To: RPG programming on the AS400 / iSeries
> Subject: Re: Byte Alignment question with Change User Space Attributes
> API (QUSCUSAT)
> 
> 
> 
> > Now for example, the Initial value key has a data field 
> that is only 1 
> > byte long.  Does this mean that you should add 3 bytes of 
> filler so that 
> > the next key is on a 4 byte boundary?
> 
> Yes, that's what it means.
> 
> 
> >     d t_InitialValueAttr...
> >     d                 ds                  qualified
> >     d  key                          10I 0 inz(2)
> >     d  dataLength                   10I 0 inz(%sizeof(data))
> >     d  data
> >     d   initialValue                 1a   overlay( data : *NEXT )
> >     d                                3a   overlay( data : *NEXT )
> 
> Hard to say how they're aligned when you only show one key!  
> The point is, 
> if you're specifying 2 or more keys, they have to be an even 
> multiple of 4 
> bytes apart.
> 
> So, if the data structure above were an array (you added the 
> DIM keyword 
> to the DS line) it would be correct.  Each 'key' element of the array 
> would be an even multiple of 4 bytes apart because the filler 
> pads your DS 
> out to make it 12 bytes long (instead of being 9 bytes)
> 
> Likewise, if you based it on a pointer, and used 
> %size(t_InitialValueAttr) 
> to increment the pointer, they'd be 12 bytes apart which is a 
> multiple of 
> 4, and that's what you want.
> 
> Make sense?
> -- 
> 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 thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.