固定区分、IF文、説明
固定区分
1:男,2:女
といった場合
IF(性別=1,'男','女')にすると
例えば、3:不明 を追加する必要が生じた時など
改造漏れの発見が遅れるので、最初から
IF(性別=1,'男',IF(性別=2,'女', STR(性別,'1'))) とか
CASE(性別 ,1,'男', 2,'女', STR(性別,'1')) にしておいた方が
ベターなんでしょうね。
-
クロスロファレンスで見落とししなければですね。
項目説明などもそうですが、条件分岐のブロック文も気を付けた方がいいでしょうね。ブロック IF 性別=1
ブロック ELSE IF 性別=2
ブロック ELSE
警告 想定外の値ですブロック END
-
nkmtさん、ISHIJIMAさん
こんにちは
僕は区分などは必ず範囲欄に 1:男,2:女,3:不明
と書きますし、依頼する時にもFLGや区分は意味合いを範囲欄に書いて貰うようにしています。
後で改造するときに、他人の作った区分は読めないし、クロスリファレンスで全使用箇所をチェックする
というのも、なかなかしんどい話なんで..........(^^;....
HAYATO@アインシュタイン設計社
-
遠藤勇人様 こんにちは。
そうですね。私も範囲に
1:男,2:女とか
0,1:男,2:女などを書いています。
3:不明 も最初から追加しておくのもいいのでしょうね。プログラムの中で、たまに二者択一項目の場合に、まずいのですが
IF 性別=1
男
ELSE
女
ENDと書いてしまう事がありそうなので、区分が増えたり、
他のシステムからのデータ取込などで、範囲外の値が入ってしまった場合
などを考慮し、自戒を込めてIF 性別=1
男
ELSE IF 性別=2
女
ELSE
不明
ENDといった事を意識しようと思いました。
2択でそれ以外の値は絶対入らないだろうと、手抜きは止めます。
殆どそんな事はしていないはずですけど。 -
増えそうにない項目は範囲に
増えるそうな項目はデータにすると思いますが区分値、範囲が増えるとプログラム見直しになりますもんね。
-
最初からこうしていた場合は
1:男,2:女,3:不明ブロック IF 性別=1
男
ブロック ELSE IF 性別=2
女
ブロック ELSE IF 性別=3
不明
ブロック ELSE
エラー 範囲外の値ですブロック END
といった記述をしていこうと思いました。
サインインしてコメントを残してください。
コメント
5件のコメント