要求エンリッチメントの理解

要求エンリッチメントにより、ポリシーの承認者は、要求を承認する前に要求アイテムを変更できます。変更できるアイテムとアクションは、ビューでの承認者の権限とデータ・アクセスによって異なります。

承認ポリシーのエンリッチメントを有効化すると、ビューの少なくとも1つのデータ・オブジェクトに対する参加者(書込み)権限を持つ承認者は、承認フェーズ中にエンリッチメントを実行できます。エンリッチ者が実行できるアクションは、ビューのエンリッチ者の権限およびデータ・アクセスのみに依存します。

Note:

要求送信者のデータ・アクセスは考慮されません。これは、元の要求送信者が実行できなかった要求のアクションをエンリッチ者が実行できる可能性があることを意味します。

エンリッチ者が実行できる変更は、元の要求のポリシーまたはデータ・オブジェクトに限定されません。要求のデータ・オブジェクトのポリシーに対してエンリッチメントが有効な場合、エンリッチ者は、自分の権限およびデータ・アクセスで許可されるビューの要求アクションを実行できます。

たとえば、一般会計アプリケーションおよびPlanningアプリケーションのビューポイントを含むメンテナンス・ビューがあり、一般会計アプリケーションにエンリッチメントが有効になった承認ポリシーがあるとします。コスト・センターを一般会計に追加する要求が送信されるとき、GLポリシーの承認者にPlanningアプリケーションに対する参加者(書込み)アクセス権もある場合は、承認する前にPlanningアプリケーションにもコスト・センターを追加できます。

考慮事項

  • データ・チェーン・オブジェクトの複数のポリシーに承認者が含まれるとき、任意のポリシーのエンリッチメントが有効な場合、承認者は要求をエンリッチできます。
  • エンリッチ者は、要求に変更を加えるには、現在招待されている必要があります。要求が要求ステージでない場合(たとえば、別の承認者が要求をプッシュバックした場合)、エンリッチ者は要求を変更できません。
  • エンリッチ者が実行できる要求アクションおよびプロパティ更新を決定する際、エンリッチ者のビューの権限およびデータ・アクセスが考慮されます(データ・アクセスの構成を参照)。例:
    • エンリッチ者は、ノード・タイプで追加のみを実行するデータ・アクセスがある場合、要求アイテムを追加または削除してノードを削除できません。
    • エンリッチ者は、プロパティへの表示のみアクセスがある場合、要求アイテムを追加または削除してそのプロパティを変更できません。
  • エンリッチ者は、送信者または他のエンリッチ者が実行した以前のアクションを反転または変更する要求アクションを実行できます。

エンリッチされた要求の検証および承認

エンリッチ者が要求に変更を加えるかどうかに関係なく、エンリッチ者は承認者でもあるため、自分に割り当てられた要求を承認する必要があります。エンリッチ者が要求を承認すると、エンリッチ者の権限およびデータ・アクセスに基づいてデータ検証が実行されます。検証および承認プロセスは次のとおりです:

  • 検証エラーが発生した場合:
    • 承認者がエンリッチ者で、検証に失敗したアクションを担当している場合、要求は承認されません。要求はビューに開いたままで、検証失敗を示すメッセージが表示されます。エンリッチ者は、データの問題を修正したり、要求を送信者にプッシュバックしたり、要求を却下することにより、要求に対してアクションを実行して検証失敗を修正する必要があります。
    • 承認者が検証に失敗したアクションを担当していない場合、要求は承認され、新しい招待者が計算されます。
  • 検証エラーが発生していない場合、要求は承認され、新しい招待者が計算されます。

すべての承認ポリシーが満たされても検証エラーが発生する場合は、送信者に通知されます。送信者は、検証の問題が発生している要求アイテムを削除でき、それには、送信者の権限およびデータ・アクセスに含まれないアクションまたはプロパティを含む要求アイテムも含まれます。

検証エラーがない場合、要求はコミットされます。