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



Hi Dieter

We can't do in RPG what we can do in C - set a value that is, in the same statement, used for a comparison test.

If you need the variable p later on, you have to assign it separately.

If you don't need it, then you can just use this -

Dow (%scan('~' : SPdetl : PosLastDelim + 1) > 0;

I suspect you DO need the p variable - to use for substringing of the like in your loop. There might be a different way to do what you want to do - can you say what is done in the loop? The good old non-free opcode SCAN can give you an array with positions for all instances of '~', for example.

Cheers
Vern

On 9/12/2015 1:48 AM, D*B wrote:
On 8/10/2015 6:08 PM, Dan wrote:

I am attempting to combine
1) p = %scan( '~' : SPdetl : PosLastDelim + 1); and
2) Dow p > 0;
into:
Dow (p = %scan( '~' : SPdetl : PosLastDelim + 1)) > 0;

But this generates RNF7421 "Operands are not compatible with the type
of operator."

Is it because left side of the '>' translates to an indicator?

- Dan
</Dan> *************************************************

... maybe the arcitects of the rpg compiler should have had a look to other languages. Java for instance is using "==" for compares equal and "=" for an assignment, maybe the compiler is interpreting the "=" as comparison, as you are supposing.

Pushing the %scan down to another procedure with a boolean return value and modifying a global var is corrupting readability.

D*B


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.