フォームでのメッセージの表示
検証ルールを使用して、特定の条件が満たされた場合にメッセージを表示します。 ルールを作成するときは、ルールを適用する条件を定義し、表示するメッセージを定義します。
検証ルールは、特定のページではなく、オブジェクト・レベルで設定されます。 つまり、フォームの検証ルール(たとえば、BudgetDetailsビジネス・オブジェクトを編集するためのフォーム)を定義すると、そのフォームが使用され、条件が満たされるすべてのページにルールが適用されます。
検証ルールは、フォームに入力されたデータに基づいて何らかのタイプの警告メッセージを表示する場合に特に役立ちます。 「人員数」が1000を超えている場合に、予算額を更新するようユーザーに通知するメッセージを表示するとします。 「人員数」フィールドに入力された値をチェックするルールを作成し、次のようなメッセージを次の形式で表示できます:
ノート:
検証ルールでは、oj-dyn-formフォーム・コンポーネントを使用してレンダリングされたフォーム内のメッセージのみが表示されます。 古いバージョンのフォーム・コンポーネント(oj-dynamic-form)を使用してレンダリングされたフォームがアプリケーションにある場合、それらのフォームで検証ルールが正しく機能しません。
ページで使用されているフォーム・コンポーネントのバージョンを確認するには、次のようにします :
- フォーム・コンポーネントを選択して、コンポーネントの詳細ペインを「プロパティ」ペインで開きます。
- コンポーネントの名前の上にカーソルを置いて「情報」アイコン(
)を表示し、アイコンの上にカーソルを移動してコンポーネントの「情報」ポップアップを開きます。
「前述の例では、このフォームがoj-dyn-formフォーム・コンポーネントを使用してレンダリングされていることがポップアップに示されています」。
フィールドを検証するルールの作成
上の例のように動作するルールを作成する方法を見てみましょう。「人員数」フィールドの値が1000を超える場合に、メッセージをフォームに表示します。
検証ルールを作成するには:
ルールに別のメッセージを追加するには、別のフィールドに異なるテキストが表示されているメッセージを記述し、「+メッセージ」をクリックして新しいメッセージを作成し、その詳細を指定します。
ルールが機能しているかどうかを確認するには、ライブ・ビューでページを表示し、ルールをトリガーする値を入力してフォームをテストします。
検証ルールでテンプレートを使用
検証ルールを使用して、oj-dyn-formコンポーネントを使用してレンダリングされた動的フォームでのみメッセージを表示できます。 ただし、フォームでフィールド・テンプレートを使用する場合は、メッセージを表示するメカニズムを手動で構成する必要があります。
oj-dyn-formでフィールド・テンプレートを使用する場合は、フォーム・コンポーネントで検証メッセージをリスニングし、フォームにメッセージを表示するメカニズムを作成する必要があります。 フィールド・テンプレートでは、表示可能なメッセージは$messagesコンテキストを介して公開されます。
ノート:
エディタで検証ルールを構成する場合、メッセージに対して選択できるターゲット・フィールドは1つのみです。 複数のフィールドにメッセージを表示する場合は、そのメカニズムを手動で作成する必要があります。








