DataSpider Servista 条件分岐編

コラム / 読み物
クラウド型データ連携プラットフォームであるDataSpider Servistaは、ノンプログラミング、ノーコードでシステム間のデータやアプリケーションをつなぐことができるツールです。
データの加工もドラッグ&ドロップで簡単に行うことができます。
本記事では、3種類の条件分岐の実装方法を紹介します。
1.はじめに
DataSpider Servistaの機能を使って条件分岐を実装する場合、複数の方法があります。
本記事では、以下3種類の条件分岐機能を紹介します。
- マッピング上で使用できる条件分岐機能
- 条件判定による出力の切り替え(IF)
- スイッチ判定による出力の切り替え(SWITCH)
- スクリプト上で使用できる条件分岐機能(if)
実装方法によって条件数や実装できる条件が異なるため、DataSpider Servistaでの条件分岐実装に迷われた場合に参考にしてみてください。
説明中の例として、「エネルギーコード」という項目を含むテーブルを使用しています。
※「エネルギーコード」のデータ例:101、102、103
2.マッピング上での条件分岐
この章では、マッピング上で条件分岐を行う2種類の方法を説明します。
条件判定による出力の切り替え(IF)

条件判定による出力の切り替えを行います。
判定内容について、成立/不成立で出力を切り替えます。
例)
判定内容 :エネルギーコードが101かどうか
成立時 :使用量の値を出力
不成立時 :使用量*係数の値を出力

[判定対象]では、任意の入力ハンドラに設定された入力データを選択します。
[判定内容]、成立時の[出力内容]および不成立時の[出力内容]は、各プロパティに設定された値、または任意の入力ハンドラに設定された入力データを選択します。



※出力内容欄にある番号は、ハンドラの番目です。
スイッチ判定による出力の切り替え(SWITCH)

SWITCHとは、特定の式の値に基づいて複数のケースを評価し、その真偽に応じて出力を切り替える機能です。
条件分岐において、IFロジックでは不十分な場合に有用なロジックで、条件数を1から100まで指定することができます。
奇数番目の入力ハンドラには真偽値をマッピングし、その下の入力ハンドラには奇数番目の入力ハンドラで受け取った値がtrueである場合に出力したい文字列をマッピングします。
最終番目の入力ハンドラには、真偽値が全てfalseだった場合に出力したい文字列をマッピングしてください。

例)
エネルギーコードが101のとき:使用量*係数の値を出力する
エネルギーコードが102のとき:使用量*係数の値を出力する
エネルギーコードが103のとき:使用量の値を出力する
エネルギーコードが104のとき:定数値「100」を出力する
エネルギーコードが105のとき:定数値「0」を出力する
条件に当てはまらない場合 :NULLを出力する

3.スクリプト上での条件分岐(if)
2章ではマッピング使用時の条件分岐を説明しましたが、スクリプト上にも条件分岐機能があります。
スクリプト上の条件分岐では[条件の種類]が「変数と変数の比較」または「変数と固定値の比較」のいずれかであり、追加可能な[条件]アイコンの最大数は98個です。

[条件]の右クリックメニューから[判定順序を上げる]または[判定順序を下げる]を選択すると、複数の条件の判定順序を変更することができます。
[条件]上の丸数字が判定順序です。

各条件をダブルクリックすると、条件のプロパティ画面が表示されます。
ここでは条件の設定を行います。
[条件一覧]の右側の[追加]を押下することで条件を追加できます。
複数条件がある場合、[条件式]の青字になっている[かつ]を押下することで[かつ]または[または]を選択できます。
条件の優先順位は[条件一覧]の上から順に評価し、括弧外と括弧内では括弧内を優先して評価します。また、「かつ」と「または」では「かつ」を優先して評価します。
[条件一覧]右側の[上へ][下へ]を操作することで、選択している条件の順序を一つずつ上下に動かすことができます。

例)
エネルギーコードが101のデータが1つ以上ある場合

エネルギーコードが101のデータが0の場合

4.おわりに
2章で説明した、マッピング上での条件分岐機能、「IF」と「SWITCH」の大きな違いは、以下の通りです。
- 「IF」ではハンドラが4本であり、成立/不成立でしか出力を切り替えられない
- 「SWITCH」では条件数を指定できるため、3つ以上の場合分けの実装が可能になる
条件が複数ある場合には、SWITCH機能を使ってみてください。
以上、DataSpider Servistaにおける条件分岐方法を3つ紹介しました。
条件分岐の実装方法に迷われた場合には、ぜひ参考にしていただけると幸いです。
DataSpider Servistaの使用をご検討の際には、システムエグゼまでお気軽にご相談ください。
※ DataSpider Servistaは、株式会社セゾン情報システムズの商標または登録商標です。