外部データを取引先責任者ページレイアウトに取り込む
Salesforce をデータのオールインクルーシブリゾートにする
Becca は、Data Cloud と AI を組み合わせた初めてのプロジェクトに取り組むことを楽しみにしていますが、その前に、現在のシステムとプロセスを評価することが重要であると理解しています。チェックインの合理化には、Coral Cloud の現在の予約システムも含まれます。Reserv-o-matic と呼ばれる若干時代遅れのソリューションです。この外部システムでは、お客様は 1 つのプロファイルで多数の予約を行うことができます。
お客様には、名前、メールアドレス、電話番号などの情報を保持するための項目があります。Sofia Rodriguez というお客様が、チェックイン日とチェックアウト日、部屋タイプ、予約状況を指定して複数の予約を作成しました。
現在、この情報はすべて Coral Cloud の Salesforce 組織とは完全に分離しています。Salesforce 組織に保存されているのは、Sofia の取引先責任者レコードと大量の既存の関連データです。Data Cloud で、Salesforce 内の Sofia と Reserv-o-matic 内の Sofia が接続されます。このリレーションが確立されたら、Becca はそれを使用していろいろなことができるようになります。たとえば手始めに、予約関連リストを取引先責任者ページレイアウトに直接配置できます。
これを行うために、Becca は 3 つのステップを完了する必要があります。
- Data Cloud に Reserv-o-matic データを認識させる。
- 外部のお客様と内部の取引先責任者の一致を検出する。
- 外部予約が表示されるように取引先責任者ページを更新する。
計画が整い、そろそろ設定を開始するときですが、その前に 1 つ留意点があります。すでにおわかりかもしれませんが、Reserv-o-matic は実在しません。つまり、このプロジェクトで使用できる外部データソースはありません。そのため、チーム Trailhead は「外部」のお客様と「外部」の予約データを、特別な組織のカスタムオブジェクトに保存しました。このプロジェクト全体を通して、組織の外部にデータが存在するものとして説明していきますので、そのようにご理解してください。では、本題に戻りましょう。
既存の Coral Cloud データのデータストリームを有効化する
この時点で、チーム Trailhead によって Data Cloud と Reserv-o-matic の接続がすでに作成済みであるため、少し時間が節約されています。ただし、外部システムにどのようなデータが存在するのか、また内部オブジェクトとどのように関連しているのかは、Data Cloud でまだ認識されていません。したがって、Becca が最初に実行しなければならないステップは、Data Cloud に取り込むデータを特定することです。つまり、Data Cloud 管理で欠かせない部分であるデータストリームの作成です。
データストリームは、特定の接続内からデータを検索する場所を記述します。データストリームごとに関連するデーレイクオブジェクト (DLO) が作成されます。これは、データストリームソースから取得するデータのストレージコンテナです。ところで、新しい DLO は、Data Cloud にすでに存在する他のすべてのデータとどのように関連するのでしょうか。その答えは、データがどのように構成されているかを記述するデータモデルオブジェクト (DMO) の形式でわかります。これはメタデータのようなものです。たとえば、Contact Point Email (連絡先メール) という名前の DMO には、取得元に関係なく、メールアドレスを適切に保存する方法に関する詳細が含まれています。したがって、Becca は外部のお客様データのメール列を DMO のメールアドレス項目にマッピングできます。
このマッピングにより、Data Cloud はデータを賢く使用できます。このプロジェクトでは、Data Cloud はメールアドレスを使用して、Reserv-o-matic 内の Sofia が Salesforce 内の Sofia と同じであることを認識します。
データストリームの作成とマッピングは、それ自体が 1 つのトピックです。詳細は「Data Cloud でデータストリームを作成する」プロジェクトを参照してください。このプロジェクトでは、すべての Coral Cloud のデータストリームとマッピングをデータキットにパッケージ化して、作業を簡略化しました。データキットにはすでに特別な組織に読み込まれています。必要なのは、データストリームを有効化することだけです。それには、まず Data Cloud と Einstein が有効の Playground を起動します。
データストリームを有効化する
- まだ起動していない場合は、Data Cloud and Einstein 1 Playground を起動します。
-
[App Launcher (アプリケーションランチャー)] をクリックして
data
(データ) と入力し、[Data Cloud] アプリケーションをクリックします。
-
[Data Streams (データストリーム)] タブをクリックします。
-
[New (新規)] をクリックします。
ここで本来は外部データソースを選択するのですが、存在しませんので、代わりに内部データソースを選択します。
-
[Salesforce CRM] をクリックします。
-
[Next (次へ)] をクリックします。
-
[AIPlusData] カスタムデータバンドルをクリックします。
-
[Next (次へ)] をクリックします。
- デフォルトのデータスペースが事前に選択され、バンドルに含まれているすべての項目が表示されます。選択をそのままにして、[Next (次へ)] をクリックします。
-
[Deploy (リリース)] をクリックします。
データストリームを有効化して重要なデータソースを特定しました。数分で、データがデータレイクオブジェクトに取り込まれます。また、データモデルオブジェクトとマッピングがすでに存在しているため、すぐにデータを利用することができます。
ID 解決を設定する
Becca は、Reserv-o-matic のお客様の多くが、Salesforce に取引先責任者レコードがある人と同一人物であることを知っています。お客様と取引先責任者の両方が共通のデータモデルオブジェクトにマッピングされるため、Data Cloud の強力な機能を使用して、Salesforce の Sofia と Reserv-o-matic の Sofia を一致させて 1 つの Sofia に統合することができます。これは ID 解決と呼ばれ、Salesforce の取引先責任者と外部予約データの間のギャップを埋める鍵となります。まず、[Identity Resolutions (ID 解決)] タブに移動し、ID 解決ルールセットを作成します。
-
[Identity Resolutions (ID 解決)] タブをクリックします。
-
[New (新規)] をクリックします。
-
[Create New Ruleset (ルールセットを新規作成)] をクリックして、[Next (次へ)] をクリックします。
- [Select Data Space (データスペースを選択)] メニューは [default (デフォルト)] が選択されたままにします。
- [Primary DMO (プライマリ DMO)] で [Individual (個人)] を選択します。
- [Ruleset ID (ルールセット ID)] に
ccid
と入力します。
これは、Coral Cloud Identification の略です。
-
[Next (次へ)] をクリックします。
- [Ruleset Name (ルールセット名)] に
Guest Name and Email
(お客様の名前とメール) と入力します。
- [Description (説明)] に
Reconcile Reserv-o-matic contact data with Salesforce contact data
(Reserv-o-matic の取引先責任者データと Salesforce の取引先責任者データを照合する) と入力します。
-
[Run jobs automatically (ジョブを自動的に実行)] を無効にします。
ジョブは後で手動で開始します。
-
[Save (保存)] をクリックします。
ルールセットのフレームワークが保存されました。次は照会方法を設定します。
-
[Configure (設定)] をクリックします。
-
[Next (次へ)] をクリックします。
-
[Configure (設定)] をクリックします。
-
[Fuzzy Name and Normalized Email (あいまいな名前と標準化されたメール)] を選択します。
これで、照合に使用されるプライマリデータが決まります。
-
[Next (次へ)] をクリックします。
照合方法を調整する高度な方法はたくさんありますが、ここではデフォルトを使用しておきます。
-
[Next (次へ)] をクリックします。
-
[Save (保存)] をクリックします。
これで、ルールセットを使用して、2 人の個人が実際には同一人物であることを検出する方法を指定しました。組織には、このルールセットを使用すると一致する数十人のお客様と取引先責任者が保存されています。ID 解決ルールセットについての詳細は、「クイックスタート: ID 解決ルールセットを作成する」プロジェクトを参照してください。
データが取り込まれていることを確認して ID 解決ルールセットを実行する
ルールセットはデータの照合に使用するものですが、照合を行うには、そのデータがデータレイクオブジェクトに存在する必要があります。ルールセットを実行する前に、データストリームですべてのサンプルレコードの取り込みが完了したことを確認しましょう。
-
[Data Streams (データストリーム)] タブをクリックします。
- ブラウザーでページを更新します。
すべてのストリームの [Last Run Status (最終実行状況)] が [Success (成功)] となっている必要があります。そうなっていない場合は、1 ~ 2 分待ってから再度更新してください。
-
[Identity Resolutions (ID 解決)] タブをクリックします。
-
[Guest Name and Email (お客様の名前とメール)] をクリックします。
- 右上隅にある [Run Ruleset (ルールセットを実行)] をクリックします。
ルールセットの実行に少し時間がかかる場合があります。組織には数十件のレコードしかないため、それほど時間はかからないはずですが、処理中に他の作業をすることもできます。たとえば、Data Cloud 関連リストを作成できます。次はそれをやってみましょう。
強化を使用して Data Cloud と CRM を接続する
すべてのデータに 1 か所でアクセスできることの大きなメリットの 1 つは、すべてのソースからデータをシームレスにブレンドする環境を作成できることです。Coral Cloud の場合、Becca は、ホテルのスタッフがお客様に関する関連情報を参照する場所、つまり取引先責任者ページに外部予約データを表示したいと考えています。
よく知らなければ、このスクリーンショットは通常の関連リストを示していると考えてしまうかもしれませんが、実際には、Data Cloud 関連リストと呼ばれる特別な種類の関連リストです。この作成は [Setup (設定)] で行います。(残りの手順を実行しているときに、ポップアップウィンドウが何度も表示されますが、閉じてかまいません。)
-
[Setup (設定)] アイコン をクリックし、[Setup (設定)] をクリックします。
-
[Object Manager (オブジェクトマネージャー)] をクリックします。
-
[Contact (取引先責任者)] をクリックします (Contract と間違えないでください)。
-
[Data Cloud Related List (Data Cloud 関連リスト)] をクリックします。
-
[New (新規)] をクリックします。
- [Data Cloud Object (Data Cloud オブジェクト)] で [ExternalReservation] を選択します。
-
[Next (次へ)] をクリックします。
-
[Enable Controlled by Parent Permissions (親の権限による制御を有効化)] をオンにします。(組織の設定によっては、ステップ 8 と 9 を実行する必要がない場合があります。)
-
[Next (次へ)] をクリックします。
- [Child Relationship Name (子リレーション名)] を
Reservations
(予約) に更新します。
-
[Next (次へ)] をクリックします。
- [Related list label (関連リストの表示ラベル)] を
Reservations
(予約) に更新します。
-
[Next (次へ)] をクリックします。
これで Data Cloud 関連リストが存在しますが、まだどのページレイアウトにも含まれていません。Becca は取引先責任者の Lightning レコードページを更新し、その表示方法を設定します。
- 左側のメニューで、[Lightning Record Pages (Lightning レコードページ)] をクリックします。
-
[Contact Record Page (取引先責任者レコードページ)] をクリックします。
-
[Edit (編集)] をクリックします。
-
[Dynamic Related List - Single (動的関連リスト - 1 つ)] を [Related (関連)] タブの [Opportunities (商談)] の上にドラッグします。
- 右側のメニューの [Related List (関連リスト)] で [Reservations (予約)] を選択します。
- [Related List Fields (関連リスト項目)] の下の [Add Field (項目を追加)] をクリックします。
-
[Check-in Date (チェックイン日)] を見つけて選択します。
-
[Done (完了)] をクリックします。
-
[Check-out Date (チェックアウト日)]、[Room Type (部屋タイプ)]、[Reservation Status (予約状況)] についてステップ 6 〜 8 を繰り返します。
-
[X] をクリックして、リストの一番上にある [Record ID (レコード ID)] 項目を削除します。
- [Related List (関連リスト)] 検索条件の下の [Add Filter (検索条件を追加)] をクリックします。
- [Field (項目)] で [Check-in Date (チェックイン日)] を選択します。
- [Operator (演算子)] で、[not equal to (次の文字列と一致しない)] を選択します。
つまり、チェックイン日が空でない場合は、予約を表示します。検索条件を追加しない場合は、過去 7 日間のみのデータが表示されます。組織に保存されているデータはおそらくそれよりも古いものです。
-
[Done (完了)] をクリックします。
-
[Save (保存)] をクリックします。
- [Lightning App Builder (Lightning アプリケーションビルダー)] タブを閉じて、Data Cloud アプリケーションに戻ります。
Data Cloud 関連リストの準備が整いました! Sofia の取引先責任者レコードをチェックして、彼女の予約が表示されることを確認しましょう。
-
[Identity Resolutions (ID 解決)] タブをクリックして、[Guest Name and Email (お客様の名前とメール)] ルールセットをクリックします。ブラウザーを更新し、[Last Job Status (最終ジョブ状況)] 項目が「Succeeded (成功)」になっていることを確認します。そうなっていない場合は、しばらく待ってから再度更新してください。
-
[App Launcher (アプリケーションランチャー)] をクリックして
sales
(セールス) と入力し、[Sales (セールス)] アプリケーションをクリックします。
-
[Contacts (取引先責任者)] タブをクリックします。
-
[List View (リストビュー)] (右端) をクリックして、[All Contacts (すべての取引先責任者)] を選択します。
-
[Search this list… (このリストを検索...)] ボックスに
Sofia Rodriguez
と入力して、Enter キーを押します。
-
[Sofia Rodriguez] をクリックします。
Sofia には 3 件の予約があり、取引先責任者ページレイアウト内に表示されるようになりました。
計画が良い方向に進むことほど嬉しいことはありません。データストリームを作成し、ID を解決し、ページレイアウトを強化しました。出だしは上々です。次に、Becca は予約データを使用して、Einstein Copilot にまったく新しいスキルをトレーニングします。