今回は、データのマッピング等に使用できるSwitchPipe文を使用してみます。
Sharperlightアプリケーションメニューからクエリビルダ
を起動します。
下図のようなフィルター設定にし、カスタムでデータセットを準備します。
"勘定科目コード::String","金額::Number",勘定科目名::String,"店名::String"
"10000", 10000, "Cash", "AUS"
"10100", 230000, "Bank Account", "AUS"
"10200", 560000, "Accounts Receivable", "AUS"
"10300", 380000, "Bills Recivable", "AUS"
"50000", 10000, "現金", "東京"
"50100", 230000, "預金", "東京"
"50200", 560000, "売掛金", "東京"
"50300", 380000, "受取手形", "東京"
プレビューするとこのようなデータセットが返ってきます。
では、早速SwitchPipe文を記してみましょう。
上記データでは、Australiaと東京で同じ勘定科目を表現するコードが異なっています。また、勘定科目名も英語と日本語の違いがあります。
SwitchPipe文を使用して、その異なる部分を吸収してみます
出力領域の右クリックから拡張表現を追加を選択します。出力オプションダイアログが開いたら、関数一覧よりSwitchPipe文を探し、ダブルクリックで上部エディタ領域にテンプレートを転送します。
これを元に編集を行います。
1行目は、どのフィールド値を判断基準(drive Value)にするかです。ここでは勘定科目コードがその対象となります。
drivevalueに指定した勘定科目コードに合致した場合
という記述を2行目で行います。
よって、"10000,10100,10200,10300" Australiaの勘定科目コードおよび名称を東京に合わせたいのでこのようになります。
3行目には、合致した場合の結果値を記述します。2行目で指定した判断基準値の順番に合わせます。なので "現金,預金,売掛金,受取手形"となります。
で最後は、2行目で指定した判断基準値以外、つまり勘定科目コードが東京のコードの場合、科目名はそのまま表示ということで、勘定科目名への参照{%勘定科目名}
となります。
SwitchPipe( {%勘定科目コード} ,
"10000,10100,10200,10300"
,"現金,預金,売掛金,受取手形"
,{%勘定科目名} )
では早速プレビューしてみます。その前にデータ型をText型にします。
結果はこのようになります。
元の勘定科目名の表示は必要ないので非表示オプションで非表示にします。また追加した拡張表現の説明を勘定科目名
とします。
再度プレビューをすると...
今回は簡単な紹介となりましたが、是非様々な場面で使用してみてくださいね。
では、失礼します。