Work Status Example

Use

The following information is used for the examples shown below.

Work status codes

  • Default code is set to Both.

  • All methods are open, that is, set to All.

Work State

DM

JRN

MAN

COMM

DOCS

ControlledBy

Locks Not Set

All

All

All

All

All

Both

Started

All

All

All

All

All

Owner

Upload

All

Locked

Locked

Locked

Locked

Manager

Submit

Locked

Owner

All

All

All

Owner

Journal

Locked

Locked

Locked

All

All

Owner

Approve

Locked

Locked

Locked

Locked

Locked

Manager

Model work status dimensions

  • Entity is used as the owner dimension.

  • Dimensions with Yes are non-owner dimensions.

  • Remaining dimensions are not considered when defining the scope or region of the lock.

Code Model Dimension Name

Work State

CATEGORY

Yes

ENTITY

Owner

P_ACCT

No

P_ACTIVITY

No

P_DATASRC

Yes

RPTCURRENCY

No

TIME

Yes

Entities structure

  • Owner of Top entity L1 is the tester's internal user TESTUSER_ALL.

  • Remaining parents and children have test owners to help demonstrate the example.

ID

CURRENCY

DESCRIPTION

OWNER

PARENTH1

L1

EU

Top

TESTUSER_ALL

LD1

US

Parent 10

TESTUSERC

L1

L9000

US

Parent 19

TESTUSERD

LD1

L9100

US

Child 191

TESTUSERE

L9000

L9200

US

Child 192

TESTUSERE

L9000

L9300

US

Child 193

TESTUSERE

L9000

LD2

US

Parent 20

TESTUSERF

L1

L8000

US

Parent 28

TESTUSERG

LD2

L8100

US

Child 281

TESTUSERF

L8000

L7000

US

Child 201

TESTUSERF

LD2

Examples

To begin, a user enters data into the model.

  • This example uses data for children of entity member L1.

  • There are no locks set, so data can be entered freely.

Lock is set by owner

  1. Owner TestUserE can set their own entity L9100, and set a parent level non-owner dimension member 2017.Q1.

  2. However, the owner cannot view the current status of the entity L9100 and 2017.Q1 since the state is expanded to the child members for non-owner dimensions (no storage of parent members for non-owner dimension).

  3. The owner can view the individual state by the base member 2017.JAN.

An owner must set Controlledby work states in consecutive order. Upload can be set to Submit, but not to Journal, as the next work state after Upload is Submit.

This is also true in reverse: an owner cannot set a Controlledby owner work state that is not in order. You cannot set Journal to Started as this violates two rules:

  • The state before Journal is Submit. Therefore, this is the only valid selection.

  • Upload is a Controlledby Manager work state, and is in between the Submit and Started work states. The owner cannot skip a work state that is controlled by a manager.

Lock is set by manager 1

As the first status is an Controlledby Owner status, which is defined as open ( Locks Not Set), the next step is to have the manager progress to a locking status of Upload.

  1. Sign on as TestUserD, the manager of L9100 (owner of L9000).

  2. Do not choose On All Descendants in the data region. As a manager, you can update the status for individual members as long as the status is set to Controlledby Manager.

  3. You cannot update the data after the lock is set, as this status locks out manual data entry.

Lock is set by manager 2

  1. Sign on as TestUserC, the manager of LD1 (owner of L9000).

  2. Attempt to set Controlledby Manager work state for a specific child of L9000 (for example, L9100).

    • Only an immediate parent can set individual children. An error appears: User is not an owner/manager, work status cannot be updated.

    • If you choose On All Descendants in data region, you can set all children (multi-level setting).

Controlled By Rule

  1. Parent L9000 is set to Locks Not Set.

  2. If the parent owner attempts to set the work state to Approve, this violates the Controlledby rule as Approve is a Manager work state. An error appears: The Controlledby rule is violated.

Note

The owner of a parent is not its own manager. The only exception to this is the top member of the hierarchy.

Bottom Up Rule

  • Parent L9000 is set to Locks Not Set.

  • Child L9100 is set to Upload; other children are set to None.

  1. The owner of parent L9000 attempts to set to the work state to Started, which is Controlledby Owner.

  2. This fails due to violation of the bottom up rule: a parent cannot have a status higher than its children. An error appears: The Bottom-up rule is violated.

Pushing 1

  • L9000, a parent owner (manager), can set the work state of all of its children using On All Descendants in the data region.

  1. A manager can skip work states, but they must be Controlledby Manager.

  2. If a manager selects a work state that is Controlledby Owner, this violates the Controlledby rule.

  3. If the user setting the work state is neither the owner nor the manager of either the specific member or children of the specified member, an error appears: User is not an owner/manager, work status cannot be updated.

Pushing 2

  • L9000, a parent owner (manager) can set the work state of all its children using On All Descendants in the data region.

    • The parent member work state is not set when On All Descendants is chosen.

    • Only the parent of L9000 ( LD1) can set a Controlledby Manager work state.

Reversing

  • Assume all children of LD1 are approved for 2017.Q1 (JAN, FEB, MAR).

  1. The owner of a child member cannot set a work state lower than their parent. This violates the Bottom-up rule.

  2. A parent can reverse the status to any of the Controlledby Manager work states.

All Regions Must Pass Rule

  • Assume all children of LD1 are set to Approve for 2017.Q1 (JAN, FEB, MAR).

  1. The parent sets all base members for Jan to Locks Not Set.

  2. The parent sets remaining months to Approve.

  3. The owner of one dimension attempts to set Q1 to Started. This fails because it violates the Bottom-up rule for January.