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



"RPG400-L" <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> wrote on 03/02/2020
03:36:55 PM:
So, I changed it to the following and now I an getting too many
zeroes on the right of the returned result.

return %char(%dec(packed_data / d_shift));

I know how many decimal places I want but the %DEC function will not
accept a variable name for that operand. How can I easily strip off
the excess right zeroes?


I came up with the following -- and it works -- but it seems there
should be an easier way.


t_string = %char(%dec(packed_data / d_shift));
t_len = %scan('.':t_string);
if t_len > *zero;
if use_scale > *zero;
t_string = %subst(t_string:1:t_len+use_scale);
else;
t_string = %subst(t_string:1:t_len-1);
endif;
endif;
return t_string;


Sincerely,

Dave Clark

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.