Oracle Approvals Managementインプリメンテーション・ガイド リリース12 E06007-01 | ![]() 目次 | ![]() 前へ | ![]() 次へ |
承認者グループは、順序付けられた1人以上の承認者(個人またはユーザー・アカウント、あるいはその両方)の集合またはリストで、ルールを評価する際に動的に生成されます。通常は、承認前または承認後ルールによって、承認者グループのメンバーがトランザクションの承認者リストに(順番に)追加されます。通常、承認者グループは、経営陣が承認する前または後にトランザクションを承認する必要がある人事管理部門や社内法務部門など、トランザクションの権限チェーン外部の専門的な承認者を表します。ただし、承認者グループは必要に応じて権限チェーンに挿入できます。
承認者グループを作成すると、前承認および後承認処理タイプの対応する処理が自動的に作成されます。これらの処理はすべてのトランザクション・タイプに使用できます。
承認者グループはネスト可能です。つまり、承認者グループは、別の承認者グループのメンバーにできます。次の図は、これから説明する例を表しています。
たとえば、購買部門では、コンピュータ・ハードウェアの購入について後承認処理を実行するために、次のグループを定義できます。
COMP_APP_1 = {Jim Small} COMP_APP_2 = {COM_APP_1, Jane Smith} COMP_APP_3 = {COMP_APP_2, Liz Large}
COMP_APP_3のメンバーシップはJim Small、Jane Smith、Liz Largeの順に評価されます。
ネストした承認者グループは、既存のグループの全メンバーを新しいグループに追加することで作成できます。ネスト承認者グループを作成するには、「新規承認者グループの作成」ページで「承認者タイプ」に「ネスト・グループ」を選択し、必要なグループを選択します。「新規承認者グループの作成」ページの選択リストには、次の3つの条件を満たすグループのみが表示されます。
そのグループ自体がターゲット・グループでないこと。
そのグループにターゲット・グループが(明示的または暗黙的に)含まれていないこと。
そのグループがターゲット・グループにすでに含まれていないこと。
これらの要件の最初の2つは、ネスト・グループの解決において無限ループを防止します。第3の要件は、グループBがすでにグループAのメンバーである場合は、グループBを再度グループAに追加できないという狭い意味でのグループ・メンバーの重複を防止します。ただし、グループAにグループBが含まれており、グループBにグループCが含まれている場合は、グループAにグループCを追加できます。この場合、グループAのメンバーシップ・リストでのメンバーの順序は、グループBのメンバーの後に、グループBのメンバー以外のグループCのメンバーが配置されます。したがって、次のようになります。
B = {1, 2} C = {3, 4, B} A = {B, C} = {{1, 2}, {3, 4, B}} = {{1, 2}, {3, 4, {1, 2}}} = {1, 2, 3, 4}
ネスト承認者グループを活用すると、AME承認者グループを使用して承認者マトリックスを作成できます。たとえば、前述のコンピュータ・ハードウェアの承認者グループを定義している購買部門では、対応する3つの承認後ルールを定義できます。
{COMPUTER_HARDWARE}のITEM_CATEGORYであり、ITEM_AMOUNT <= 1,000 USDの場合は、COMP_APP_1グループからの後承認が必要です。
{COMPUTER_HARDWARE}のITEM_CATEGORYであり、1,000 USD < ITEM_AMOUNT <= 10,000 USDの場合は、COMP_APP_2グループからの後承認が必要です。
{COMPUTER_HARDWARE}のITEM_CATEGORYであり、10,000 USD < ITEM_AMOUNTの場合は、COMP_APP_3グループからの後承認が必要です。
これらのルールは、対象となる3つのグループの承認者について、署名権限の階層を項目当たりのドル金額で効果的に定義しています。前述のルールのように、一連の承認ルールとともに、ネスト・グループ以外のメンバーを含まないネスト承認者グループの階層を事前定義できます。これによって、顧客は、インストールの際に個人またはユーザー承認者を含むグループを簡単に移入できます。
静的グループには動的グループをネストできます。一方、動的グループには動的グループも静的グループもネストできません。動的グループに挿入できるのは個人またはユーザーのみです。
AMEでは、非再帰的な承認者リストを承認者グループごとに保持します。したがって、実行時にグループのネストを評価する必要がありません。さらに、1回の問合せですべての静的メンバーとすべての動的メンバーの問合せがフェッチされ、次に動的メンバーの問合せが順番に実行されて、結果がメンバーシップ・リストに代入されます。これは、AMEのパフォーマンスに影響を与えることなく、任意の深さにグループをネストできることを意味します。ただし、1つのグループにネストする動的グループの数は、制限するようにしてください。
承認者グループを使用する処理タイプは、ブール型の必要属性ALLOW_EMPTY_APPROVAL_GROUPSを共有します。この属性の値がtrueの場合は、実行時にメンバーがいない承認者グループが許可されます。この属性の値がfalseの場合は、承認者グループにメンバーが登録されていないと例外が発生します。
処理タイプの中には、承認者グループを前承認、承認権限チェーンおよび後承認に使用できるものがあります。承認者グループの使用時期は、次のファクタを使用して決定できます。
前承認および後承認に対する承認者グループの使用
通常、承認者グループは、経営陣が承認する前または後にトランザクションを承認する必要がある人事管理部門や社内法務部門など、トランザクションの権限チェーン外部の専門的な承認者(つまり対象分野の専門家(SME)である承認者)を表します。
承認権限チェーンに対する承認者グループの使用
場合によっては、複数の承認者タイプを含む権限チェーンや、階層構造がない承認者タイプが指定されている権限チェーンの生成が必要になることがあります。このような場合は、ネスト承認者グループを使用して承認者階層を構成し、「承認者グループ権限チェーン」処理タイプの階層を使用できます。
承認者グループには様々なプロパティがあります。
名称
承認者グループには、50バイトまでの名称を指定できます。通常、承認者グループ名には、特定のトランザクション・タイプや承認者サブリストを示す名称(前承認、権限チェーン、後承認)を付けないようにしてください。これは、承認者グループを当初は特定のトランザクション・タイプまたはサブリスト用に作成した場合でも、あらゆるトランザクション・タイプおよびサブリストで使用できるためです。同様に、承認者グループ名には、グループのメンバーシップが(現在)動的か静的かを示す名称は避けてください。これは、プロパティが変更される可能性があるためです。承認者グループには、組織内でのグループの職階や機能を反映する名称を付けてください。たとえば、「オフィス家具購買依頼の動的な前承認者」より「オフィス家具の購入」のほうが適切です。
摘要
承認者グループの摘要は、100バイトまで記述できます。承認者グループの名称に適用される注意事項が摘要にも同様に適用されます。
オーダー番号
すべての承認者グループにはオーダー番号があります。承認者グループのオーダー番号によって、同じサブリスト内の承認者グループの順序が決まります。承認者グループのオーダー番号を、グループのメンバーのオーダー番号(後述の「メンバーシップ」を参照)と混同しないでください。
投票制度
承認者グループには、投票制度が割り当てられます。投票制度によって、グループのメンバーへの通知順と、グループでの承認裁定方法が決まります。次の4つの制度を使用できます。
シリアル投票
シリアル投票では、メンバーのオーダー番号と同じ順序で、メンバーに順々に通知が送信されます。同じ番号の場合は適宜調整されます。グループの決定として承認となるためには、すべてのメンバーが承認する必要があります。
合意投票
合意投票では、メンバーにパラレルに通知が送信されます。グループの決定として承認となるためには、すべてのメンバーが承認する必要があります。この投票の場合、メンバーのオーダー番号は無視されます。
最初の応答者が獲得投票
最初の応答者が獲得投票では、メンバーにパラレルで通知が送信されます。承認を要求する通知に応答した最初のメンバーの応答が、承認に対するグループの決定となります。残りのメンバーの応答も記録されますが、それらは無視されます。この投票の場合、メンバーのオーダー番号は無視されます。
オーダー番号投票
オーダー番号投票では、オーダー番号順に通知がメンバーに送信されます。同じオーダー番号のメンバーにはパラレルで通知が送信されます。グループの決定として承認となるためには、すべてのメンバーが承認する必要があります。
処理リスト
承認者グループには、2つのメンバーシップ・リストを保持できます。特定の時点で有効にできるのは1つのリストのみです。最低限必要なことは、いずれか一方のリストを定義することです。両方のリストを定義してもかまいません。2つのメンバーシップ・リストは次のとおりです。
静的メンバーシップ・リスト
グループの作成または編集時に、AMEの承認者問合せウィザードを使用して承認者グループの静的メンバーを選択します。
動的メンバーシップ・リスト
グループの作成または編集時に、入力したSQL問合せを実行することで、承認者グループの動的メンバーが生成されます。問合せでフェッチされる各行は、次の2つのいずれかの形式であることが必要です。
第1の形式は、承認者タイプ・ラベルperson_idまたはuser_idのいずれかの後にコロンが付き、その後に適切な承認者タイプの有効なIDが続く形式です。注意: ラベルの大/小文字は区別されません。Person_idとperson_idは同等です。
第2の形式は、wf_rolesロール・タイプ(orig_system)の後にコロンが付き、その後に有効なwf_roles.orig_system_idが続く形式です。
問合せから戻る行の順序によって、実行時の動的メンバーのオーダー番号が決まります。問合せでは、トランザクションIDプレースホルダtransactionIdを参照できます。
承認者グループは、「承認者グループ」タブを使用して作成、編集および削除します。
承認者グループを作成する手順は、次のとおりです。
「新規承認者グループの作成」ページを使用します。
「承認者グループ」タブをクリックして「承認者グループ」ページを表示します。ビジネス・ダッシュボードからナビゲートしている場合は、ビジネス・ダッシュボードにある「承認プロセス設定」で、必要なトランザクション・タイプを選択し、「承認者グループ」リンクをクリックします。
「作成」をクリックして「新規承認者グループの作成」ページをオープンします。
グループの名称と摘要を入力します。
注意: 承認者グループを任意のトランザクション・タイプまたは承認者サブリストで使用できるように、特定のトランザクション・タイプまたは承認者サブリストを示す指定(前承認、権限チェーン、後承認など)は避けてください。
同一サブリスト内での承認者グループの順序を決定するオーダー番号を入力します。
グループのメンバーに通知する順序とグループとしての承認の裁定方法を決定する投票方法を選択します。
グループのメンバーシップ・リストを決定する使用タイプを選択します。動的使用タイプを選択した場合は、SQL問合せを入力し、「検証」をクリックして問合せが適切であることを確認します。静的使用タイプを選択した場合は、「グループ・メンバー」リージョンに静的承認者グループのメンバーを入力する必要があります。既存のグループのすべてのメンバーを新しいグループに追加するには、ネスト承認者グループを作成します。ネスト承認者グループを作成するには、「承認者タイプ」で「ネスト・グループ」を選択し、必要なグループを選択します。
注意: 動的承認者グループのSQL問合せでは、トランザクションの各下位項目ごとに異なる承認者を生成できます。この機能を有効にするには、動的承認者グループの動的問合せに、トランザクションIDに加えて、項目区分および項目ID変数を指定する必要があります。たとえば、次のように問合せを指定します。
select
'PER:'||person_id from invoice_table
where transaction_id = :transactionId
and item_class = :itemClass
and item_id = :itemId
別の承認者グループを作成するには、「別の作成」をクリックします。
「適用」をクリックして承認者グループをトランザクション・タイプに追加し、このグループを他のトランザクション・タイプで利用できるようにします。
注意: 新しい承認者グループは、承認者グループのオーダー番号順にリストに表示されます。承認者グループを作成すると、対応する承認者グループ処理が自動的に作成されます。
承認者グループに対する変更には、様々な種類の変更があります。承認者グループの名称や摘要を変更したり、グループ・メンバーを削除することができます。
「承認者グループの更新」ページを使用します。
「承認者グループ」タブをクリックします。
編集する承認者グループの「更新」アイコンを選択します。
必要なプロパティを変更します。
承認者グループの静的メンバーシップにメンバーを追加するには、「グループ・メンバー」リージョンの「別の行の追加」をクリックします。
承認者グループの静的メンバーシップから1人以上のメンバーを削除するには、承認者の横の「削除」アイコンをクリックし、削除を確認します。
「適用」をクリックして、変更内容を発行します。
承認者グループは、事前定義グループでなく、現行または将来のルールで使用されない場合にのみ削除できます。
1つ以上の承認者グループを削除する手順は、次のとおりです。
「承認者グループ」ページを使用します。
「承認者グループ」タブをクリックします。
削除する承認者グループの「削除」アイコンを選択します。
警告: 削除した承認者グループを使用している無効なルールを元に戻すことはできません。
プロンプトに従って削除を確認します。