I personally use them both and distinguish between them (even though they
can be used alternatively).
SELECT is used if I have a condition which results in multiple different
results.
For example:
Select;
When FieldA = 1;
When FieldB = 2;
...
EndSL;
If / ElseIf is used if I have more complex or different conditions which
have to be checked one after the other:
Example:
If Field1 = 'A' and ( Field2 > 5 or Field2 < *Zeros;
ElseIf Field1 = 'B' and Field3 < 100;
...
Else;
EndIf;
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
?Train people well enough so they can leave, treat them well enough so they
don't want to.? (Richard Branson)
-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Brian
Parkins
Sent: Dienstag, 10. September 2019 17:53
To: RPG programming on IBM i <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: IF..ELSEIF vs SELECT
Oooooh - you've started something now! Before long we'll have full-on war
over DoW vs. DoU!! <grin>
There is no difference between the two constructs, John. SELECT pre-dates
ELSEIF. Which you use is purely personal taste. I suspect the ELSEIF was
added later to recognise that many programmers coming to the IBM i platform
(and RPG IV) were more familiar with IF/ELSEIF/ELSE/ENDIF. Barbara Morris
may be able to provide a little more insight.
Brian.
On 10/09/2019 11:36, john erps wrote:
Hi,
Could anybody shed some light on when to use IF..ELSEIF and SELECT.
Seems to me that the semantics of SELECT is exactly the same as
IF..ELSEIF.
SELECT just takes one line more (the SELECT).
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit:
https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link:
https://amazon.midrange.com
As an Amazon Associate we earn from qualifying purchases.