× 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.



Instead of two conversions...

simply use some math:
#cyrp = %rem(work299:100);

Charles

On Tue, Jun 9, 2009 at 3:39 PM, Jeff Young<cooljeff913@xxxxxxxxx> wrote:
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 thread ...

Replies:

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.