MappingでXMLを値として設定する方法
スクリプト変数で変数型をXML型に設定し、Mappingを開いたところ出力スキーマに表示されなくなった…という経験はありませんか?この記事では、その原因と解決方法について記述していきます。
1.スクリプト変数
1-1. スクリプト変数とは
スクリプト変数とは、スクリプトごとに使用できる変数です。ユーザーが自由に作成および追加できます。
スクリプト変数を用意することにより、スクリプト間やリスナーとスクリプト間でのデータの受け渡しが可能になります。
1-2. スクリプト変数の種類
・文字列型
内部データ型:String
デフォルト値:空文字
表すもの:0~2147483647文字の文字列
・整数型
内部データ型:int
デフォルト値は:0
表すもの:-2147483648~2147483647の整数
※初期値やテスト実行時の値に整数以外の値を設定した場合は、スクリプト実行時に「0」になる
※Mapper内で小数値を代入した場合、整数部のみが代入される。
・10進数型
内部データ型:BigDecimal
デフォルト値:0
表すもの:任意精度の符号付き小数
・日付/時間型
内部データ型:Date
デフォルト値:1970-01-01T09:00:00.000+0900
表すもの:日付、時間
・真偽値型
内部データ型:boolean
デフォルト値:false
表すもの:「true」または「false」の真偽値
・バイナリ型
内部データ型:byte[]
デフォルト値:null
表すもの:バイナリデータ
・XML型
デフォルト値:null
XML型のデータ、またはテーブルモデル型のデータを格納する。
【参考】
【公式】スクリプト変数 (hulft.com)
2. スクリプト変数の作成方法
2-1. 作業手順①
プロジェクトを右クリック→新規作成→スクリプト変数

2-2. 作業手順②
名前、変数型を入力し、完了を押下するとスクリプト変数が作成されます。

2-3. 作業手順③
作成したスクリプト変数は、mapping内に表示されます。

3. mappingに表示されない場合
3-1. スクリプト変数(XML型)を作成する
まずは、スクリプト変数をXML型で作成してみましょう。

先ほどと同様の手順で、スクリプト変数を作成し、ここでは「XML型」を指定します。
すると、スクリプト「バンブロ」配下に作成したスクリプト変数が表示されました。

しかし、以下のようにmappingの出力先に表示されません。

このような場合、次の手順を実施してみてください。
3-2. スクリプト変数(XML型)をmappingに表示する
XML型のスクリプト変数がmappingに表示されない場合、
スクリプト変数の設定を再度確認し、以下のように修正してみましょう。
スクリプト変数を右クリックし、プロパティを開きます。

「スクリプト出力変数として使用する」にチェックを入れる。

mapping前後のデータフロー・プロセスフローを繋ぐ

出力データとしてスクリプト変数が表示されました!!

いかがだったでしょうか?
このように、出力データにスクリプト変数が表示されなかった場合はプロパティから設定内容を確認してみると解決に近づきます。(データフローとプロセスフローを繋ぎなおすのも忘れずに!)
他にも、HulftSquareに関する様々なケースの対処法を紹介していますので、是非目を通してみてください。
<免責事項>
情報の掲載には注意を払っておりますが、掲載された情報の内容の正確性については一切保証しません。また、当サイトに掲載された情報を利用・使用(閲覧、投稿、外部での再利用など全てを含む)するなどの行為に関連して生じたあらゆる損害等につきましても、理由の如何に関わらず自己責任で行う必要があります。
テクバンでは、お客様の業務にある困りごとをETLやBIをはじめ様々なテクノロジーで解決するためのご相談をお受けしております。「HULFT Square」もあわせてご覧下さい。HULFT Squareでデータ分析基盤を講師櫛、様々な経営判断の材料を可視化していくサービスなども提供してまいります。