|
Try this:
1. Convert field to character
2. Substring out the last 2 positions
3. Convert substring value to number.
#CYRP = %DECH(%SUBST(%EDITC(WORK299 : 'X') %LEN(WORK299 - 2) : 2) : 2 : 0)
Jeff Young
Sr. Programmer Analyst
IBM -e(logo) server Certified Systems Exper - iSeries Technical Solutions V5R2
IBM Certified Specialist- e(logo) server i5Series Technical Solutions Designer V5R3
IBM Certified Specialist- e(logo)server i5Series Technical Solutions Implementer V5R3
________________________________
From: sjl <sjl_abc@xxxxxxxxxxx>
To: rpg400-l@xxxxxxxxxxxx
Sent: Tuesday, June 9, 2009 3:09:55 PM
Subject: RPGIV - Ignoring decimal precision rules
Please don't ask WHY I need to do this. I just need to know if it is
possible. I have a packed field named WORK299 that is defined as 29.9, and
another packed field named #CYRP that is defined as 2.0.
I know that I can use traditional RPG like this:
C Z-ADD WORK299 #CYRP
and I will get the 2 least significant digits of WORK299 into the field
#CYRP (it will truncate the leading digits of WORK299).
Is it possible to achieve a similar result (truncation of leading digits) in
free-form RPGIV?
When I tried:
#CYRP = %DECH(WORK299 : 2 : 0)
This statement works if the value of WORK299 is 99 or lower, but if WORK299
contains a value greater than 99, I get MCH1210 - 'Receiver value too small
to hold result'.
Thanks,
sjl
--
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.
--
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.