Salesforceリアルタイム同期ジョブ
重要 - 画像/情報は四半期ごとのリリースで更新されます!
四半期ごとのリリースにて、最新の機能・情報を反映し、画像を含めた情報は更新されます。
この記事では、システム管理者がSalesforceコネクタを使用してリアルタイムデータジョブを作成する方法を詳しく説明します。接続、OOB ジョブ、ジョブチェーンなどの作成方法の詳細については、Salesforceコネクタ の記事を参照してください。
概要
Salesforceはクラウドベースの顧客関係管理(CRM)ソリューションであり、組織が営業およびマーケティング業務を効果的に合理化するのに役立ちます。
重要: Salesforce コネクタのリアルタイム同期を有効にするには、サポートリクエストを提出してください。 需要が高い場合は、Gainsightインスタンスのスケジュールを適切に調整して、綿密に監視してフィードバックを収集できるようにします。この機能が有効になると、製品チームから連絡があります。
GainsightはSalesforceと統合されているため、SalesforceからGainsightにデータを引き出すことができます。取引先、取引先責任者、ケースオブジェクトを含むOOBジョブを編集してリアルタイム同期を有効にしたり、リアルタイム同期を有効にしてカスタムジョブを作成したりできます。ただし、リアルタイム同期を有効にしたジョブは、オブジェクトごとに 1 つしか作成できません。この機能のビデオデモについては、ここをクリックしてください。
ビジネスユースケース: リアルタイム同期機能により、Salesforceでレコードが更新されると、その更新がリアルタイムでGainsightに届きます。たとえば、連絡先のオプトアウト属性が Salesforce で更新された場合、この変更は Gainsight Person レコードにリアルタイムで反映され、同期の遅延によって誤ってメールが送信されるのを防ぐことができます。
重要: Salesforce Connector ジョブにリアルタイム同期フィールドとスケジュールフィールドの両方がある場合、この機能の一部としてリアルタイム同期フィールドのみがリアルタイムで更新されます。スケジュールフィールドは、定義されたジョブスケジュールに従って更新されます。
メモ: 作成イベントでは、リアルタイム更新とマークされたフィールドのみを含むレコードがリアルタイムで作成されます。他のフィールドは、スケジュールされた同期の一部として更新されます。
リアルタイム機能は、宛先オブジェクトが会社、会社担当者、またはケースの場合にのみ使用できます。
リアルタイム同期の制限事項
Salesforce と Gainsight からのリアルタイム同期に関する考慮事項と制限事項は次のとおりです。
Salesforceに関する考慮事項
- Salesforce には、外部アプリケーションに配信できるイベントの数に制限があり、その制限は Salesforce サブスクリプションによって定義されます。アクティビティの制限に達すると、制限がリセットされるまで GainsightはSalesforceから更新を受信しません。ただし、保留中の更新は、制限がリセットされた翌日に同期されます。
メモ:
- Salesforce のイベント制限は、Salesforce イベントを受信する他のアプリケーションと共有されます。
- Gainsightは、Salesforceのイベント制限を超えるリスクがあるため、一括更新される項目のリアルタイム同期を有効にしないようアドバイスしています。
Salesforce のイベント制限に達すると、次のエラーメッセージが表示されます。
- 数式項目とリッチテキスト領域項目は、Salesforce がこれらの項目のイベントを生成しないため、リアルタイム同期をサポートしていません。
- Salesforce API は次のイベントでのみアクセスされます。
- 通貨 ISO コードの変更
- テキストフィールドの更新
- ペイロードサイズが最大 1 MB のメッセージサイズを超えています
- Gainsightでフィールドを同期できるようにするには、Salesforce接続を許可するユーザーがSalesforce組織のシステム管理者であるか、Salesforceユーザーに次の権限が必要です。
- オブジェクトの [すべて表示]
- すべてのユーザーを表示
- すべてのデータを表示
- [アプリケーションをカスタマイズ]
- メタデータ API 関数によるメタデータの変更
- すべてのデータを変更
- セットアップと構成を表示
- ロールとロール階層の表示
- 開発者名を表示
ユーザに適切な Salesforce 権限がない場合は、次のエラーメッセージが表示されます。
「Salesforce のオブジェクトタイプ「プラットフォームイベントチャネル」はサポートされていません。」
- Salesforce は一部のアクションのイベントを生成しません。たとえば、個人取引先組織の連絡先にカスタム選択リスト項目が定義されている場合、その項目は取引先に __pc という接尾辞を付けて表示されます。カスタム選択リストの値を置換または名前変更しても、アカウント変更イベントは生成されません。影響を受けるレコードの連絡先変更イベントのみが生成されます。ただし、カスタム選択リスト項目が取引先で定義されている場合、その項目は取引先責任者には表示されず、予想どおり取引先変更イベントのみが生成されます。詳細については、Salesforce CDC サポートドキュメントを参照してください。
Gainsightの限界
- リアルタイム同期ジョブではフィルターは適用されません。
- Gainsightは、リアルタイム同期のためにSalesforceのイベントの作成と更新のみを監視します。
- Cases Object Real-Time ジョブの場合、レコードが一括更新されると、LastModifieldDate が追加のイベントとして発生します。これにより、ログにはイベントまたはレコードの合計数が二重カウントで表示されます。
- [アクティビティ] タブに表示できるレコードは最大200件に制限されているため、リアルタイムのアクティビティは過去 3 日間のみ保存されます。
- リアルタイムジョブをジョブチェーンに追加できます。ただし、ジョブチェーンの実行の結果として同期されるのはスケジュールされたフィールドだけです。
ジョブのリアルタイム同期を有効にする
Salesforce 接続が確立されると、会社、ケース、個人、および会社個人の OOB ジョブを編集して、任意の OOB ジョブのリアルタイム同期を有効にできます。また、カスタムリアルタイムジョブを作成して、「ジョブ」タブで Salesforce から Gainsight にデータを同期することもできます。リアルタイムで同期できるオブジェクトの場合、リアルタイム対応のラベルが表示されます。オブジェクトを含む既存のリアルタイムジョブがある場合、オブジェクトのラベルは非表示になります。リアルタイム同期が有効になっているオブジェクトには 1 つのジョブしか割り当てられません。
任意のジョブのリアルタイム同期を有効にするには:
- グローバルナビゲーションペインの検索フィールドに「Connectors 2.0」と入力します。
- [管理] で [コネクタ 2.0] を選択します。
- 「ジョブ」タブをクリックします。
- [ジョブを作成] をクリックします。「ジョブの作成」ウィンドウが表示されます。
- 「ジョブの名前」フィールドに、ジョブの固有の名前を入力します。
- [次へ] をクリックします。準備手順が表示されます。
- 「データソース」ドロップダウンメニューで、Salesforce 接続を選択します。サポートされている Salesforce オブジェクトがすべて表示されます。リアルタイムで同期できるオブジェクトには、「Live Enabled」というラベルが付けられます。
- 左側のペインから準備画面に任意のオブジェクトをドラッグアンドドロップします。オブジェクトの詳細ページが表示されます。
- Gainsightで値を同期する必要がある必須フィールドを選択します。
- (オプション)「表示名」フィールドでは、フィールド名を変更できます。
- Salesforce の更新を Gainsight にリアルタイムで同期させたい場合は、「リアルタイムで同期」チェックボックスを選択します。
- (オプション)「フィルター」タブに移動し、必要に応じてフィルターを追加します。フィルターの追加について詳しくは、ジョブリストページの記事の「フィルター」セクションを参照してください。
- 「保存」をクリックします。詳細については、次の「宛先に追加」セクションを参照してください。
リアルタイム同期ジョブのフィルター
リアルタイムジョブは、SalesforceからフィルタリングされたデータがリアルタイムでGainsightと同期できるようにするフィルターをサポートしています。
現在、このサポートはアカウント、連絡先、ケースオブジェクト、またはリアルタイム同期に拡張されています。
リアルタイムフィルターを追加するには:
- リアルタイム有効ジョブ > オブジェクト詳細ページ > フィルターに移動します。
- フィルターを追加をクリックします。
- フィールドから、フィルタリングしたいフィールドを選択します。
- 演算子ドロップダウンから演算子を選択します。
- 値フィールドから、適切な値を選択します。
- リアルタイム有効チェックボックスを選択し、リアルタイムフィルターを適用します。
注意:
- さらにクエリを追加するには、+ アイコンをクリックします。
- クエリを削除するには、xアイコンをクリックします。
- 選択された演算子のタイプをベースに、式は自動的に高度なロジック・リアルタイム同期フィールでに更新されます。
- Salesforceリアルタイムジョブには、最大10件までフィルター条件を追加できます。
- 終了をクリックします。リアルタイムフィルターがジョブに適用されます。
宛先に追加
出力データセットに宛先を追加して、ソースからのデータをターゲットの Gainsight オブジェクトに同期できます。
目的地を追加するには:
オブジェクトの3つのドットのメニューをクリックし、「宛先を追加」を選択します。[宛先に追加] ページには、次の 3 つのタブが表示されます。
リアルタイムフィールド
このタブは、ソースオブジェクトの任意のフィールドで「Sync in Real Time」を選択した場合にのみ表示されます。ソースリアルタイムフィールドをダイレクトマッピングセクションのターゲットフィールドにマッピングする必要があります。別のフィールドへの参照があるソースオブジェクト内のフィールドを選択した場合は、そのフィールドを「派生マッピング」セクションにマップする必要があります。
メモ: 識別子フィールドは、プリセットフィールドの一部としてのみ設定できます。ただし、それらは「必須」フィールドと一緒にリアルタイムで同期されます。
リアルタイムフィールドをマップするには:
- Gainsightオブジェクトフィールドで、Gainsightのターゲットオブジェクトを選択します。
- 「ダイレクトマッピング」セクションでは、
- ターゲットフィールドで、ソースフィールドと同等のターゲットフィールドを選択します。
- (オプション) Gainsightの別のフィールドへの参照がある場合は、「派生マッピング」をクリックしてフィールドを展開してマッピングします。検索の設定方法の詳細については、この記事の「スケジュールフィールド」セクションの手順 5 ~ 15 を参照してください。
- 「リスニング・トゥ・イベント」をクリックして展開します。このセクションでは、Salesforceからキャプチャする変更イベントと、Gainsightで実行するその後のアクションを選択できます。
たとえば、更新内容を Salesforce の連絡先に同期して、対応する Gainsight Person レコードを作成または更新したい場合などです。デフォルトでは、Gainsightのレコードを作成および更新するために、Salesforceからの作成イベントと更新イベントの両方が一覧表示されます。デフォルトはユースケースに合わせて変更できます。 - デフォルト設定を変更するには、「詳細設定」をクリックします。
- 「GainsightのSalesforceで「作成された」すべてのレコードについて、次のいずれかを選択します。
- 作成: Gainsightでは新しいレコードが作成されますが、既存のレコードは更新されません。
- 作成と更新: 新しいレコードを作成する Gainsightには一致するレコードがありません。一致しない場合は既存のレコードが更新されます。
- 何もしない: Gainsightはこのイベントを無視します。
メモ: 上記のフィールドでは、「作成と更新」がデフォルトで選択されています。
- 「Gainsight の Salesforce のすべてのレコードを「更新済み」 フィールドで、次のいずれかを選択します。
- 更新: Gainsightの一致するレコードを更新します。一致するレコードが見つからない場合は、レコードを作成しません。
- 作成と更新: 新しいレコードを作成する Gainsightには一致するレコードがありません。一致しない場合は既存のレコードが更新されます。
- 何もしない: Gainsightはこのイベントを無視します。
メモ: 上記のフィールドでは、デフォルトで更新が選択されています。
- 「保存」をクリックします。
スケジュールフィールド
このセクションは、フィールドのダイレクトマッピングと派生マッピングの両方で構成されています。ダイレクトマッピングセクションでは、ソースフィールドをGainsightのターゲットフィールドにマッピングし、識別子を含める必要があります。「派生マッピング」セクションで、GSID データ型の他のフィールドを検索してそのフィールドに値を入力するターゲットフィールドを選択します。詳細については、ジョブリストページの記事の「スケジュールフィールド」セクションを参照してください。
サマリー
「概要」タブでは、リアルタイムダイレクトマッピング、スケジュールされたダイレクト、および派生マッピングの簡単な概要を表示できます。
OOB でカスタムジョブチェーンを作成することも、必要に応じてカスタムジョブとスケジュールを作成することもできます。詳細については、「ジョブチェーンページ」と「ジョブまたはジョブチェーンスケジュールの設定」の記事を参照してください。
リアルタイムアクティビティ
リアルタイムアクティビティは、Salesforce Connector 内のリアルタイム対応ジョブが実行されたときに作成されます。「アクティビティ」タブで「ライブアクティビティ」を選択すると、次のジョブの詳細が表示されます。
- 日付: リアルタイムジョブの開始日時が表示されます。
- ジョブ名: リアルタイムジョブの名前が表示されます。
- イベント: イベントのタイプが表示されます。
- 目的地: Gainsightでデータが更新されたターゲットオブジェクトの名前が表示されます。
- データソース: Salesforce のソースオブジェクトの名前が表示されます。
- ステータス: リアルタイムジョブのステータスを表示します。
- コメント: 成功、失敗、無視されたレコードの数が表示されます。
管理者は、各リアルタイムアクティビティの縦に並んだ3つのドットメニューをクリックして、次の操作を実行できます。
- ジョブアクティビティを表示: このオプションは、リアルタイムジョブの実行中に更新されたすべてのフィールドを確認するのに役立ちます。ジョブアクティビティページの [ログを表示] をクリックすると、ジョブ実行の一部として更新されたすべてのフィールドが表示されます。
- ジョブの編集: このオプションは、リアルタイムジョブの更新に役立ちます。
- ダウンロードログ: このオプションは、ログファイル (Json 形式) をダウンロードするのに役立ちます。
リアルタイム同期ジョブのよくあるエラー
リアルタイム同期ジョブでよく発生するエラーは次のとおりです。
- Gainsightでは、サポートされているソースオブジェクト(アカウント、連絡先、ケース)ごとに1つずつ、最大3つのリアルタイム同期ジョブが可能です。
- 削除イベントはリアルタイム同期ではGainsightに同期されませんが、リアルタイム同期アクティビティでキャプチャされます。たとえば、外部システムからレコードを削除しても、Gainsightは同じレコードを削除しませんが、削除されたイベントの詳細は [アクティビティ] タブで確認できます。
- ソースフィールドのデータタイプが変更されても、その変更はGainsightには反映されませんが、イベントはリアルタイム同期アクティビティでキャプチャされます。
- ソース Salesforce 接続の認証の有効期限が切れると、リアルタイム同期ジョブは無効になります。これらを再度有効にするには、「接続」タブから接続を再認証する必要があります。
- 技術的な制限により、特定のフィールドをリアルタイム同期ジョブの識別子として使用することはできません。このようなフィールドがジョブの識別子として使用されている場合、フィールドが識別子としてオフになるまで、リアルタイム同期は無効になります。このようなリアルタイム同期ジョブの情報アイコンは、ジョブリストページに表示されます。たとえば、「最終アクティビティ」、「取引先からの最終閲覧日」などです。
- リアルタイム同期ジョブでは、最大10個の識別子または必須フィールド、またはそれらの組み合わせを使用できます。