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



Has question 1 been answered (incompatible operands)?
This is because you are telling the compiler to fill the string with all 0's
and then telling it to also fill it with the edited values (incompatible).
It can't do both with legitimate results.

HTH,

Craig

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Lim Hock-Chai
Sent: Wednesday, November 15, 2006 12:00 PM
To: RPG programming on the AS400 / iSeries
Subject: RE: evalr pad 0

What if char10 already has a value of 'aabbccddee' and I want the result
to be aabbccd123, assuming that num3 has a value of 123.

Below is what I came up with.  Anything easier than below?

   %subst(char10                           
         :%len(char10)-%len(num3)+1       
         :%len(num3)) = %editc(num3 :'X');
 
 or
  
   char10 = %subst(char10:1:%len(char10)-%len(num3)) + 
           %editc(num3 :'X');                         


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Holden Tommy
Sent: Wednesday, November 15, 2006 10:53 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: evalr pad 0

As someone else suggested (forgot who...) I would go with:
/free 
   evalr char10 = %editc(num3:'X');
   char10 = %xlate(' ':'0':char10); 


Thanks,
Tommy Holden


-----Original Message-----
From: rpg400-l-bounces+tommy.holden=hcahealthcare.com@xxxxxxxxxxxx
[mailto:rpg400-l-bounces+tommy.holden=hcahealthcare.com@xxxxxxxxxxxx] On
Behalf Of Lim Hock-Chai
Sent: Wednesday, November 15, 2006 10:11 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: evalr pad 0

Thanks.  
Strange that compiler error out when do below "evalr char10 = *all'0' +
%editc(num3 :'X');"  

Any suggestion on evalr without blank out the left?

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Wayne McAlpine
Sent: Wednesday, November 15, 2006 9:20 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: evalr pad 0

This also will give you what you want:

    /free
      char10=*all'0';
      evalr char10=char10 + %editc(num3:'X');
    /end-free



Lim Hock-Chai wrote:
Question 1: just curious as why compiler would give me this error
below?
   *RNF7421 30      5 000500  Operands are not compatible with the
type
of operator.

D num3            s              3  0 inz(123)
D char10          s             10            
 /free                                        
                                              
   evalr char10 = *all'0' + %editc(num3 :'X');
   *inlr = *on;      
                         
 /end-free                                    


 
Question 2: Without hardcode length of any field, anybody know of an 
easier way to evalr without pad blank on the left ()?
  Below is what I came up with and they are kind of ugly:
  %subst(char10                           
        :%len(char10)-%len(num3)+1       
        :%len(num3)) = %editc(num3 :'X');

or
 
  char10 = %subst(char10:1:%len(char10)-%len(num3)) + 
           %editc(num3 :'X');                         

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


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

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.