フォームデータモデル(FDM)の使用 use-form-data-model

バージョン
記事リンク
AEM 6.5
ここをクリックしてください
AEM as a Cloud Service
この記事

data-integration

Experience Manager Forms のデータ統合機能により、各種のバックエンドデータソースを使用してフォームデータモデル(FDM)を作成できます。FDM は、様々なアダプティブFormsで、スキーマとして使用できます ワークフロー。 そのためには、データソースの設定を行い、そのデータソース内の有効なデータモデルオブジェクトとデータモデルサービスに基づいて、フォームデータモデル(FDM)を作成する必要があります。 詳しくは、以下のトピックを参照してください。

フォームデータモデル(FDM)は、JSON スキーマの拡張機能で、次の用途に使用できます。

アダプティブフォームとアダプティブフォームフラグメントの作成 create-af

次を作成できます アダプティブForms とアダプティブフォームフラグメント フォームデータモデル(FDM)に基づく。 フォームデータモデル(FDM)を使用してアダプティブフォームまたはアダプティブフォームフラグメントを作成するには、以下の手順を実行します。

  1. プロパティを追加画面の「フォームモデル」タブで、 次から選択 ドロップダウンリストから「フォームデータモデル」を選択します。

    create-af-1-1

  2. フォームデータモデルを選択」を選択して展開します。使用可能なすべてのフォームデータモデル(FDM)が一覧表示されます。

    フォームデータモデルを選択します。

    create-af-2-1

  3. アダプティブフォームフラグメントのみ)を参照してください。フォームデータモデル(FDM)内の 1 つのデータモデルオブジェクトのみに基づいて、アダプティブフォームフラグメントを作成できます。 フォームデータモデル定義 ​ドロップダウンを展開します。指定したフォームデータモデル(FDM)のすべてのデータモデルオブジェクトが一覧表示されます。 リストからデータモデルオブジェクトを選択します。

    create-af-3

    フォームデータモデル(FDM)に基づいてアダプティブフォームまたはアダプティブフォームフラグメントを作成すると、フォームデータモデルオブジェクトがに表示されます データソース アダプティブフォームエディターのコンテンツブラウザーのタブ

    note note
    NOTE
    アダプティブフォームフラグメントの場合は、オーサリング時に選択したデータモデルオブジェクトと、そのオブジェクトに関連付けられているデータモデルオブジェクトだけが、「データソース」タブに表示されます。

    data-model-objects-tab

    データモデルオブジェクトをアダプティブフォームまたはアダプティブフォームフラグメントにドラッグ&ドロップすると、フォームフィールドを追加できます。追加されたフォームフィールドには、メタデータのプロパティとデータモデルオブジェクトのプロパティとの連結が保持されます。この連結により、フォームの送信時に対応するデータソース内のフィールド値が更新され、フォームのレンダリング時に対応するデータソース内のフィールドに値が取り込まれます。

サンプルデータを使用したプレビュー preview-ic

フォームデータモデルエディターを使用して、フォームデータモデル(FDM)内のデータモデルオブジェクト用のサンプルデータを生成および編集できます。 このデータを使用して、アダプティブフォームをプレビューおよびテストできます。プレビュー表示を行う前に、「フォームデータモデルの操作」の説明に従って、サンプルデータを生成する必要があります。

サンプルデータが取り込まれた状態のアダプティブフォームをプレビューするには、オーサーモードでアダプティブフォームを開いて「プレビュー」を選択します。

フォームデータモデルサービスを使用したデータの事前入力 prefill

Experience Manager Forms には、アダプティブForms用に有効にできる標準のフォームデータモデル事前入力サービスが用意されています フォームデータモデル(FDM)に基づく。 この事前入力サービスは、アダプティブフォーム内のデータモデルオブジェクトに対してデータソースのクエリを実行し、フォームまたは通信のレンダリング時にデータを事前入力します。

アダプティブフォームに対してフォームデータモデル事前入力サービスを有効にするには、アダプティブフォームコンテナのプロパティを開き、基本アコーディオンの 事前入力サービス ドロップダウンで「フォームデータモデル事前入力サービス」を選択します。次に、各プロパティを保存します。

prefill-service

送信されたアダプティブフォームデータのデータソースへの書き込み write-af

ユーザーがフォームデータモデル(FDM)に基づいてフォームを送信するとき、データモデルオブジェクトに対して送信されたデータがそのデータソースに書き込まれるようにフォームを設定することができます。 このユースケースを実現するには、 Experience Manager Forms 提供する フォームデータモデル送信アクションは、フォームデータモデル(FDM)に基づくアダプティブFormsでのみ標準で使用できます。 これにより、データモデルオブジェクトに送信されたデータが、そのデータソースに書き込まれます。

フォームデータモデル送信アクションを設定するには:

  1. コンテンツブラウザーを開き、アダプティブフォームの​ ガイドコンテナ ​コンポーネントを選択します。

  2. ガイドコンテナプロパティ ガイドプロパティ アイコンをクリックします。アダプティブフォームコンテナダイアログボックスが開きます。

  3. 送信」タブをクリックします。

  4. 送信アクション ​ドロップダウンリストから、「フォームデータモデルを使用して送信」を選択します。

    アクションの設定

  5. 送信するデータモデル ​を指定します。

  6. 完了」をクリックします。

フォームを送信すると、設定されているデータモデルオブジェクトのデータが、各データソースに書き込まれます。さらに、フォームデータモデル(FDM)とレコードのドキュメント(DoR)を使用して、フォームの添付ファイルをデータソースに送信できます。 フォームデータモデル(FDM)について詳しくは、を参照してください。 AEM Forms データ統合.

NOTE
AEM as a Cloud Service では、フォーム送信を処理するための様々な送信アクションが標準で提供されます。これらのオプションについて詳しくは、アダプティブフォームの送信アクションの記事をご覧ください。

バイナリデータモデルオブジェクトのプロパティを使用して、フォームの添付ファイルをデータソースに送信することもできます。添付ファイルを JDBC データソースに送信するには、次の手順を実行します。

  1. バイナリプロパティを含むデータモデルオブジェクトをフォームデータモデル(FDM)に追加します。

  2. コンポーネントブラウザーの「添付ファイル」コンポーネントを、アダプティブフォームにドラッグ&ドロップします。

  3. 追加されたコンポーネント、 settings_icon の順に選択して、そのコンポーネントのプロパティブラウザーを開きます。

  4. 「バインド参照」フィールドで、 foldersearch_18 フォームデータモデル(FDM)に追加したバイナリプロパティに移動してそのプロパティを選択します。 必要に応じて、他のプロパティを設定します。

    check-button を選択して、プロパティを保存します。これで、添付ファイルフィールドがフォームデータモデル(FDM)のバイナリプロパティにバインドされました。

  5. アダプティブフォームコンテナプロパティの「送信」セクションで、「フォームの添付ファイルを送信」を有効にします。これで、フォーム送信時に、バイナリプロパティフィールド内の添付ファイルがデータソースに送信されます。

ルールを使用したアダプティブフォーム内のサービスの呼び出し invoke-services

フォームデータモデル(FDM)に基づくアダプティブフォームでは、次の操作を実行できます ルールの作成 フォームデータモデル(FDM)で設定されたサービスを呼び出すには、次の手順を実行します。 この サービスの呼び出し ルール内の操作では、フォームデータモデル(FDM)内の使用可能なすべてのサービスが一覧表示され、サービスの入力フィールドと出力フィールドを選択できます。 「指定値」というルールタイプを使用してフォームデータモデルサービスを呼び出し、そのサービスから返された出力に対するフィールドの値を設定することもできます。

例えば以下のルールの場合、従業員 ID を入力として使用する Get サービスが呼び出され、このサービスから返された値が、フォーム内の対応する扶養家族 ID フィールド、姓フィールド、名フィールド、性別フィールドに設定されます。

invoke-service

また、guidelib.dataIntegrationUtils.executeOperation API を使用して、ルールエディターのコードエディターで JavaScript を記述することもできます。

カスタム関数を使用したフォームデータモデル(FDM)の呼び出し invoke-form-data-model-using-custom-functions

カスタム関数を使用してルールエディターからフォームデータモデルを呼び出すことができます。フォームデータモデル(FDM)を呼び出すには、フォームデータモデルを許可リストに追加します。 許可リストにフォームデータモデルを追加するには、次の手順を実行します。

  1. https://server:host/system/console/configMgr で Experience Manager web コンソールに移動します。
  2. サービス呼び出し用のフォームデータモデルのアダプティブフォームレベルの許可リスト登録 - 設定ファクトリ」を見つけます。
  3. プラスアイコン をクリックして設定を追加します。
  4. コンテンツパスパターン ​を追加して、アダプティブフォームの場所を指定します。デフォルトでは、値は /content/forms/af/(.*) で、すべてのアダプティブフォームが含まれています。特定のアダプティブフォームのパスを指定することもできます。
  5. 追加 フォームデータモデルのパスパターン フォームデータモデル(FDM)の場所を指定します。 デフォルト値はです /content/dams/formsanddocuments-fdm/(.*) すべてのフォームデータモデル(FDM)が含まれます。 また、特定のフォームデータモデル(FDM)のパスを指定することもできます。
  6. 設定を保存します。

追加した設定は、「サービス呼び出し用のフォームデータモデルのアダプティブフォームレベルの許可リスト登録 - 設定ファクトリ」オプションに保存されます。

NOTE
AEM アーキタイププロジェクトを通じてカスタム関数を使用して、ルールエディターからフォームデータモデル(FDM)を呼び出すには、次の手順を実行します。
  1. 設定ファイルを作成します。
  2. getContentPathPattern および getFormDataModelPathPattern のプロパティを設定します。
  3. プロジェクトをデプロイします。

関連記事

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab