Aesthetically, I prefer the select. Visually, it's just more appealing to me and reads more clearly.
COMMON Certified Application Developer - ILE RPG on IBM i on Power
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxxxxxxxx] On Behalf Of Craig Richards
Sent: Saturday, January 26, 2019 10:00 AM
To: RPG programming on the IBM i (AS/400 and iSeries)
Subject: Re: select vs. if-elseif
Interesting that a few folks apply SELECT or IF / ELSEIF for different
Personally I pretty much see them as identical and confess I probably use
them fairly randomly.
One technique I have used a fair bit is to utilise sub-procedures that
return booleans so that I can perform more complex checks but still return
FALSE and drop down to the next boolean test in the SELECT or IF / ELSEIF
On Sat, 26 Jan 2019 at 16:30, Joe Pluta <joepluta@xxxxxxxxxxxxxxxxx> wrote:
I have a similar approach to Birgitta. If in my mind I am thinking "this
is a condition where a small number of variables have specific states"
then I use a select. If it's a more complex set of business rules such
as "if it's a non-taxable customer, do A, else if we're in a special tax
facility do B, else if the item has special considerations do C" then I
go with an If/Elseif stack.
On 1/26/2019 5:25 AM, Birgitta Hauser wrote:
Even they are redundancy I use SELECT and IF/ELSEUF them "differently".For
If I check different entries within the same variable(s), I use SELECT.
When FLDA = 'A';
When FLDB = 'B;
When FldX = 'A' and FldY = 'B';
When FldX = 'X' and FldY <> 'B'
When FldX <> 'A' and FldX <> 'X' and FldY = 'C'
If I have to check different conditions I use IF / ELSEIF. For examples:
If FLDA = 'X' and FLDB = 'Y';
ElseIF FLDC = 1;
(Param3 and Param2 are different fields)
If %Parms >= %ParmNum(Param3) and Param3 > '';
ElseIf %Parms >= %ParmNum(Param2) and Param2 > *Zeros;
... but these are only my private rules
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
Please contact support@xxxxxxxxxxxx for any subscription related
Help support midrange.com by shopping at amazon.com with our affiliate