DataSpiderでjsonデータを扱いたいとき、Mapperでスキーマを定義します。
#準備するもの
jsonのフォーマットファイル
[
{
"id":"1",
"first_name":"Steven",
"last_name":"Thompson",
"email":"sthompson0@spotify.com",
"gender":"Male",
"ip_address":"129.167.217.82"
}
]
#出力変数を作成
スクリプト変数を作成します。
プロジェクトエクスプローラの該当スクリプト上で右クリックし、メニュー>新規作成>スクリプト変数 を選択。
スクリプト変数のプロパティ画面が表示されるので、設定します。
DataSpiderの変数にはjson型がありませんので、XML型で対応します。
今回はjsonデータを出力値として扱いたいため、スクリプト出力変数として使用する
にチェックをします。
#スキーマ下準備
ツールパレット>ネットワーク>REST から GET実行
アイコンをキャンバスにドラッグ&ドロップします。
データ形式でJSONを指定し、JSONファイルを指定して出力スキーマを設定
を開きます。
事前に準備しておいたjsonフォーマットファイルを指定します。
プロパティ画面を完了すると、キャンバス上に指定したjsonを出力スキーマに持つGETアイコン
が生成されます。
#Mapperでスキーマを指定
マッピングアイコンを配置し、End
アイコンに対してドラッグ&ドロップしフローを引きます。
以下のような画面が表示されるので、プロセスフローとデータフローを引く
を選択します。
マッピングアイコンを開き、出力データにXML型変数が表示されていることを確認します。
変数上で右クリックをし、メニューよりスキーマを読み込む
を選択します。
読み込み画面よりコンポーネントから選択
、下準備で生成したGETアイコン名(コンポーネント名)を指定します。
これで指定したjsonスキーマがMapperで扱うことができるので、array
やobject
を指定したり、データのマッピングをしたりできるようになります。
#参考
スキーマについて、以下DataSpider ヘルプにも記載がありますので、併せて確認するといいと思います。
https://www.hulft.com/help/ja-jp/DataSpider/dss42sp3/help/ja/adapter/network/rest_execute_http_get.html#schema