前回はSalesforceGetコンポーネントの使い方について紹介しました。
今回はSalesforcePutコンポーネントについて紹介します。
今回は前回と同じく、Salesforceの「取引先」に登録されているデータをSalesforcePutコンポーネントを利用して書き込み処理(データの登録、更新、削除処理)をやってみたいと思います。
前回に、CDataのコンポーネントは一般的なRDB系のコンポーネントと同じ方法で利用できることと、CData固有の制限事項があるため利用するには注意が必要と紹介しました。
例えば、今回の紹介で使うAccountテーブルの場合は、書き込み処理ができない項目があります。
下記のCData社のマニュアルで「ReadOnly」が「True」となっているのが書き込み処理ができない項目となりますので、参考にしてください。
- CData JDBC Driver for Salesforceのオンラインヘルプ > データモデル > テーブル > Account
http://cdn.cdata.com/help/GFB/jdbc/pg_table-account.htm
■登録処理
先ずは、登録処理としてCSVファイルから取得したデータを「取引先」エンティティに登録してみましょう。
- CSVファイルの内容
- フローの構成とテーブルの選択画面の設定内容
- SalesforcePutコンポーネントのコネクション名プロパティに作成しておいたSalesforceコネクション名を指定します。
- SalesforcePutコンポーネントをダブルクリック又は、右クリックして表示されるメニューから「テーブルの選択」をクリックし、テーブルとフィールドの設定を起動します。
- テーブル一覧からテーブルを指定するとテーブルのフィールド一覧が表示されるので、書き込むフィールドを指定します。
ここではAccountテーブルと一部のフィールドを指定します。 - フィールドを選択してOKボタンをクリックすると指定したテーブル名とインスペクタの入力タブにフィールド一覧が表示されます。
- 実行する処理プロパティに適切な処理を指定します。
ここではInsert処理を指定しておきます。
SalesforcePutコンポーネントの設定もRDBPutコンポーネントの設定と同じであることがわかりますね。
それでは、作成したフローを実行して結果を確認してみましょう。
ご覧の通り、2件のデータが新たに追加されていることが確認できました。
■更新処理
次に、新たに登録したデータに対して更新処理をやってみたいと思います。
- フローの構成
ご覧の通り、SalesforceのAccountテーブルから特定データを取得し、そのデータの特定項目のデータの更新処理を行う構成となります。
各コンポーネントの設定詳細についても確認してみましょう。
- SalesforceGetコンポーネントのSQLビルダー
Accountテーブルから会社名が「ASTERIA株式会社」であるデータを取得するように設定しています。
ここではキーである「Id」項目も取得項目として指定しています。
- SalesforcePutコンポーネントのテーブルの選択
今回は電話番号を更新しようと思いますので、キーである「Id」項目と更新対象となる「Phone」項目のみ、選択しています。
- SalesforcePutコンポーネントのインスペクタの設定
基本タブでは実行する処理を「Update」に設定し、入力タブではテーブルの選択画面で指定した項目が表示されることが確認できます。
- マッパー
マッパーではSalesforceGetコンポーネントで取得した「Id」をそのままSalesforcePutコンポーネントの「Id」項目にマッピングしていて、「Phone」項目には更新する電話番号「03-1111-1111」でマッピングしています。
つまり、会社名が「ASTERIA株式会社」である取引先の電話番号は「03-1111-1111」に更新されるはずです。
それでは、作成したフローを実行し、結果を確認してみましょう。
Salesforceの取引先の画面から「ASTERIA株式会社」の電話番号が「03-1111-1111」に更新されていることが確認できますね。
■削除処理
最後に、上記のデータについて削除処理をやってみたいと思います。
フローの構成は更新処理と同じでSalesforcePutコンポーネントの「実行する処理」プロパティを下記のように「Delete」に設定を変更して実行してみます。
下記の通り、Salesforceの取引先画面から「ASTERIA株式会社」の取引先データが削除されていることが確認できます。
今回の紹介はここまでです。
次回はSalesforceSQLCallコンポーネントの利用について紹介したいと思います。