Links

スプレットシートからSalesforceへ日次で更新を行う

スプレッドシートとSalesforceを比較した際の更新分のデータ更新を日次で設定する方法をご紹介します。

全体図

ワークフロー概要

  1. 1.
    Google SheetsのSourceを追加(既存ファイルと追加ファイルの2つ)
  2. 2.
    Transformの差分を使用して更新分のデータのみ抽出
  3. 3.
    Transformの投影を使用して不要なカラムを削除
  4. 4.
    SalesforceのSinkを追加し、データを転送
  5. 5.
    (参考)SQLのクエリで追加するレコード数をカウントし、チェック

Source詳細

Google Sheets

以下のように設定します。(※既存ファイルイメージ)
以下のように設定します。(※追加ファイルイメージ)

プレビュー結果の確認

設定完了後、画面右上の「プレビュー」でデータを確認します。 ※プレビューを実行しておくと次のタスクの「Input」側にデータが表示されるようになります。
プレビュー実行後「設定」を選択して完了します。
Source「Google Sheets」の詳しい説明は以下ドキュメントをご確認ください。

Transform詳細

差分

Google Sheetsから連携された既存データと更新分データの差分を比較し、Salesforceへ連携する更新分データのみを抽出します。
▼IdをキーにDest側(既存ファイル)にない、Source側(更新分データ)のデータのみを抽出します。
設定完了後「設定」を選択して完了します。
Transform「差分」の詳しい説明は以下ドキュメントをご確認ください。

投影

Salesforceへの連携に不要なカラムを削除します。
▼以下の例では、「id」を削除します。
設定完了後「設定」を選択して完了します。
Transform「投影」の詳しい説明は以下ドキュメントをご確認ください。

Sink詳細

Salesforce

以下のように設定します。(※任意のテーブルを設定)
設定完了後「設定」を選択して完了します。
Sink「Salesforce」の詳しい説明は以下ドキュメントをご確認ください。

プレビュー結果の確認

Source/Transform/Sinkの各タスク設定完了後に「プレビュー」をクリックして実行後のプレビューが確認できます。設定に不備がない場合Completedと表示されます。
プレビューで実行結果を確認後、問題なければ「設定」を選択して完了します。
タスク間の矢印を繋ぐ前のタスクでプレビューを実行した後に繋ぐようにすると、前のタスクのデータをInput欄から引き継ぐことが可能です。(以下、参考イメージ※フィールド変換の場合。)

(参考)分析

SQL

以下のように設定します。
▼イメージではCOUNT(*)を使用してレコード数を集計してます。
SELECT COUNT(*) AS cnt FROM linked_table
それぞれのタスクを設定したらワークフローを保存します。

ワークフローの日次スケジュール設定

ワークフローの保存後、以下のワークフロー画面に移動し、時計マークを選択し、スケジュール設定をします。
スケジュール設定画面で以下のように設定します。
▼毎日の1:00(Asia/Tokyo:日本時間)にワークフローを実行する設定
設定項目
設定値
タイムゾーン
Asia/Tokyo
実行単位
カスタム
実行単位
日次
開始時間
01:00(*任意
それぞれの項目を入力したら、スケジュール横のスイッチをONにし、「設定」を選択します。
スケジュール実行に関して詳しくは以下のドキュメントをご確認ください。
▼Workflowを定期的に実行させる方法