作業ステータスの例
以下の情報は、下記の例で使用されています。
作業ステータスコード
デフォルトコードは両方に設定されています。
すべての方法がオープン、つまりすべてに設定されています。
作業ステータス |
DM |
JRN |
MAN |
COMM |
DOCS |
管理者 |
ロック未設定 |
すべて |
すべて |
すべて |
すべて |
すべて |
両方 |
開始済 |
すべて |
すべて |
すべて |
すべて |
すべて |
オーナー |
アップロード |
すべて |
ロック中 |
ロック中 |
ロック中 |
ロック中 |
マネージャ |
提出 |
ロック中 |
オーナー |
すべて |
すべて |
すべて |
オーナー |
仕訳帳 |
ロック中 |
ロック中 |
ロック中 |
すべて |
すべて |
オーナー |
承認 |
ロック中 |
ロック中 |
ロック中 |
ロック中 |
ロック中 |
マネージャ |
モデル作業ステータスディメンション
エンティティはオーナーディメンションとして使用されます。
可と指定されたディメンションは非オーナーディメンションです。
残りのディメンションは、ロックの範囲または領域を定義する際に考慮されません。
コードモデルディメンション名 |
作業ステータス |
CATEGORY |
可 |
ENTITY |
オーナー |
P_ACCT |
いいえ |
P_ACTIVITY |
いいえ |
P_DATASRC |
可 |
RPTCURRENCY |
いいえ |
TIME |
可 |
エンティティ構造
最上位エンティティ L1 のオーナーはテスト実施者の内部ユーザ TESTUSER_ALL です。
残りの親と子は、例を説明するのに役立つテスト用オーナーです。
ID |
CURRENCY |
DESCRIPTION |
OWNER |
PARENTH1 |
L1 |
EU |
最上位 |
TESTUSER_ALL |
|
LD1 |
US |
親 10 |
TESTUSERC |
L1 |
L9000 |
US |
親 19 |
TESTUSERD |
LD1 |
L9100 |
US |
子 191 |
TESTUSERE |
L9000 |
L9200 |
US |
子 192 |
TESTUSERE |
L9000 |
L9300 |
US |
子 193 |
TESTUSERE |
L9000 |
LD2 |
US |
親 20 |
TESTUSERF |
L1 |
L8000 |
US |
親 28 |
TESTUSERG |
LD2 |
L8100 |
US |
子 281 |
TESTUSERF |
L8000 |
L7000 |
US |
子 201 |
TESTUSERF |
LD2 |
例
開始するには、モデルにデータを入力します。
この例では、エンティティメンバー L1 の子のデータを使用します。
ロックは設定されてないので、自由にデータを入力できます。
オーナーによるロックの設定
オーナー TestUserE は独自のエンティティ L9100 を設定し、親レベルの非オーナーディメンションメンバー 2017.Q1 を設定することができます。
ただし、ステータスは非オーナーディメンションの子メンバーに拡張されるので (非オーナーディメンションの親メンバーのストレージなし)、オーナーはエンティティ L9100 と 2017.Q1 の現在のステータスを表示できません。
オーナーは、ベースメンバー 2017.JAN によって個々のステータスを表示することができます。
オーナーは、管理者作業ステータスを連続した順番で設定する必要があります。アップロード後の次の作業ステータスが提出なので、アップロードを提出に設定することはできますが仕訳帳には設定できません。
これは逆の場合も当てはまります。オーナーは、順番に不備のある管理者オーナー作業ステータスを設定することができません。仕訳帳を開始済に設定することはできません。これは次の 2 つのルールに違反するためです。
仕訳帳の前のステータスは提出です。したがって、これが唯一の選択肢です。
アップロードは管理者マネージャ作業ステータスであり、提出作業ステータスと開始済作業ステータスの間にあります。オーナーはマネージャによって管理される作業ステータスをスキップできません。
マネージャ 1 によるロックの設定
最初のステータスは、オープン (ロック未設定) として定義された管理者オーナーステータスなので、次のステップではマネージャをアップロードのロックステータスに進めます。
L9100 (L9000 のオーナー) のマネージャである TestUserD としてサインオンします。
プロセスコンテキストですべての子孫を選択しないでください。ステータスが管理者マネージャに設定されている限り、マネージャとして個々のメンバーのステータスを更新することができます。
このステータスはマニュアルのデータ入力をロックアウトするので、ロックの設定後はデータを更新することができません。
マネージャ 2 によるロックの設定
LD1 (L9000 のオーナー) のマネージャである TestUserC としてサインオンします。
特定の L9000 の子 (たとえば L9100) の 管理者マネージャ作業ステータスの設定を試みます。
直属の親だけが個々の子を設定することができます。次のエラーが表示されます。User is not an owner/manager, work status cannot be updated
プロセスコンテキストですべての子孫を選択した場合、すべての子を設定することができます (マルチレベル設定)。
ルールによる制御
親 L9000 はロック未設定に設定されています。
親オーナーが作業ステータスを承認に設定しようとすると、承認はマネージャ作業ステータスであるため、これは管理者ルールに違反します。次のエラーが表示されます。The Controlledby rule is violated
親のオーナーはそれ自身のマネージャではありません。この唯一の例外は階層の最上位メンバーです。
ボトムアップルール
親 L9000 はロック未設定に設定されています。
子 L9100 はアップロードに設定されます。他の子はなしに設定されます。
親 L9000 のオーナーが作業ステータスを、管理者オーナーの作業ステータスである開始済に設定しようとします。
これは次のボトムアップルールに違反するため失敗します。親はその子を超えるステータスを持つことはできません。次のエラーが表示されます。The Bottom-up rule is violated
プッシング 1
親オーナー (マネージャ) L9000 は、プロセスコンテキストですべての子孫を使用して、そのすべての子の作業ステータスを設定することができます。
マネージャは作業ステータスをスキップすることができますが、作業ステータスは管理者マネージャでなければなりません。
マネージャが管理者オーナーである作業ステータスを選択する場合、これは管理者ルール違反になります。
ユーザ設定作業ステータスが特定のメンバーまたは指定されたメンバーの子のオーナーでもマネージャでもない場合、次のエラーが表示されます。User is not an owner/manager, work status cannot be updated
プッシング 2
親オーナー (マネージャ) L9000 は、プロセスコンテキストですべての子孫を使用して、そのすべての子の作業ステータスを設定することができます。
すべての子孫を選択した場合、親メンバー作業ステータスは設定されません。
L9000 の親 (LD1) だけが管理者マネージャ作業ステータスを設定することができます。
反転
LD1 のすべての子が 2017.Q1 (JAN、FEB、MAR) で承認されているとします。
子メンバーのオーナーはその親より下位にある作業ステータスを設定できません。これはボトムアップルール違反です。
親は、ステータスを任意の管理者マネージャ作業ステータスに反転させることができます。
すべての領域がルールに合格する必要がある
LD1 のすべての子が 2017.Q1 (JAN、FEB、MAR) で承認に設定されているとします。
親が 1 月のすべてのベースメンバーをロック未設定に設定します。
親が残りの月を承認に設定します。
あるディメンションのオーナーが Q1 を開始済に設定しようとします。これは 1 月のボトムアップルールに違反するため失敗します。