質問
RESTコネクターの [POST実行] 処理の入力元データにJSON形式を選択してJSONデータへの変換を行うと、文字列型で値が空の場合、””(ダブルクォーテーション2つ)が設定されるのですが、ここにnullを設定することはできないでしょうか。
例)
以下のように2つ目の項目が空の場合には””が設定されますが、
"priceQuotationGrp": {
"priceQuotationId": "CIF",
"priceQuotationPlaceId": ""
}
以下のようにnullを設定したいです。
"priceQuotationGrp": {
"priceQuotationId": "CIF",
"priceQuotationPlaceId": null
}
回答
文字列データの値が空の場合にnullを設定したい場合、JSON形式にデータを変換する際に入力元データの値が存在するかどうかで処理を分岐させ、データ型をnullに指定する事で実現が可能です。
構築の一例として、CSVからJSONデータへ変換する実装手順を以下にご紹介します。
1.CSVファイルを読み取り、JSONデータにマッピングしてPOST実行するスクリプトを用意します
2.マッピングにて、空データに対してnullを設定したい文字列データに対して以下の処理を実装します
・[空文字の変換] ロジックにて、入力データが空文字だった場合はnullに変換する。
・[nullチェック] ロジックにて、データの値がnullかどうか確認する。
・[条件判定による出力の切り替え] ロジックにて、 データが存在していない場合は「null」、データが存在している場合は「string」を出力する。
・出力した値をデータ型の出力先に格納する。
補足
POST実行処理におけるJSONデータ変換に関する詳細については、以下のマニュアルも併せてご参照ください。
また、入力データが空文字ではなくがnullの場合でも、入出力スキーマのデータ型によってはMapper内でnullではなく空文字として扱われる場合があります。
詳しくは下記マニュアルをご確認ください。
コメント
0件のコメント
記事コメントは受け付けていません。