Knowledge Base Article

Closing Workflows

Myth

Closing the workflow will totally prevent calculations & consolidations on the closed periods.

The Truth

Whilst closing workflows does have an impact on the consolidation behaviour it does not prevent consolidations. Let’s look at some of the behaviour you can expect from a Closed Workflow in several scenarios. In all situations a regular consolidate/calculate will behave the same as it would if the workflow were Open, so the following situations relate to the use of force consolidation/calculation on a Closed workflow.

Calc Status OK

When the Calc Status for all Data Units is OK and the workflow is Closed the behaviour depends on which period you trigger a consolidation for.

If a force consolidation is run on an Open period, it will consolidate back to the last consecutively closed period. For example, if Jan & Feb are closed and a force consolidate is run on Apr, then you will see Mar & Apr being the only months consolidated.

The reason the word consecutive is used is because if for some reason Jan & Mar are Closed but Feb & Apr are Open, the system will consolidate Feb, Mar & Apr, ignoring the fact Mar is Closed.

If a force consolidation is run on a Closed Period, ONLY that period will be consolidated. In the previous example therefore, if a force consolidate is run on Feb, only Feb will be consolidated.

Be aware: If a single data unit within a closed period does not have a Calc Status of OK then the following behaviours will occur instead.

Calc Status of CN or CA

A force consolidation/calculation will happen on the entire period if a single data unit in the scope is impacted.

Take this situation where Jan & Feb Workflows are Closed:

The entity “Base2” (and therefore the Parent1) are impacted from Feb onwards. When a force consolidate is run on May, all entities from Feb to May are calculated and consolidated. Jan is still left untouched as no data units were impacted in that period.

Calc Status of OK, MC

Where any data unit has this status, a force consolidate will trigger for the period as normal, including Closed workflows. Keep in mind, changing or adding metadata will set all periods of a given year to OK, MC. Given that it is not uncommon for metadata to be changed and added each period, this alone means that most often closed periods will consolidate & calculate in the same way as open ones.

Custom Calculation

Lastly, a Closed Workflow will not prevent a custom calculation from a dashboard button or DM sequence, regardless of the Calc Status!

So, what can I do to prevent consolidations?

Often the simplest solutions are the best and this is no different. Having a well-designed process in place should provide the required result. The following are some general practices that should be followed where appropriate:

  1. Certify & Lock Workflows each month on completion. This locks the data and prevents it being changed by users through Import, Forms or Journals.
  2. Make business rules & member formula changes time & scenario dependent where appropriate. This will mean that new logic won’t be applied to previous periods even if they are consolidated.
  3. Only allow end users to run custom calculations through the workflow. This way, when that workflow is locked, the custom calculations can no longer be run.
  4. Run a regular consolidate/calculate by default and avoid Force processes unless necessary. This will be generally more performant too, meaning end users have to wait less time to finish their process. For actuals it is typical that the force consolidate is an Administrator or power user action only, if used at all.

Sometimes there is a situation where you might want to run a force consolidation due to a metadata change in the current period, but don’t want to reconsolidate the whole year. In these situations, you can create a small extender business rule to impact all entities in the current period & scenario. The key function for this is “ImpactCalcStatus”, shown here:

Once the necessary data units are impacted, a standard consolidate can be run.

Why would I Close my Workflows then?

The design and reference guide states that:

Workflow hierarchies should only be closed if major changes are being made to the Workflow hierarchy and the structure of a Cube and historical hierarchy relationships need to be preserved.

To give an example of this behaviour here is a situation where after January was closed some changes were made to the Workflow Structure:

Despite new steps being added, names being changed, and old steps being deactivated, you can see that the hierarchy for Jan remains preserved whilst the changes reflect in Feb onwards.

Be aware: If a closed period is reopened this preservation is permanently lost!

The reason this is only recommended for major changes is because closing workflow can have an impact on navigation and reporting performance therefore is not suitable for use in all applications.

Wait, what? Closing the workflow is not a more convenient way to lock data?

NO!

Locking and certifying a workflow is not the same as closing a workflow. Use lock and certification as per set up workflow to lock and certify data naturally in the workflow in line with the closing and auditing requirements.

Only use Close Workflow to preserve historical hierarchies and settings in the workflow. The data should be locked differently.

More information can be found in the Design and Reference Guide and the Knowledge Base article in Service Now (KB0012996).

Published 1 year ago
Version 1.0

1 Comment