カスタム検証の編集

  1. カスタム検証を編集するデータ・チェーン・オブジェクトを検査します。
  2. 次のいずれかのアクションを実行します。
    • アプリケーション、ノード・タイプ、階層セットおよび汎用アプリケーションのディメンションの場合: 「検証」タブで、「編集」をクリックします。
    • 汎用以外のアプリケーションのディメンションの場合: 「検証」タブで、「カスタム」サブ・タブをクリックし、「編集」をクリックします
  3. 検証インスペクタの「全般」タブで、「編集」をクリックして検証の名前または説明を編集します。
  4. 「定義」タブで、次の情報を入力して検証を定義します:
    • 「有効」フラグ: カスタム検証が実施されるかどうかを指定します。デフォルトで検証は無効化されており、次の条件を満たす場合のみ有効化できます。
      • 有効な式が定義されています
      • 少なくとも1つのトリガー・アクションまたはトリガー・プロパティが構成されています
      • エラー・メッセージが定義されています

      Note:

      ノード・タイプまたは階層セット・インスペクタの「検証」タブから検証を有効または無効にすることもできます。カスタム検証の有効化、無効化または削除を参照してください。
    • : 「式の定義」 式の定義をクリックして式ビルダーを開き、検証のビジネス・ロジックを定義します。式を使用したカスタム・ビジネス・ロジックの定義を参照してください。

      検証の式はブール値を返す必要があります。式がTrueの値を返す場合、検証は成功です。式がFalseの値を返す場合、検証は失敗し、エラー・メッセージが表示されます。

    • トリガー・アクション: 検証が実行される1つ以上の要求アクションを選択するか、「すべて」チェック・ボックスを選択してすべてのアクションを選択します。
    • トリガー・プロパティ: 更新された場合に検証が実行される1つ以上のプロパティを選択するか、「すべて」チェック・ボックスを選択してすべてのプロパティを選択します。
      • ノード・タイプ検証の場合、そのノード・タイプに割り当てられているすべてのプロパティを選択できます。
      • 階層セット検証の場合、その階層セットで参照される任意のノード・タイプに割り当てられているすべてのプロパティを選択できます。

      Tip:

      検証は、要求内のすべてのトリガー・アクションおよびトリガー・プロパティに対して実行されます。つまり、複数のトリガー・プロパティを追加し、それらのすべてが失敗した場合、複数のエラー・メッセージを受信します。要求でビジネス・ロジックを適用する最小数のトリガー・プロパティまたはトリガー・アクションを追加する必要があります。

    • 要求検証スコープ: 要求の検証時に検証が実行されるコンテキストを選択します。
      • ノード(デフォルト): 検証は、要求アクションのノードのコンテキストで評価されます。ノード自体に変更が加えられると、検証がトリガーされます。
      • : 検証は、要求アクションのノードの親のコンテキストで評価されます。階層のノードに変更が加えられると、スコープが「親」である検証に対して、要求アクションのノードの親が評価されます。
      • 前の親: 要求で親が変更されている場合、検証は、以前の親ノード(ノードの移動元の親)のコンテキストで評価されます。

        Note:

        スコープを「前の親」に設定すると、トリガー・アクションは「移動」に設定され、トリガー・プロパティは「なし」に設定されます。これらの設定は変更できません。
      • 両方の親: 要求で親が変更されている場合、検証は、以前の親ノード(ノードの移動元の親)と新しい親(ノードの移動先の親)の両方のコンテキストで評価されます。

        Note:

        スコープを「両方の親」に設定すると、トリガー・アクションに「移動」アクションが追加されます。追加のトリガー・アクションおよびトリガー・プロパティを指定できます。ただし、前の親は移動アクションに対してのみ評価されます。

      要求検証スコープについて、次の点に注意してください:

      • スコープは、要求アイテムの検証時にのみ使用されます。ビューポイントまたはエクスポートを検証する場合:
        • 検証のスコープが「親」または「両方の親」の場合、スコープ設定は無視され、検証は「ノード」スコープを使用して実行されます(つまり、検証が定義されているノードで検証が実行されます)。
        • 検証のスコープが「前の親」の場合、検証は検証操作中には実行されません。
      • リスト・ビューポイントの要求を検証する場合、スコープが「親」、「前の親」または「両方の親」である検証は実行されません。
      • 要求を検証する際、トリガー・アクションおよびプロパティは、要求で実行された子アクションに基づいて評価されます。たとえば、スコープが「親」で、トリガー・プロパティがCore.Descriptionである検証は、その親の子ノードで説明プロパティが更新されるたびに評価されます。
    • 要求状況: 要求のコンテキストでカスタム検証が実行される状況を選択します:
      • コミット済(デフォルト): 要求アイテムおよびアクションがビューポイントに適用されたのデータに対して検証が評価されます。「コミット済」状況でデータ条件を評価するときに、要求で除去または削除されたノードは除外されます。
      • ビジュアル化済: 要求アイテムおよびアクションがビューポイントに適用されるのデータに対して検証が評価されます。「ビジュアル化済」状況でデータ条件を評価するときに、要求で除去または削除されたノードも含まれます。

        Note:

        「ビジュアル化済」状況を使用する評価を実行するのは、要求アイテムを評価するときのみであり、ビューポイントを評価するときには実行しないでください。
    • 重要度: 「要求送信」、「承認」および「コミット」ステージおよびビューポイントの検証時とディメンションのエクスポート時における検証の重要度(「エラー」「警告」「無視」)を選択します。検証の適用および重要度の構成を参照してください。
    • エラー・メッセージ: 検証に失敗した場合にユーザーに表示されるメッセージを入力します。

      Tip:

      検証失敗のメッセージを構成する場合は、問題が見つかった場所を特定できるように、検証のコンテキスト(ノードまたは親)を指定します。
  5. 「保存」をクリックします。