Data Mapper の種類を知る
学習の目的
この単元を完了すると、次のことができるようになります。
- OmniStudio Data Mapper とは何かを要約する。
- OmniStudio Data Mapper の 4 つの種類を挙げる。
- 各種の OmniStudio Data Mapper の機能を説明する。
OmniStudio Data Mapper の概要
「OmniStudio アーキテクチャ」モジュールを修了している場合は、OmniStudio の設定ツールのスイートや、Salesforce ユーザーがガイド付きユーザーエクスペリエンスを実現するためのリソースについて習得していることと思います。このモジュールでは、OmniStudio のサービス管理レイヤーの基本コンポーネントの 1 つ、OmniStudio Data Mapper の基本事項を学習します。
そもそも OmniStudio Data Mapper とは何なのでしょうか? OmniStudio Data Mapper は、Salesforce データの読み取り、変換、書き込みを可能にする対応付けツールです。次のように考えることができます。デジタル顧客とのやり取りやビジネスプロセスのすべてで、データを抽出して表示する必要があります。そして、ユーザーがそのデータを変更したり新しいデータを入力したりした場合には、そのデータを保存しなければなりません。そこで登場するのが OmniStudio Data Mapper です。
OmniStudio Data Mapper には 4 種類ありますが (後述)、概して Salesforce から OmniScript や OmniStudio FlexCard にデータを取り込み、OmniScript や FlexCard で行われた更新を元の Salesforce に書き込みます。通常はこの処理を OmniStudio Integration Procedure 経由で行います。
次に、データフローの例を示します。
-
データを取得する: OmniScript が (Integration Procedure 経由で) OmniStudio Data Mapper Extract をコールして Salesforce からデータを読み取ります。たとえば、Edit Account OmniScript に、取引先名、電話番号、Web サイトなどのデータを表示します。
-
データを操作する OmniScript が、ユーザー入力に基づいて変更されたデータや新しいデータを取得します。たとえば、エージェントが取引先の電話番号を変更します。
-
データを保存する: OmniScript が (Integration Procedure 経由で) OmniStudio Data Mapper Load をコールしてデータを元の Salesforce に書き込みます。たとえば、更新された取引先の電話番号を取引先レコードに保存します。
データの読み取り、書き込み、変換は Apex クラスでも実行できますが、OmniStudio Data Mapper にはさらなるメリットがあります。OmniStudio Data Mapper は短時間で作成でき、メンテナンスも簡単なため、Salesforce では OmniStudio Data Mapper をベストプラクティスとして使用することを推奨しています。
続いて、各種の OmniStudio Data Mapper がどのように機能するのか見ていきましょう。
ブロックの名前 |
実行する内容 |
---|---|
OmniStudio Data Mapper Turbo Extract |
1 つの Salesforce オブジェクトからデータを取得する |
OmniStudio Data Mapper Extract |
1 つ以上の Salesforce オブジェクトからデータを取得する |
OmniStudio Data Mapper Load |
1 つ以上の Salesforce オブジェクトに次の方法でデータを保存する
|
OmniStudio Data Mapper Transform |
Salesforce の内部または外部から取得したデータを操作する |
OmniStudio Data Mapper Extract、OmniStudio Data Mapper Load、OmniStudio Data Mapper Transform は次の処理も行います。
- JSON、XML、カスタムスキーマのデータをトリミング、対応付け、再構築、変換する。
- 数式や関数を使用してデータを変換する。
もっと知りたいと思いませんか? 次は、各種の OmniStudio Data Mapper の機能について説明します。
OmniStudio Data Mapper Turbo Extract
OmniStudio Data Mapper Turbo Extract は、関連オブジェクトの項目をサポートする 1 つの Salesforce オブジェクト種別からデータを取得して絞り込みます。データを絞り込んで、返す項目を選択できます。標準の OmniStudio Data Mapper Extract とは異なり (次に説明)、OmniStudio Data Mapper Turbo Extract では数式や複雑な出力の対応付けがサポートされていません。
ただし、OmniStudio Data Mapper Extract と比較して次の 2 つのメリットがあります。
- 簡単に設定できる
- 実行時のパフォーマンスが優れている
OmniStudio Data Mapper Turbo Extract の使用例として、(ID を指定して) 取引先の取引先責任者を取得する場合が挙げられます。
OmniStudio Data Mapper Extract
Salesforce からデータを取り込む 2 つ目の OmniStudio Data Mapper は OmniStudio Data Mapper Extract で、Salesforce データを読み取り、複雑な項目の対応付けを使用して JSON、XML、カスタム形式のいずれかで結果を返します。OmniStudio Data Mapper Extract の通常の用途は、表示する必要がある Salesforce の内部データを OmniScript や FlexCard に抽出することで、数式や複雑な出力対応付けをサポートします。
次に該当する場合は OmniStudio Data Mapper Extract を使用します。
-
1 つのオブジェクトからデータを抽出する: たとえば、Salesforce の取引先オブジェクトから取引先データ (取引先名などの詳細) を取得します。
-
3 つの関連オブジェクトからデータを抽出する: たとえば、ケースを処理する OmniScript で使用する OmniStudio Data Mapper Extract を作成します。ケースを処理するエージェントは、ケース番号を使用してケースを検索する必要があり、また、取引先の名前、ケースの説明、取引先の取引先責任者全員を表示できるようにする必要があります。
-
データ値またはオフセット値を使用して並び替えられたデータをページングする: OmniStudio Data Mapper Extract で大量のレコードが取得されると予想される場合は、ページングを使用して、項目値またはオフセット値を基に一度に数件のレコードを取得します。たとえば、取引先の長いリストを取引先 ID でページングしたり、取引先責任者のリストを姓でページングしたりします。
OmniStudio Data Mapper Load
OmniStudio Data Mapper Load は、JSON または XML 入力から Salesforce オブジェクトにデータを書き込みます。つまり、変更されたデータでレコードを更新すると同時に新規レコードを作成します。
- 入力データを変更する場合は、数式の定義、値の変換、出力データ型の変更を行います。
- 変更されたデータを Salesforce オブジェクトに書き込む方法を指定するには、出力 JSON の項目を Salesforce オブジェクトの項目に対応付けます。
OmniStudio Data Mapper Load は、入力データに対応付けや数式を適用して出力データを作成し、その出力データを対応付けに従って Salesforce オブジェクトに読み込みます。
次のような場合に OmniStudio Data Mapper Load を使用します。
-
取引先責任者を作成して数式を使用する: OmniStudio Data Mapper Load が新しい取引先責任者レコードを作成します。取引先責任者が 19 歳以上かどうかを数式でチェックします。19 歳以上の場合は、[Authorized (承認済み)] カスタム項目が true に設定されます。
-
既存の取引先の取引先責任者を作成する: OmniStudio Data Mapper Load が新しい取引先責任者レコードを作成します。特定の ID の取引先レコードへのリンクを使用して、新しい取引先責任者がその取引先に関連付けられるようにします。
OmniStudio Data Mapper は、外部オブジェクトやカスタムメタデータのほか、Salesforce オブジェクトにもアクセスできます。このために、特別な構文や追加設定は必要ありません。
OmniStudio Data Mapper Transform
OmniStudio Data Mapper Transform では、次の処理を行います。
- JSON 入力を XML 出力に (またはその逆に) 変換する。
- 入力データを再構築して項目名を変更する。
- 項目の値を代入する (どの OmniStudio Data Mapper も値を代入できます)。
次の状況では OmniStudio Data Mapper Transform を使用します。
- OmniScript で DocuSign テンプレートに入力する必要がある場合。
- OmniScript で PDF ドキュメントの項目に記入する必要がある場合。
以下の例では、保険会社が表示ラベルをユーザーにわかりやすいものにするために、OmniStudio Data Mapper Transform を実装しました。Policy (保険契約) 情報が Salesforce の納入商品オブジェクトに保存されていますが、ユーザーに表示されるラベルを OmniStudio Data Mapper Transform で「Asset (納入商品)」から「Policy (保険契約)」に変更します。また、「vlocity_ins__AnnualPremium__c」も「Annual Premium」に変更します。さらに、取引先責任者の表示ラベルを「Contact (取引先責任者)」から「Policy Holder (保険契約者)」と「Policy Beneficiary (保険契約受取人)」の 2 種類に変更します。
これで OmniStudio Data Mapper の基本を押さえることができました! 次の単元では、OmniStudio Data Mapper Designer を使用して OmniStudio Data Mapper を実行する方法と、その機能、数式、関数について説明します。
リソース