【テックブログ】DataSpiderでSalesforceからレコード取得/挿入してみた!
Photo by Arnold Francisca on Unsplash
こんにちは、ADX技術開発Labです!
今回はDataSpiderでSalesforceからレコード取得/挿入を試してみました。
DataSpiderとは?
DataSpiderは、クラウドやデータベース、アプリケーション、ファイルなどの様々なシステムとのデータ連携や
データの加工をアイコンベースで簡単に作成することができるツールです。
詳細については、公式ページ(https://www.hulft.com/software/dataspider)をご参照ください。
今回は、上記ツールでREST APIを呼びだし、Salesforceからレコード取得/挿入を行ってみたのでご紹介いたします。
DataSpiderによる開発とは
- 連携先システムごとの専門的な知識や技術が不要なノンプログラミング開発
- スクリプト作成画面上でドラッグ&ドロップによりアイコンを並べて処理の流れを構築
- 取得/挿入項目の指定や変数への代入をすべて設定ベースで構築
まずは、Salesforceに接続をするための事前準備を行います。
事前準備
Salesforce側で接続アプリケーションを設定
今回は、接続アプリケーションの[コンシューマー鍵]と[コンシューマーの秘密]のみでアクセストークンを発行できる
「クライアントログイン情報フロー」を利用して、Salesforceに接続します。
外部からSalesforceへ接続するために接続アプリケーションを作成します。
[クライアントログイン情報フロー]に実行ユーザを設定します。
[コンシューマー鍵]と[コンシューマーの秘密]をメモしておきます。
DataSpiderでスクリプトを作成する際に必要になります。
Salesforceに接続するための準備ができました。
次に、DataSpiderでスクリプトを作成します。
DataSpiderでスクリプトを作成
まず最初に、アクセストークンを取得する処理を作成します。
アクセストークンの取得
以下は、DataSpiderのスクリプト作成画面です。
①スクリプトに「スクリプト変数」を作成し、前述の[コンシューマー鍵]と[コンシューマーの秘密]の値を設定します。
②右側のツールパレットから必要なアイコンをドラッグ&ドロップで追加し、
アクセストークンの取得処理を作成します。
次に、REST APIを利用したレコード取得/挿入の処理をそれぞれ作成します。
今回は、「商談」オブジェクトを対象にレコードの取得/挿入を行いました。
レコードの取得
「商談」オブジェクトにあるレコードの「商談名」を取得してみます。
①対象レコードを取得するためのSOQL文を格納する「スクリプト変数」を追加します。
②「GET実行」を利用してレコードの取得処理を作成します。
クエリパラメータに前述の「スクリプト変数」を設定します。
③プロジェクトを保存後、実行してみると、
以下のように、レコードの「商談名」を取得できています。
レコードの挿入
以下のようなinsert用csvファイルを利用して、「商談」オブジェクトに2つのレコードを挿入してみます。
①レコードの取得処理と同様に、
アクセストークンの取得処理の次にinsert用csvファイルの読み取り処理を作成します。
②「POST実行」を利用して、Salesforceに複数のレコードを挿入する処理を作成します。
また、csvファイル内の各項目について、リクエストを発行する際の各パラメタにマッピングします。
③プロジェクトを保存後、実行してみると、
以下のように、2件のレコード挿入について成功が返ってきています。
Salesforce側でも、2件のレコードを挿入できていることを確認できます。
実際にやってみて
ほとんどの設定がアイコンのドラッグ&ドロップだったので、簡単にSalesforceからレコードの取得/挿入を行うことができました。DataSpiderでは、SalesforceやOracleなどの接続先に応じた接続アダプタを提供しているので、次回はそちらを使ってみたいと思います。