概要

XFA フォームテンプレート(*.XDP ファイル)を基にアダプティブフォームを作成することができます。この再利用により、既存の XFA フォームに費やした投資を保持することができます。XFA フォームテンプレートを使用したアダプティブフォームの作成方法については、テンプレートに基づくアダプティブフォームの作成を参照してください。

XDP ファイルのフィールドをアダプティブフォームで再利用することができます。これらのフィールドは、バインドされたフィールドと呼ばれます。バインドされたフィールドのプロパティ(スクリプト、ラベル、表示形式など)は、XDP ファイルからコピーされます。これらのプロパティには、値をオーバーライドできるものもあります。

AEM forms では、XDP ファイル内の対応するフィールドに後で変更があった場合に、アダプティブフォームのフィールドを同期された状態に保つことができます。この記事では、この同期を有効にする方法を説明します。

XFA フォームからアダプティブフォームにフィールドをドラッグすることができます
AEM forms のオーサリング環境では、XFA フォーム(左)からアダプティブフォーム(右)へとフィールドをドラッグすることができます

必要条件

この記事の情報を使用するには、次の領域に関する知識が推奨されます。

この記事の例に使用されているアセットを使用するには、次のセクションサンプルパッケージで説明されているとおりにサンプルパッケージをダウンロードしてください。

サンプルパッケージ

この記事では、更新された XFA フォームテンプレートを使用したアダプティブフォームの同期方法を、例を使って示しています。アセットは、この記事のダウンロードセクションからダウンロードできるパッケージに含まれています。

パッケージをアップロードすると、これらのアセットが AEM forms UI に表示されます。

パッケージマネージャーを使ってパッケージをインストールします: http://<サーバー>:<ポート>/crx/packmgr/index.jsp

パッケージには次のアセットが含まれています。

  1. sample-form.xdp:例として使用されている XFA フォームテンプレート
  2. sample-xfa-af:sample-form.xdp ファイルを基にしたアダプティブフォームただし、このアダプティブフォームにはフィールドは含まれていません。次の手順で、このアダプティブフォームにコンテンツを追加します。

アダプティブフォームへのコンテンツの追加

  1. http://<サーバー>:<ポート>/projects.html に移動します。要求された場合は、資格情報を入力します。
  2. 左側にある「フォーム」タブをクリックします。
  3. 作成者モードで sample-af-xfa を開き、編集します。
  4. コンテンツファインダーの「アダプティブフォーム・データモデル」タブから、NumericField1 と TextField1 をアダプティブフォームにドラッグします。
  5. NumericField1 のタイトルを AF Numeric Field に変更します。

注意:

前述の手順では、XDP ファイル内のフィールドのプロパティを上書きしました。したがって、このプロパティは、XDP ファイル内の対応するプロパティが後に変更されても同期されません。

XDP ファイル内の変更の検出

XDP ファイルまたはフラグメントに変更があった場合、AEM forms UI により、その XDP ファイルまたはフラグメントに基づくすべてのアダプティブフォームにフラグが付けられます。

XDP ファイルを更新した後、変更がフラグ付けされるには、その XDP ファイルを AEM forms UI に再度アップロードする必要があります。

例として、次の手順を使って sample-form.xdp ファイルを更新します。

  1. http://<サーバー>:<ポート>/projects.html に移動します。要求された場合は、資格情報を入力します。.
  2. 左側にある「フォーム」タブをクリックします。
  3. ローカルマシンに sample-form.xdp ファイルをダウンロードします。XDP ファイルが、任意のファイル解凍ユーティリティで抽出できる .zip ファイルでダウンロードされます。
  4. sample-form.xdp ファイルを開き、TextField1 のタイトルを Text Field から My Text Field に変更します。
  5. sample-form.xdp ファイルを AEM forms UI にアップロードしなおします。

XDP ファイルが更新されると、AEM forms UI で、その XDP ファイルに基づくアダプティブフォームの隣にアイコンが表示されます。このアイコンは、アダプティブフォームが XDP ファイルと同期されていないことを示すものです。次の画像では、sample-xfa-af フォームの隣にアイコンが表示されています。

アダプティブフォームが XDP ファイルと同期されていないことを示すアイコン

アダプティブフォームと最新の XDP ファイルとの同期

XDP ファイルと同期されていないアダプティブフォームが次回作成用に開かれたときに、次のメッセージが表示されます:このアダプティブフォームのスキーマ / フォームテンプレートは更新されました。新しいバージョンにリベースするには、ここをクリックします。

メッセージをクリックすると、アダプティブフォーム内のフィールドが XDP ファイル内の対応するフィールドと同期されます。

この記事で使用される例では、sample-xfa-af を作成者モードで開きます。メッセージが、アダプティブフォームの下部に表示されます。

アダプティブフォームを XDP ファイルと同期するよう促すメッセージ

プロパティの更新

XDP ファイルからアダプティブフォームにコピーされたプロパティは、作成者によってアダプティブフォーム内(コンポーネントダイアログより)で明示的に上書きされたプロパティを除き、すべて更新されます。更新されたプロパティのリストは、サーバーログで見ることができます。

例のアダプティブフォームでプロパティを更新するには、メッセージ内の「ここをクリック」のラベルが付いたリンクをクリックします。TextField1 のタイトルが、Text Field から My Text Field に変更されます。

 

注意:

AF Numeric Field のラベルが変更されなかったのは、アダプティブフォームへのコンテンツの追加で説明されているとおり、コンポーネントプロパティ ダイアログでこのプロパティを上書きしたからです。

XDP ファイルからアダプティブフォームへの新しいフィールドの追加

「フォーム階層」タブから元の XDP ファイルに後から追加された新しいフィールドは、アダプティブフォームへとドラッグすることができます。

「フォーム階層」タブのフィールドを更新するために、エラーメッセージ内のリンクをクリックする必要はありません。

XDP ファイルから削除されたフィールド

アダプティブフォームに以前コピーされたフィールドが XDP ファイルから削除されている場合には、XDP ファイルにフィールドが存在しないというエラーメッセージが作成者モード内で表示されます。そのような場合には、アダプティブフォームから手動でそのフィールドを削除するか、またはコンポーネントダイアログで bindRef プロパティを消去します。

次の手順では、この記事で使われている例の中のアセットに対してこの方法を使用する流れを説明します。

  1. sample-form.xdp ファイルを更新し、NumericField1 を削除します。
  2. AEM forms UI に sample-form.xdp ファイルをアップロードします。
  3. sample-xfa-af アダプティブフォームを作成のために開きます。次のエラーメッセージが表示されます:このアダプティブフォームのスキーマ / フォームテンプレートは更新されました。新しいバージョンにリベースするには、ここをクリックします。
  4. メッセージ内の「ここをクリック」のラベルが付いたリンクをクリックします。XDP ファイルにフィールドが存在しないというエラーメッセージが表示されます。

削除されたフィールドも、フィールドにエラーが存在することを示すアイコンでマークされます。

注意:

アダプティブフォームのフィールドで誤ったバインド(編集ダイアログでの無効な bindRef 値)を持つフィールドも、削除されたフィールドとみなされます。これらのエラーを修正しないままアダプティブフォームを発行すると、フィールドは、バインドされていない通常のアダプティブフォームフィールドとして出力 XML ファイルのバインドされていないセクションに含まれます。

ダウンロード数

ダウンロード

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー