チュートリアル: カスタム連絡先ファセットの作成
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore Experience Platformでは、コンタクト ファセットを使用してコンタクトのデータを保存します。このチュートリアルでは、カスタム連絡先ファセットを作成するプロセスと、Salesforce CRMからのデータをファセットに入力するための同期プロセスを設定するプロセスについて説明します。
この例では、取引先担当者が関連付けられている取引先企業の名前を格納するカスタム取引先担当者ファセットを作成します。従う必要がある手順は次のとおりです。
Visual Studioプロジェクトを作成する
Visual Studioプロジェクトを作成する
コンタクトにカスタムデータを保存するには、コンタクトファセットが必要です。コンタクトファセットはコードで実装されます。カスタム連絡先ファセットを実装する前に、Visual Studioプロジェクトが必要です。
-
Visual Studioで、次のプロジェクトを作成します。
プロジェクトの種類
クラス ライブラリ (.NET Framework)
.NETバージョン
.NET Framework 4.6.2 (英語)
プロジェクト名
Examples.Connect.Salesforce (英語)
-
次のNuGetパッケージへの参照を追加します。
-
Sitecore.DataExchange.Tools.SalesforceConnect.NoReferences
-
Sitecore.XConnect.NoReferences
-
Sitecoreの公開NuGetフィードはhttps://nuget.sitecore.com/resources/v3/index.jsonで入手できます。
コンタクトファセットを実装する
コンタクトファセットを実装する
各Salesforceの取引先責任者は、取引先に関連付けられています。取引先担当者に取引先企業名を保存するには、取引先担当者ファセットが必要です。
-
Visual Studioで、次のクラスを追加します。
コレクション モデルを実装する
コレクション モデルを実装する
xConnectでは、コレクション モデルによって、使用可能なコンタクト ファセットが定義されます。カスタムコンタクトファセットにデータを保存する前に、カスタムコンタクトファセットを含むコレクションモデルが必要です。
-
Visual Studioで、次のクラスを追加します。
コレクション モデルを登録する
コレクション モデルを登録する
カスタムコレクションモデルは、使用する前に登録する必要があります。これには、いくつかのSitecoreサーバー ロールのコンポーネントと設定の更新が含まれます。
カスタムコンポーネントのデプロイ
カスタムのコンタクト ファセットとコレクション モデルを含むアセンブリは、Sitecoreサーバーにデプロイする必要があります。
-
Visual Studioプロジェクトをビルドします。
-
Examples.Connect.Salesforce.dllをSitecoreサーバーにコピーします。
コレクション モデル定義を追加する
コレクション モデルはSitecore内で定義する必要があります。
カスタムデータプロバイダは、コレクションモデルで定義されたファセットを公開します。これにより、利用可能なものをユーザーに表示し、ユーザーが誤って無効な値を入力する変更を減らすことで、xConnectエンティティを含むデータ マッピングを簡単に構成できます。
-
Sitecoreのコンテンツ エディターで、Sitecore/System/Settings/Data Exchange/Providers/xConnect/Collection Modelsに移動します。
-
次の項目を追加します。
Template
コレクションモデルフォルダ
Item name
カスタムモデル
-
新しいアイテムに、次のアイテムを追加します。
Template
コンパイルされたコレクションモデル
Item name
Salesforceのカスタム収集モデル
-
新しい項目のContentタブのSettingsセクションで、次のフィールド値を設定します。
畑
価値
Collection Model Type
examples.connect.Salesforce.SalesforceConnectCollectionModelEx、examples.connect.Salesforce
-
アイテムを保存します。
コレクション モデルのデプロイと変換
カスタム データをxConnectに送信する前に、コレクション モデルをxConnectにデプロイする必要があります。これは、コレクションモデルを記述するJSONファイルをコピーすることによって実現されます。
-
カスタムコレクションモデルに移動します。リボンのConvert Model to Itemsをクリックします。次に、「 Convert Model to JSON」をクリックします。
-
モデルファイルを保存します。
-
モデルファイルを次のサーバーにデプロイします。
-
xConnectコレクション
-
xConnectインデックス作成
-
xConnectクライアント エンドポイントの設定
xConnectに接続するには、コレクション モデルを指定する必要があります。これにより、xConnectとxConnectクライアントは、互いに何を期待すべきかを正確に把握できます。
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Endpoints/Providers/xConnect/xConnect Client Endpointに移動します。
-
ContentタブのCollection Serviceセクションで、次のフィールド値を設定します。
畑
価値
Collection Model
Collection Models/Custom Models/Custom Collection Model for Salesforce
-
アイテムを保存します。
構成をテストする
設定をテストすると、コレクション モデルがデプロイされ、xConnectクライアント エンドポイントが適切に設定されていることを確認できます。
-
リボンのRun Troubleshooterをクリックします。
xConnectコレクション サービスへの接続が確立されたことを知らせるメッセージが表示されます。
Salesforceの連絡先からの読み取り方法を指定します
Salesforceの連絡先からの読み取り方法を指定します
テナントは、Salesforceから読み取られるデータの構造を理解するように構成する必要があります。このセクションでは、この情報を組み込むためにテナントを更新する方法について説明します。
取引先担当者の取引先企業の値アクセサを追加する
値アクセサは、取引先がSalesforceの取引先責任者のプロパティであることを表すために使用されます。この値アクセサーには、次の2つの目的があります。
-
Salesforceから取引先責任者を読み取るときは、取引先責任者の取引先を含めるようにSalesforceに指示する必要があります。値アクセサ セット内の値アクセサは、連絡先オブジェクトのどのフィールドを読み取るかを決定するために使用されます。値アクセサを追加すると、Salesforceから追加のフィールドを読み取るように指定できます。
-
SalesforceからSitecoreへのデータのマッピングを設定するときは、valueアクセサーを使用して、Salesforceの連絡先から読み取る値を指定します。
取引先責任者の取引先に値アクセサを追加するには:
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Data Access/Value Accessor Sets/Providers/Salesforce/Salesforce Contact Fieldsに移動します。

-
次の項目を追加します。
テンプレート
Salesforceオブジェクト フィールド値アクセサ
アイテム名
Salesforce取引先責任者のアカウント
-
新しい項目のContentタブのFieldセクションで、次のフィールド値を設定します。
畑
価値
フィールド名
Account
選択のフィールド名
Account.Name
-
アイテムを保存します。
アカウントの名前の値アクセサを追加する
Salesforceでは、取引先責任者の読み取り時に取引先名を含めるように指定すると、Salesforceは取引先オブジェクトを返します。この取引先オブジェクトには、取引先名を表す項目があります。値アクセサは、アカウントオブジェクトの名前を読み取るために必要です。この値アクセサーが直接使用されることはありません。これは、次の手順で作成する値リーダーが使用できるように作成されます。
-
コンテンツ エディターで、Data Access/Value Accessor Sets/Providers/Salesforceに移動します。
-
次の項目を追加します。
テンプレート
Salesforceオブジェクト値アクセサセット
アイテム名
Salesforceアカウント フィールド
-
新しいアイテムに、次のアイテムを追加します。
テンプレート
Salesforceオブジェクト フィールド値アクセサ
アイテム名
Salesforceアカウントの名前
-
新しい項目のContentタブのFieldセクションで、次のフィールド値を設定します。
畑
価値
フィールド名
名前
-
アイテムを保存します。
アカウント名の値リーダーを追加する
このバリューリーダーの目的は、後の手順で明らかになります。今のところ、以下の手順に従ってください。
-
コンテンツ エディターで、Data Access/Value Readers/Providers/Salesforceに移動します。
-
次の項目を追加します。
テンプレート
Value Accessor Value Reader
アイテム名
アカウント名の値アクセサの値のリーダー
-
新しい項目のContentタブのSettingsセクションで、次のフィールド値を設定します。
畑
価値
値アクセサ
Value Accessor Sets/Providers/Salesforce/Salesforce Account Fields/Name on Salesforce Account
-
アイテムを保存します。
Contactファセットへの書き込み方法を指定します
Contactファセットへの書き込み方法を指定します
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Data Access/Value Accessor Sets/Providers/xConnectに移動します。
-
次の項目を追加します。
テンプレート
xConnectエンティティ ファセット値アクセサ セット
アイテム名
xConnect Contact Salesforceアカウント情報ファセット
-
新しいアイテムに、次のアイテムを追加します。
テンプレート
xConnectエンティティ ファセット プロパティ値アクセサー
アイテム名
xConnect ContactのSalesforceアカウント情報ファセットのアカウント名
-
新しい項目のContentタブのSettingsセクションで、次のフィールド値を設定します。
畑
価値
ファセットプロパティ
Collection Models/Custom Models/Custom Collection Model for Salesforce/Facets/Contact/SalesforceAccount/AccountName
-
アイテムを保存します。
Salesforceデータを取引先担当者ファセットにマッピングする
Salesforceデータを取引先担当者ファセットにマッピングする
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Value Mapping Sets/Salesforce to xConnect Contact Mappingsに移動します。

-
次の項目を追加します。
テンプレート
値マッピングセット
アイテム名
Salesforce Contact to xConnect Contact Salesforce Account Informationファセット
-
新しいアイテムに、次のアイテムを追加します。
テンプレート
バリューマッピング
アイテム名
アカウント名
-
新しい項目のContentタブで、次のフィールド値を設定します。
節
畑
価値
源
ソース アクセサー
Data Access/Value Accessor Sets/Providers/Salesforce/Salesforce Contact Fields/Account on Salesforce Contact
ターゲット
ターゲット アクセサー
Data Access/Value Accessor Sets/Providers/xConnect/xConnect Contact Salesforce Account Information Facet/Account Name on Salesforce Account Information Facet on xConnect Contact
準則
ソース値トランスフォーマー
Value Readers/Providers/Salesforce/Value Reader for Account Name Value Accessor
手記「Salesforceの連絡先からの読み取り方法の指定」セクションで、取引先企業名の値リーダーが作成されました。この値リーダーは、値マッピングのソース値トランスフォーマーとして設定されます。ソース値トランスフォーマーは、ソース値アクセサーによって読み取られたオブジェクトから値を読み取る値リーダーです。この場合、ソース値アクセサはSalesforce取引先責任者から取引先オブジェクトを読み取ります。ただし、アカウント名が必要であり、アカウントオブジェクト自体は必要ありません。したがって、ソース値トランスフォーマーはアカウントオブジェクトから名前を読み取ります。
-
アイテムを保存します。
コンタクトファセットをコンタクトにマッピングします
コンタクトファセットをコンタクトにマッピングします
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Data Access/Value Accessor Sets/Providers/xConnect/xConnect Contactに移動します。

-
次の項目を追加します。
テンプレート
xConnectエンティティ ファセット値アクセサー
アイテム名
xConnect ContactのSalesforceアカウント情報ファセット
-
新しい項目のContentタブのSettingsセクションで、次のフィールド値を設定します。
畑
価値
ファセットの定義
Collection Models/Custom Models/Custom Collection Model for Salesforce/Facets/Contact/SalesforceAccount
マッピングセット
Value Mapping Sets/Salesforce to xConnect Contact Mappings/Salesforce Contact to xConnect Contact Salesforce Account Information Facet
-
アイテムを保存します。
-
テナントを選択します。
-
Value Mapping Sets/Salesforce to xConnect Contact Mappings/Salesforce Contact to Contact Modelに移動します。

-
次の項目を追加します。
テンプレート
バリューマッピング
アイテム名
Salesforceアカウント情報ファセット
-
新しい項目のContentタブで、次の値を設定します。
節
畑
価値
源
ソース アクセサー
Data Access/Value Accessors/Common/Value Accessor with Raw Value Reader Set
ターゲット
ターゲット アクセサー
Data Access/Value Accessor Sets/Providers/xConnect/xConnect Contact/Salesforce Account Information Facet on xConnect Contact
-
アイテムを保存します。
パイプラインに新しいファセットを追加する
パイプラインに新しいファセットを追加する
新しいファセットの情報を処理するには、Read Contacts from SalesforceステップとProcess Single Contact from Salesforceパイプライン ステップに情報を追加する必要があります。
フィールドをRead Contacts from Salesforceパイプライン ステップに追加するには、次のようにします。
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
Pipelines/Salesforce Contacts to xConnect Sync Pipelines/Read Contacts from Salesforce Pipeline/Read Contacts from Salesforceに移動します。
-
ContentタブのObject SettingsセクションのFields to Readフィールドで、Selected列にSalesforce Account Fieldsを追加します。
-
パイプライン ステップを保存します。
ファセットをProcess Single Contact from Salesforceパイプライン ステップに追加するには、次のようにします。
-
コンテンツ エディターで、Sitecore/System/Data Exchangeに移動します。
-
テナントを選択します。
-
に移動します Pipelines/Salesforce Contacts to xConnect Sync Pipelines/Process Single Contact from Salesforce Pipeline/Resolve Contact Model by Id from xConnect.
-
ContentタブのxConnect SettingsセクションのFacets to Readフィールドで、Collection Models/Custom Models/Custom Collection Model for Salesforce/Facets/Contact/SalesforceAccountを見つけます。 Selected列に追加します。
-
パイプライン ステップを保存します。