The hex string x'000000123C' is the equivalent of a nine-digit packed decimal *positive* number with a value of 000000123, with the decimal separator established by the data definition. Presumably the prior two hex digits '00' were omitted from the hex over\under data presented. The hex digit 'F' is the *preferred positive* for the i, but the hex digit 'C' is a *valid positive* for the sign nibble of a signed packed BCD [Binary Coded Decimal] value.

Regards, Chuck

tim wrote:
I have a service program that passes a record as follows. The amt
field has a value of 123 positive.

call "AAW11"(rec_info);

Record rec_info
10 data char(733);
20 refer char(9);
20 ac char(12);
20 amt decimal(11,2);
End

When amt gets passed to the iseries, it has a negative value
123- (packed) <ed: in apparent over\under hex presentation>:

00013
0002C

Can a decimal field be passed to an iseries program with the
correct sign?

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.