スイッチ判定による出力の切り替え

ロジック名

スイッチ判定による出力の切り替え

機能

スイッチで出力を切り替えます。

データ型

場所
1番目の入力ハンドラ 条件
2番目の入力ハンドラ 文字列
3番目の入力ハンドラ 文字列
ロジックの出力 文字列
lightbulb詳細は「ロジックの仕様」を参照してください。

プロパティ

カテゴリ プロパティ 説明
必須 条件数 条件数を1以上で指定します。
コメント コメント 仕様書にも設定したコメントが出力されます。変換処理には関係しません。

設定方法

条件数

条件数には、1以上の数値を入力します。switchの条件数に相当します。
条件数に適当な数値(nとします)を指定すると、(2*n)+1本の入力ハンドラが出現します。
条件数 1 2 3 4 5 n
入力ハンドラの本数 3 5 7 9 11 (2*n)+1

(2*n)-1番目の入力ハンドラには真偽値を、その下にはその真偽値がtrueであった場合に出力する文字列をマッピングします。
上から順に真偽値を判定していき、trueとなったところで文字列を返します。
番号 説明
1番目 真偽値 この値がtrueの場合、この文字列を出力します。falseの場合、3番目の判定をします。
2番目 文字列
3番目 真偽値 この値がtrueの場合、この文字列を出力します。falseの場合、5番目の判定をします。
4番目 文字列
5番目 真偽値 この値がtrueの場合、この文字列を出力します。falseの場合、7番目の判定をします。
6番目 文字列
・・・ 真偽値 ・・・
・・・ 文字列
最後番目 文字列 最後まで全てfalseだった場合、この文字列をデフォルト値として出力します。

ロジックの使用例1

入力された値が「12345」の場合は「0」を出力、それ以外の場合は「99」を出力する処理の例です。

ロジックの使用例2

年齢が20未満を「未成年」に、20以上30未満を「20代」に、30以上を「30代以上」にそれぞれ変換する処理の例です。
条件数は2に設定します。


ロジックの説明
  ロジック名 説明
(1) 数値定数 値は「20」とします。
(2) 未満 この場合、入力データが20未満のときtrueを返します。
(3) 単一行文字列定数 値は「未成年」とします。
(4) 数値定数 値は「30」とします。
(5) 未満 この場合、入力データが30未満のときtrueを返します。
(6) 単一行文字列定数 値は「20代」とします。
(7) 単一行文字列定数 値は「30代以上」とします。
(8) スイッチ判定による出力の切り替え スイッチで出力を切り替えます。

この設定の動作としては、入力データが20未満だった場合、(2)がtrueを返し、(3)の「未成年」が出力されます。
入力データが20未満の際にfalseとなり、すなわち20以上が次の判定に向かいます。
入力データが30未満の場合、(5)がtrueを返し、(6)の「20代」が出力されます。
入力データが30未満がfalseとなり、すなわち30以上の場合には、最後のデフォルト値である「30代以上」が出力されます。

このマッピングを用いてCSVファイル読み取り処理 - Mapper - CSVファイル書き込み処理の変換を行った場合の結果データ例は以下の通りです。
入力データ 出力データ
名前,年齢
鈴木,18
山田,25
田中,32
名前,年代
鈴木,未成年
山田,20代
田中,30代以上