質問
「その他データ形式」を用いた方法が使えない以下の2つのケースにおいて、XMLデータをSalesforceへ投入するにはどのように実装すればよいですか?
1. RESTコネクタのレスポンスXMLをテキストとしてSalesforceへそのまま投入する要件と、レスポンス内の特定項目をXMLから抽出してSalesforceの別項目へ投入する要件がともに存在する場合
2. REST APIジョブで受け取ったリクエストXMLデータをSalesforceへそのまま投入する場合
回答
## ケース1:RESTコネクタのレスポンスXMLをテキスト投入と項目抽出の両方を行う場合
レスポンスをテキストとして取得する処理とXMLデータから特定の項目を抽出する処理を同時に行う場合は、以下の手順で実装してください。
1. RESTコネクタのレスポンス設定にて、データ出力先を「ファイル」に設定する
2. ファイルパスにXML形式のファイルを指定する
3. レスポンスが出力されたXMLファイルを可変長読込処理にて全行読み取りを行う処理を設定する(テキストとして取得)
4. 同じレスポンスが出力されたXMLファイルをXMLファイル読込処理で読み込む処理を設定する(特定項目を抽出)
5. それぞれの処理結果をSalesforceコネクタで任意の項目にマッピングして引き渡す
この方法により、XMLをテキストとして扱う処理と、XML構造から特定項目を抽出する処理の両方を実行することが可能です。
## ケース2:REST APIジョブで受け取ったリクエストXMLデータをSalesforceへ投入する場合
以下の手順で実装してください。
1. APIプロジェクトから呼び出すスクリプトにて、データ型にXMLを指定したスクリプト変数を作成し、「スクリプト入力変数として使用する」にチェックを付ける
2. XMLファイル書き込みコンポーネントを配置し、入力データに作成したXML型のスクリプト変数を指定する
3. APIプロジェクトのスクリプト本文の出力先設定で、作成したXML型のスクリプト変数を指定する
4. REST APIジョブを一度無効化して編集を行い、APIプロジェクトの更新を反映させた後に再度有効化する
5. 外部からのリクエストでREST APIジョブをコールし、手順2で作成したコンポーネントからリクエスト本文のXMLデータをXMLファイルとして作成する
6. XMLファイル読み込みコンポーネントを配置し、作成したXMLファイルを読み込む
7. Salesforceコネクタを配置し、読み込んだXMLファイルを任意の形式でマッピングして引き渡す
参考FAQ:REST APIジョブが外部クライアントから受け取ったリクエスト本文を確認する方法はありますか
コメント
0件のコメント
記事コメントは受け付けていません。