Creating Data Actions for Allocations

Objective

After completing this lesson, you will be able to create data actions for allocations.

Allocations Overview

In SAP Analytics Cloud, you can create complex multi-step allocations with ease. You can:

  • Define the specific source and target dimensions for each step
  • Define the specific source elements, allocation driver, and target elements for each step
  • Execute allocations against a selected dimension members from within a story
  • Schedule allocations in the calendar

For example, corporate HR is an overhead function. The HR costs, including labor, need to be pushed back to the divisions based on headcount for a clearer representation of a division's costs. A data action with an allocation step can perform this task.

Diagram representing the example of a HR as an overhead function with Finance, Sales, Manufacturing, and IT as divisions.

Allocations are used to assign overhead costs to operating units so that they know their full cost of operations. For example, you want to allocate:

  • the cost of HR to departments based on the number of employees,
  • annual values to period values based on historical trends, or
  • overhead, based on the relative amount of manufacturing cost.

To do this, you can create data actions with multiple allocation steps. As you add allocation steps to the data action, you can easily visualize the entire allocation process. You can then execute the allocation data action in a story and see the impact in the data table.

Introducing Allocations

In this video, we will show you how you can use allocations to burden the cost centers for utilities and HR.

Data Action Allocation Step

Source Context

After you create the data action and add an Allocation step, you define the source context.

  1. Data Source: The planning model is inherited from the data action.
  2. Filters: Filters allow you to restrict the dimension members and measures for the allocation step.
  3. Write Mode: To keep the values of the source cells, select Keep Source.

    The source values will be copied and allocated to the targets, instead of being reduced to zero. Don't select Keep Source if the goal is to fully allocate the source.

Data Action Allocation Step - Source Context

Driver Context

Reference dimensions enable you to use more fine-grained weights for the allocation. The Date dimension is by default a reference dimension.

Data Action Allocation Step - Driver Context

Target Context

  • Booking Account: You can use one set of accounts to calculate the values to allocate, and then send (book) those values using a different account. To do this, you can select a Booking Account to send the values. If no booking accounting is selected, the original accounts are used as the sending accounts. This writes all allocation results to the defined account and leaves the source accounts unchanged.
  • Write Mode: To delete existing values of the target members at the start of the step, in Write Mode select Overwrite Target.
Data Action Allocation Step - Target Context

Note

To allocate expenses based on prior-year actual data, you can use a calculated account (a dimension member formula) that looks up values for the actual version and the prior year. The year can be hard-coded, or it can be accessed dynamically by using an offset. For example:

  • Account PriorYearActualHeadCount = LOOKUP([Number of People].[d/Version]="public.Actual" AND[d/Date]="2023")
  • Account PriorYearPCs = LOOKUP([Number of PCs],[d/Date]=Previous("Year",1)AND[d/Version]="public.Actual")

Allocation Rules - Fixed

In the following example, the member selections for Source Dimension, Driver Dimension, and Target Dimension are fixed.

  1. Source Dimension: To create an allocation step, you must specify a source dimension, which holds the values that you want to distribute. This can be any dimension except Version (Version is a built-in prompt), and is typically the Organization type dimension, for example, Entity or Cost Center. You can select more than one source dimension.
  2. Driver Dimension: This determines how much each target dimension receives. For example, use kilowatt hours to distribute the cost of electricity.
  3. Target Dimension: After specifying the Source Dimension and Driver Dimension, you specify a Target Dimension to receive the distributed values. This can be any dimension except Version and Account (Booking Account is already an option), and is typically an Organization type dimension; for example, Entity or Cost Center. You can select more than one target dimension if necessary.

You can also use a parameter instead of hard coding dimension members.

Data Action Allocation Step with fixed Allocation Rules highlighted

Allocation Rules - Number of Repetitions

Number of Repetitions: The default for this field is set to 1. If you need to repeat the allocation step until residual amounts are so small that they go towards zero or a defined limit (maximum 10 repetitions) has been reached, enter a repetition factor as needed.

Imagine two internal service cost centers that provide activities to each other:

  • Cost Center A (IT Service 1) has primary costs of $10,000. This cost center does 20% of its work for cost center B (IT Service 2) and 80% for externals/production.
  • Cost Center B (IT Service 2): Has primary costs of $5,000. It does 10% of its work for cost center A and 90% for external/production.

Since A does something for B and B does for A, a simple one-time assessment leads to inaccurate remaining costs.

The iterative method (setting a repetition factor) solves this issue. The process repeats (looping) until the residual amounts are so small that they are near zero or a defined limit (for example: Number of Repetitions = 10) is reached.

Allocation Rules - Number of Repetitions is set to 9, indicating that HR and IT will use reciprocal cost allocation.

In this example, HR is allocating to IT and vice versa. In a scenario like this, you can increase the number of repetitions to fully allocate both HR and IT cost centers. You can see in the following example, the data before the allocation was executed and after 7 iterations. This process has to be tested to determine the correct number of iterations required to bring the value to 0 when creating the allocation.

The data before the allocation was executed and after 7 iterations.

Create a Data Action for an Allocation

Business Scenario: You want to create a data action that will allocate overhead costs based on number of people, allowing planners to allocate using a push button in the story.

You need to create data action steps for electric, water, and telephone allocation. You also need to allocate human resources data (based on number of people) using a separate sending HR account.

Task 1: Create the Data Action and Add the Parameters

Task Flow: In this practice exercise, you will:

  • Create a data action for allocations.
  • Add the parameters to the data action.

Task 2: Create Data Action Steps for an Allocation

Task Flow: In this practice exercise, you will:

  • Create the electric allocation step.
  • Create the water and telephone allocation step.
  • Create the HR allocation step.