ウォークスルー
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
このトピックでは、Experience Formsのカスタムデータ交換フレームワーク(DEF)セーブアクションを設定する方法の例を示します。
このウォークスルーでは、以下の方法を説明します:
- フォームを作成する
- テナントを作成する
- 値アクセスツールを作成する
- パイプラインの作成
- 価値を創造する読者
- パイプラインコンテキストビルダーの作成
- テナントサービスエンドポイントの作成
- フォームの設定をしてください。
フォームを作成する
ウェブサイトの訪問者がウェブサイト上でフォームを送信すると、保存アクションがトリガーされます。
フォームを作成するには:
-
Sitecore Formsのフォームダッシュボードで 「作成」をクリックします。フォームの基にするテンプレートを選択します。
-
フォーム要素ペインから要素をフォームにドラッグして、少なくとも1つのフィールドを追加してください。
-
ツールバーで 「保存 」をクリックしてフォームを保存し、名前を付けます。
!注必要に応じてフォームデザイナーを使って、さまざまなフォーム要素を使って フォームのデザインを 続けることができます。
-
ウェブページでフォームを利用可能にするには、「 ウェブページにフォームを追加」の指示に従ってください。
!注Sitecoreスケールドデプロイメント(XP1)を行っている場合、フォームの .cshtmlファイルがコンテンツデリバリー(CD)サーバーにコピーされていることを確実にしてください。例えば、
\Views\Shared\ .cshtml。
テナントを作成する
テナントはセーブアクションのために設定しなければならない設定のコンテナです。
テナントを作成するには:
-
コンテンツエディターで /sitecore/system/Data Exchangeに移動します。
-
フォルダタブで「空のデータ交換テナント」をクリックします。
-
作成したテナントを選択し、上部メニューバーのData Exchange SDKタブをクリックします。リボンの上で 「テナントをアップグレードする」をクリックします。
-
テナント のアップグレード ダイアログの命令 セット 欄で「 テナントサービス」をクリックします。
-
テナントのIDをメモしてください。 <tenant service>\App_Config\ConnectionStrings.configファイルの接続文字列Sitecoreに、テナントID、ホスト、認証情報を追加します。例えば:
!注Sitecoreスケールドデプロイ(XP1)を行っている場合は、データベースパラメータをWebに変更し、ホストパラメータをCDサーバーのURLに変更してください。
-
Sitecoreコンテンツ管理サーバーのApp_Config\connectionstring.configファイルに、そのテナントのウェブサービスに関連付けられた接続文字列があることを確認してください。例えば:
<xmlversion="1.0" encoding="utf-8">
-
Sitecoreスケールドデプロイメント(XP1)の場合は、CDサーバーのconnectionstring.configファイルにもテナントサービスの接続文字列を追加する必要があります。
値アクセスツールを作成する
値のアクセルは、フォームのフィールドの値を読み取ります。バリューアクセサはバリューアクセサセットに集められます。
値アクセスを作成するには:
-
/data access/value accessor set/providersへ移動してください。すでにFormsフォルダがある場合は開いてください。もしなければ、フォルダタブでForms Value Accessor SetをクリックしてFormsフォルダを作成・開いてください。
-
Formsフォルダのフォルダタブで**「フォーム 値 アクセルセット**」をクリックして新しいアイテムを作成します。例えば「*フォームに連絡する」*と名付けてください。

-
作成したアイテムを選択し、「 コンテンツ 」タブに切り替えます。作成したフォームを選択してアイテムを保存します。

-
上部メニューバーで 「データ交換」をクリックし、「 フォームフィールドを追加」をクリックします。

-
値のアクセルを作成するには、読みたい値のフォームフィールドを選択し、OKをクリックします。

値のアクセス器は値のアクセス器セット項目の下に位置します。

パイプラインの作成
パイプラインは、アクションを実行する個々のプロセスであるパイプラインステップを収集・整理します。
パイプラインを作成するには:
-
/pipelinesへアクセスしてください。
-
右側のペインの フォルダ タブで 「パイプライン」をクリックします。例えば、Form Testing Pipelineと名付けてください。
-
フォルダタブで「Write to Log Pipeline Step」をクリックすると、新しいパイプラインステップを作成できます。例えば「Write to Log Pipeline Step」と名付けてください。
-
パイプラインステップを選択し、フル ネーム 値のアクセクターを次のように設定します:

-
変更を保存してください。
価値を創造する読者
フォーム内のフィールドの値を読むために値リーダーを使って読みます。
価値ある読者を生み出すために:
-
/data access/value readers/Common/ に移動します。
-
ホームタブで新しいアイテムを作成するには、HttpRequest Content Value ReaderからDot Net Objectをクリックしてください。例えば、FormModel From Http Contentと名付けてください。
-
タイプフィールドをSitecoreに設定します。DataExchange.ExperienceForms.Models.FormModel, Sitecore.DataExchange.ExperienceForms.Models.

-
/data access/value readers/Common/ に移動します。
-
フォルダタブで**「生の値リーダー**」をクリックして新しいアイテムを作成します。例えば、名前をRaw Value Reader。
-
/data access/value readers/Common/ に移動します。
-
フォルダタブで「同期設定プラグイン値リーダー」をクリックして新しいアイテムを作成します。「同期設定プラグイン値リーダー」と名付けてください。
-
ストレージの場所をSourceに設定してください。

-
変更を保存してください。
パイプラインコンテキストビルダーの作成
パイプラインコンテキストビルダーコンポーネントは、適切な形式でリクエストデータを抽出し、パイプラインコンテキストを構築し、リクエストからデータのコンテキストを提供します。
パイプラインコンテキストビルダーを作成するには:
-
/テナントサービス設定/パイプラインコンテキストビルダーへ移動してください。
-
フォルダタブで「パイプラインコンテキストプラグインビルダー」をクリックして新しいアイテムを作成します。例えば、Pipeline Context Plugin Builderと名前を付けます。
-
Value Transformerフィールドを、前のステップで作成したhttpリクエスト値リーダーに設定してください。
-
Plugin Readersフィールドを、前のステップで作成した同期設定のプラグイン値リーダーに設定してください。

-
変更を保存してください。
テナントサービスエンドポイントの作成
DEFパイプラインを通じてリクエストデータをプッシュするためには、受信リクエストを解決するためにテナントサービスエンドポイント(TSE)が必要です。
テナントサービスエンドポイントを作成するには:
-
/Tenant Service Endpointsへ移動してください。
-
フォルダタブで「パイプラインテナントサービスエンドポイント」をクリックして新しいアイテムを作成します。例えば「フォーム提出エンドポイント」と呼びます。
-
エンドポイントは以下の表のパラメータで設定します:
パラメータ
内容
リクエスト値リーダー
Value Readers/Common/Raw Value Reader
パイプラインコンテキストビルダー
パイプラインコンテキストビルダー/パイプラインコンテキストプラグインビルダー
パイプライン
Pipelines/Form Testing Pipeline
-
有効にするチェックボックスを選択してください。変更を保存してください。
フォームの設定
ユーザーがフォームを保存した際にテナントサービスエンドポイントをトリガーするようにフォームを設定する必要があります。
フォームの設定:
-
Sitecore Launchpadで 「フォーム 」をクリックし、作成したフォームを選択します。
-
フォームの 「送信 」ボタンを選択してください。 「一般 」タブの 「アクション提出 」セクションでプラス記号をクリックすると、アクションのリストが表示されます。リスト内で**「DEF 同期プロセスをトリガー**」をクリックすると、送信アクションを追加できます。

-
「 テナントサービスエンドポイント選択 」ダイアログのData Exchange構造で、フォーム提出時にトリガーしたいテナントサービスエンドポイントを選択します。
-
接続文字列名フィールドに、テナントWebサービスのURLを指す接続文字列を入力します。

-
フォームをウェブページに添付して公開します。ユーザーがフォームを提出すると、テナントサービスエンドポイントが選択したパイプラインを実行します。
プロセスをトラブルシューティングしたい場合は、テナントサービスのログを確認してください。