SalesforceではEinstein活動キャプチャを使用することでGoogleカレンダーとの同期が可能ですが、ServiceCloudライセンスやPlatformライセンスでは標準でこの機能を使用することが出来ません。
以前はLightning Syncという機能もありましたが現在は新規有効化できなくなっています。
またEinstein活動キャプチャでは同期条件を細かく設定することが難しいですが、今回試すPower AutomateではSalesforceレポートでフィルターをかける要領で項目と条件の組合せにて柔軟に同期条件を設定できそうです。
MicrosoftのPower Automateはアプリやサービス間で自動化されたワークフローを作成しファイルの同期、通知の受信、データの収集などを行うことができるようにするためのサービスです。
Salesforceのフローのようにプログラミング無しでパーツを配置していくだけで自動化を組むことが出来ます。今回はSalesforceの各パーツ、Googleカレンダーの各パーツ、Power Automateの変数パーツを組み合わせてSalesforce行動↔Googleカレンダーの同期を試してみます。
実際の検証結果記載は省略しますが、下記方法でそれぞれ新規作成時、更新時に他方への反映が実現できました。
Salesforce行動(新規作成)→Googleカレンダー
Power Automateの”インスタントクラウドフロー”で自動化を作成していきます。

下記のようなフローを作成していきます。
1-1.Salesforceの行動オブジェクトで新規作成時に起動
1-2.作成したSalesforce行動レコードのSalesforceIDを変数に退避
1-3.Google カレンダーのイベントを作成
1-4.作成したGoogle カレンダーのイベントIDを変数に退避
ポイントはこの後作成するSalesforce行動の更新時にGoogle カレンダー側に更新しにいく準備として、Salesforce行動にGoogleカレンダーのイベントIDを値として登録しておく点です。Salesforce行動にカスタム項目”(作業用)GカレンダーID”を作成しておきここに登録しておきます。
1-4でSalesforce行動にGoogleカレンダーのイベントIDを登録できるので、このイベントIDを元にイベントを更新しにいくことが出来ます。

Salesforce行動(更新)→Googleカレンダー
Power Automateの”インスタントクラウドフロー”で自動化を作成していきます。
2-1.Salesforceの行動オブジェクトで更新時に起動
2-2.1-4で取得したSalesforce行動に登録しておいたGoogleカレンダーのイベントIDをもとに更新しにいきます。更新されたかGoogleカレンダーの件名頭に”更新済みスケジュール_”という文字を付与してみます。

Googleカレンダー(新規作成)→Salesforce行動
Power Automateの”インスタントクラウドフロー”で自動化を作成していきます。
3-1.Googleカレンダーの新規作成時に起動
3-2.3-1で作成したGoogleカレンダーイベントIDを値に保持するSalesforce行動レコードを新規作成
ポイントはSalesforce行動に事前にカスタム項目でGoogleカレンダーイベントIDの退避用項目を準備しておくことです。1-4でも使用した”(作業用)GカレンダーID”カスタム項目を使用します。

Googleカレンダー(更新)→Salesforce行動
Power Automateの”インスタントクラウドフロー”で自動化を作成していきます。
4-1.Googleカレンダーの更新時に起動
4-2.3-2で取得したGoogleカレンダーイベントIDを外部IDとしてSalesforce行動レコードをUpsert更新

コメント