アダプティブフォームの自動保存 auto-save-an-adaptive-form
アダプティブフォームの新規作成または AEM Sites ページへのアダプティブフォームの追加には、最新の拡張可能なデータキャプチャコアコンポーネントを使用することをお勧めします。これらのコンポーネントは、アダプティブフォームの作成における大幅な進歩を表し、ユーザーエクスペリエンスの向上を実現します。この記事では、基盤コンポーネントを使用してアダプティブフォームを作成する古い方法について説明します。
アダプティブフォームを設定して、イベントまたは既定の時間間隔に基づいてコンテンツの自動保存を開始できます。デフォルトでは、アダプティブフォームのコンテンツは、保存ボタンを押したときなど、ユーザーアクション時に保存されます。自動保存オプションは次のようなときに便利です。
- 匿名ユーザーおよびログインユーザーに対してコンテンツを自動保存する
- ユーザーの介在をほとんど或いはまったく必要としないでフォームのコンテンツを保存する
- ユーザーのイベントに基づいてフォームのコンテンツの保存を開始する
- 特定の時間間隔が経過するたびにフォームのコンテンツを繰り返し保存する
アダプティブフォームの自動保存を有効にする enable-autosave-for-an-adaptive-form
アダプティブフォームの場合、自動保存オプションは最初は有効にはなっていません。自動保存オプションは、アダプティブフォームのプロパティの「自動保存」セクションで有効にすることができます。「自動保存」セクションには、その以外の設定オプションがいくつか用意されています。次の手順を実行して、アダプティブフォームの自動実行オプションを有効にし設定します。
-
プロパティの「自動保存」セクションにアクセスするには、コンポーネントを選択して、 /アダプティブフォームコンテナ を選択して、「 」を選択します。
-
「自動保存」セクションで、自動保存オプションを 有効 にします。
-
アダプティブフォームイベント ボックスで、1 または TRUE を指定して、フォームがブラウザーに読み込まれたときに自動保存を開始します。トリガーされて true を返したときにフォームのコンテンツの保存を開始する条件式をイベントに指定することもできます。
-
トリガーを指定します。設定に従い、自動保存がトリガーされます。以下のオプションがあります。
- 時刻ベース:指定の時間間隔に基づいてコンテンツの保存を開始するには、このオプションを選択します。
- イベントベース:イベントがトリガーされたときにコンテンツの保存を開始するには、このオプションを選択します。
トリガーを選択すると、方法の設定ボックスが有効になります。方法の設定ボックスでは、次のことができます。
- 時刻ベース のトリガーを選択した場合は、時間間隔を指定します。
- イベントに基づく トリガーを選択した場合は、イベントの名前を指定します。
独自の方法を作成してリストに追加することもできます。詳しくは、フォームを自動保存するためのカスタム方法を実装を参照してください。
-
(時間ベースの自動保存のみ)次の手順を実行して、時間ベースの自動保存のオプションを設定します。
- この間隔で自動保存 ボックスで、時間間隔を秒数で指定します。間隔ボックスに指定されている秒数が経過するたびに、フォームは繰り返し保存されます。
-
(イベントベースの自動保存のみ)次の手順を実行して、イベントベースの自動保存のためのオプションを設定します。
- 「このイベントの後に自動保存」ボックスで、GuideBridge イベントを指定します。式が TRUE に評価されるたびに、フォームが保存されます。
-
(オプション)匿名ユーザーに対するコンテンツを自動的に保存するには、「匿名ユーザーの自動保存を有効にする」オプションを選択し、「OK」をクリックします。
note note NOTE 自動保存オプションを匿名ユーザーに対して機能させるには、すべてのユーザーがフォームのプレビュー、確認および署名を行えるように Forms 共通設定サービスが設定されていることを確認します。 このサービスを設定するには、 https://server:port/system/console/configMgr
にある AEM web コンソール設定に移動して Forms 共通設定サービス を編集し、「許可」フィールドで「すべてのユーザー」オプションを選択して、設定を保存します。
アダプティブフォームの自動保存を有効にするカスタム方法を実装 implement-a-custom-strategy-to-enable-autosave-for-adaptive-forms
カスタムイベントを実装して自動保存機能をトリガーできます。次の手順を実行して、カスタムイベントを作成し実装します。
-
クライアントライブラリとクライアントライブラリフォルダーを作成します。手順について詳しくは、クライアント側ライブラリの使用ドキュメントを参照してください。
例えば、次のスクリプトでは、カスタムの
emailFocusChange
イベントを使用して自動保存機能をトリガーしています。code language-javascript window.addEventListener("bridgeInitializeStart", function (){ guideBridge.connect(function () { guideBridge.on("elementFocusChanged", function (event,data) { if(data.target.name === 'Email') { guideBridge.trigger("emailFocusChange"); } }); }); });
note note NOTE クライアントライブラリフォルダーの作成時に、カテゴリプロパティが定義されます。カテゴリプロパティに割り当てた値を書き留めておきます。 -
アダプティブフォームを作成者モードで開きます。
-
編集モードでコンポーネントを選択し、 /アダプティブフォームコンテナ/ を選択します。
-
プロパティで「基本」セクションを開きます。クライアントライブラリのカテゴリ ボックスで、クライアントライブラリフォルダーの作成時に定義したカテゴリプロパティの値を入力します。
-
「自動保存」セクションを開きます。このイベント後に自動保存 ボックスで、クライアントライブラリで既に定義されているカスタムイベントを指定します。「OK」をクリックします。