条件付きレイヤー
レイヤーに条件を付けることで、ある特定の条件のときだけマッピングを実行するように設定できます。条件を設定したレイヤーを、「条件付きレイヤー」といいます。レイヤーの追加時に条件式を指定すると、そのレイヤーを条件付きレイヤーとして使用できます。
条件付きレイヤーを作成する
1.新しいレイヤーを追加する
HINT
新しいレイヤーを追加するには、マッピングウィンドウで右クリックしメニューから「レイヤーの追加」を選択するか、またはマッピングウィンドウの下に表示されているレイヤータブの隣の「+」ボタンをクリックします。
条件付きレイヤーとは
条件を定義したレイヤーを「条件付きレイヤー」といいます。これに対し、条件を設定していない通常のレイヤーを「条件なしレイヤー」と呼ぶこともあります。
2.「レイヤーの追加」ダイアログの「条件式」ボックスに「$」と(半角で)入力する
3.補完機能により、参照可能な変数が一覧表示されるので、データを参照するための変数「record」をダブルクリックして選択する
4.フィールド名が一覧表示されるので、対象のフィールドをダブルクリックして選択する
5.条件式を完成させ、「OK」をクリックする
HINT
「レイヤーの追加」ダイアログで、「条件式の評価を行ごとに行う」のチェックマークは付いたままにしておきます。チェックマークを外した場合は、先頭行のみ評価されます。
条件式について
条件付きレイヤーでは、条件式を使って入力ストリームや各種変数を判定します。ストリームを判定する条件式の記述方法としては、「RQL」と「XPath」の 2 種類があります。RQL は本製品独自の記述方法です。RQL でレコード形式を評価するためのプレフィックスとして、「record」を式の前に記述します。条件式の結果は、trueまたは false のどちらかになります。
6.新しい空白の条件付きレイヤーが表示されるので、条件に一致した場合のマッピングを設定する
条件付きレイヤーでは、マッピングウィンドウ下部のレイヤー名タブの色が変わります。 <br />
この例では、「数量= 0」のレコードに対し、「金額」フィールドの出力が「注文なし」となるよう条件を設定しています。
HINT
レイヤーの処理順序
条件なしレイヤーと条件付きレイヤーが混在する場合、必ず先に条件なしレイヤーのマッピングが実行され、次に条件付きレイヤーのマッピングがレイヤータブの左から順に実行されます。条件付きレイヤーのマッピングは、条件が True のときだけ実行され、条件が True でないときはマッピングは実行されません。