Configuring Data Actions

Objectives

After completing this lesson, you will be able to:

  • Describe the data action features.
  • Design and run copy data actions.

Scenario: Use Data Actions for Forecast Income Statements

Jen, the planner at ABC Corporation, is working with her team to create a forecast income statement for 2025. But first, she has been asked to calculate projected labor expenses for that year.

Data Actions

Introduction

A data action is a flexible planning tool for making structured changes to planning data in SAP Analytics Cloud. Modelers design the data actions and planners run them in stories or schedule them in the calendar.

A data action is created based on a planning model and consists of one or more steps that are carried out on a public or private version.

Use Cases for Data Actions

Data actions are used to process mass amounts of data.

Some use cases for data actions include the following:

  • Carry out planning tasks automatically
  • Copy by model and across models
  • Allocations
  • Currency translation
  • Calculations

Key Features of Data Actions

Some features of data actions include the following:

  • Sequence data action steps
  • Embed data actions (just like an include)
  • Schedule or ad-hoc execution
  • Include prompts for flexibility
  • Integrate prompts and story filters

Access Data Actions

Data actions can be created from the Navigation Bar or from Files.

Recent data actions will also show in the Recent Files section of your home screen.

Where to access data actions. Start from the vertical menu or open existing data actions from My Files.

Data Action Processing

  • Steps in a data action are executed sequentially.
  • The result of one step is available for the subsequent steps.
  • For each step, the execution scope is defined via filters.
Diagram showing how data action processing works. Model data (right) is fetched to the working set and calculated to the result (middle). The write back functionality sends the data back as Result 1.

Types of Data Action Steps Available

Data action configuration. Advanced Formulas Step is selected in the list on the left and the configuration options are on the right of the screenshot. They are listed after this image.

The following types of action steps are available:

  • Copy action: copies data within a model based on a set of rules, filters, and aggregation settings. For example, you can use it to copy data from 2018 to 2019 or Actual data to Budget data. With the Copy action, you copy a value from only one dimension member, but you can copy to multiple dimension members.
  • Cross-model copy action: allows you to copy data from a different source planning model based on a set of filters and automatic or manual mapping between dimension members.
  • Each step of an advanced formulas action allows you to create calculations to apply to the data. For example, you can use scripting to calculate opening and closing balances of headcount based on hires and terminations, looping through the data by time.
  • Allocation action: creates a new allocation or use an existing allocation step.
  • Embedded data action: runs another data action as part of the one you’re working on. Combining these steps with dynamic parameters lets you reuse data actions with different source or target members.
  • Conversion data action: is used for models with measures, conversion steps let you copy between measures while applying currency conversion.

Data Action Parameters

Parameters

Setting parameters result in prompts when they're run in a story. Prompts are like variables, in that they make the data actions flexible and dynamic.

When a data action is executed from a story, as in the following example, the parameters related to the data action prompt you for source and target data.

Data action for Copy Labor Hours is selected (left) and Copy Labor Hours dialog is displayed (right).

Parameter Values

Parameter Values are determined by:

  • Member selection in the story
  • Default values in the data action parameter definition
  • A story filter
  • An input control
Data Action Parameter Options in Stories

Parameter Type

Parameters Type can be based on members or numbers:

  • Member: Creates a parameter that represents a dimension member. For example, this type of parameter lets you change the year that you're copying data to or from.

  • Number: Creates a parameter that has a numeric value. For example, this type of parameter is added to advanced formulas, and can let you prompt users for values such as growth rate or gross margin percentage.

Data Action Properties highlighted in the Edit Parameter panel

Parameter Properties: Model

The Model assignment:

  • Can be set to the Default Model. In this case, the model is inherited from the data action header.
  • Can be set to a specific model. In a copy step, this can only be the same model as in the data action header. In a cross-model copy step, this could pertain to either the source or target model.

Note

When a parameter is used to select the source member, the Cardinality must be set to a Single member.

Schedule Data Actions

Ways to Execute Data Actions

Data actions can be executed in multiple ways:

  1. From a story.
  2. From an extended story.
  3. From the SAP Analytics Cloud calendar.
  4. From SAP Analytics Cloud, Add-in for Microsoft Office.

In this section, we’ll focus on using the SAP Analytics Cloud calendar to schedule the data action as a task.

Schedule a Data Action from the Calendar

Using the calendar, you can schedule a data action. If a data action takes a few minutes to run, you can schedule it to run at night.

SAP Analytics Cloud Calendar with General Add menu options displayed. Data Action Task is highlighted in the menu.

Note

Multi actions can also be scheduled. For example, a multi action could include several data actions as well as import steps.

Status in the Calendar

Before the data action runs, its status will be Open.

After it runs with no issues, the status will be Successful.

If something goes wrong, the status will be Failed.

Create a Data Action Task

When scheduling a data action, prompts must have assigned parameter values.

Three create and configure options. Create Data Action Task, Recurrence Settings, and Data Action Task panel (left to right).

Note

If you choose Publish target version automatically as a Follow-Up Action in the panel, then after the data action finishes:
  • All unpublished changes to the target version will be published, even if they weren’t part of the data action.
  • If you're running the data action on a BPC write-back model, you'll need to publish the version manually.

Embedded Data Actions

Data actions can be used in other data actions that belong to the same model.

For example, you create a data action that calculates subscription revenue based on booking data, with a dynamic parameter for the product type. Using embedded data action steps, you can reuse that data action multiple times in another data action and you can specify a different product type each time.

This lowers the cost of development and maintenance.

Here are some other features of embedded data actions:

  • Parameters of outer data actions can be linked against required parameters of inner data actions.
  • Parameters of inner data actions aren’t prompted on execution; each must be assigned a value in the designer.
  • You can’t use a data action within itself.

Data Action Monitor

When data actions are scheduled from the SAP Analytics Cloud calendar or executed from a story, you can use the Data Action Monitor to check the status.

The Data Action Monitor shows:

  • When the data action was triggered
  • Who triggered the data action
  • Where the data action was triggered
  • Which values were used as parameters
  • Number of records and duration
  • The data action job history will remain based on a retention period of 30 days (default)
Data Actions in SAP Enable Now is open on screen. Data Action Monitor (left) with Status highlighted (right).

Use the Data Action Monitor

Business Scenario

You wish to check the status and details for the data action that was created to calculate labor and benefits.

What skills will you develop in this practice exercise?

In this practice exercise, you will:

  • Access the Data Actions Monitor from the vertical navigation menu
  • View the Data Actions and the related information such as Status, Triggered From, and Triggered By
  • View the details for a specific data action, including Steps and Parameters

Copy Data Action Within a Model

Copy Rules

Copy actions allow you to copy data from one set of members to another, specifying options for filters and aggregation. For example, you can copy data for a product in one region to another product in other regions.

In the following example, the data action is set up to copy data by version and year at the same time. For example, copy the 2023 actual data to the 2024 plan data.

The copy rule doesn't allow the use of version, so there are two key points to remember:

  1. Use a parameter for the source version. The source version parameter is then added to the context which will result in a prompt.
  2. Every data action will always prompt for the target version regardless of whether the target version prompt is in the filter or not.
Example of a data action copy step

Every data action has a system-provided Filter for Version. The default version filter is the target version prompt.

Configuring Copy Data Actions

  • When choosing members for the copy action settings, you can use a parameter instead of dimension members to make your data action more flexible. Parameters can make it easier to update your data action, and they prompt you for values while running the data action.
  • When you define a copy action, the source distribution aggregation will also be copied. You can override this functionality by specifying any dimensions that need to aggregate data differently than the source.
  • When a copy action is executed, the default action is to Overwrite the data. When defining the copy action, you have the option to change to Append (add) the data to existing values for the target members.
  • Depending on the Filter and Aggregate To settings, you may not need to add a copy rule:
    • If you want to copy the 2025 Forecast to a target version, then you only need to filter the step to the Forecast version and 2025.
    • If you want to copy the 2025 Forecast to 2025 and 2026 in the target version, then a copy rule is required.

Aggregate Setting

In the Aggregate To area of a data action, add any dimension where you want to override the default disaggregation behavior.

For dimensions that aren't included in the Aggregate To area, the copied data will match the distribution of the source data by default. This behavior is similar to copying and pasting a cell with the Paste Details option enabled.

For example, if you want to remove the distribution of data to different customers for privacy reasons, you can aggregate the data to the Unassigned member of the Customer dimension. In this case, all of the copied data is booked to the Unassigned member.

Copy Data by Year and Version Simultaneously

To copy data from one year to another and at the same time copy actual to plan:

  • The version filter must be set to the source version, for example, actual or a parameter for the user.
  • The copy rule would then contain the source and target time values or parameters.

Running Data Actions

When Data Action Triggers are added to stories, they appear as push buttons and can be configured using the right panel.

Data action push button selected with the right panel showing configuration options.

Parameters

The prompts are based on the data action parameters. In a story, these are the input options:

  • Prompt
  • Fixed Value

If you choose the Prompt type, there are four Value options:

  1. Member Selection
  2. Default Value (based on the default value set in the data action configuration)
  3. Story Filter
  4. Input Control
Parameters for the Data Action Trigger (push button)

Running a Data Action from a Story

When a data action is run by selecting the push button in the story, a prompts dialog allows for dynamic member selection.

Data Action Trigger push button selected opening the run dialog

Running in Background

If the data action is set to always run in the background, or if you select Run in Background  after starting it, you'll return to your story or extended story. You can keep working with your story or extended story but you'll have to wait until the data action finishes to make changes to the same version and you may need to refresh to see the results.

A message appears when it’s complete or you can check the  Notifications list for the results.

Builder panel showing Always run in background deselected.

Publishing

Data actions can be set up in stories to publish automatically, so that planners don't have to publish data in a separate step. Alternatively, if a data action is set up in a story not to publish automatically, then the data can be reverted.

There are three publishing options:

  1. Do not publish.
  2. Publish and fail if there are warnings.
  3. Publish and ignore warnings.

    Note

    If there is an issue with some records but not all, this option will process the good records.

Create and Run a Data Action to Copy Data within a Model

Scenario: Use Data Actions to Copy Labor Hours

In the second part of this process, Jen must develop the rough cut labor forecast. To get started, she needs to copy the labor hours and rates.

Task 1: Create a Data Action to Copy Data within a Model

Business Scenario

Jen needs to copy actual hours and labor rates from 2024 into the 2025 plan.

As a planning data administrator, you need to create a data action to copy data within the HR model. In this scenario, you will create a data action with parameters for version and year.

What skills will you develop in this practice exercise?

In this practice exercise, you will:

  • Create a data action to copy within a model
  • Create the data action parameters
  • Create a data action copy rule and filter

Task 2: Run a Copy Data Action in a Story

Business Scenario

Now that you have created a data action, Jen can add a data action trigger to the story and run it to copy actual hours and labor rates from 2024 into the 2025 plan.

What skills will you develop in this practice exercise?

In this practice exercise, you will:

  • Add the data action trigger to the story
  • Run the data action

Copy Data Actions Between Models

Data is often needed from several sources to perform the planning process, for example, prices are in one model but the income statement data is in another. Depending on the circumstances, the data may need to be physically copied while in other cases, a look-up will suffice.

Before we get into the specifics of copying data between models, let's consider the options when working with data in multiple models:

  1. Cross Model Copy: Data Duplication:
    • The data needs to be physically copied from one planning model to another.
    • The data will be modified in the target model for example.
    • A snap-shot of the data is needed.
    • Example: Copy actual labor hours from HR as the basis for forecast hours.
  2. Combine Data in the Import Process: Data Duplication:
    • The data needs to be physically merged.
    • Do this in data wangling.
    • Example: combine transaction data with exchange rates for immediate conversion.
  3. No Data Duplication:
    • Blend data in stories. Example: Add attributes from another source.
    • Use advanced formula look-ups via the LINK command.
    • Example: Look up labor rates from HR for the labor calculation.

Cross Model Copy with Mapping

In the Mapping area, set how the data will be mapped from the source model to the dimension members of the target model.

For each of the target dimensions listed in this area, you need to either map a source dimension or select a default value. In the following image, you can see that the currency is set to Unassigned. In this example, labor hours are being copied from an HR into an expense model. In the HR model, labor hours aren’t related to currency.

A Cross-Model Copy data action with Source Model (top left), Target Model (top right), and Currency (bottom) highlighted. Currency is set to unassagned.

You don't need to map source dimensions that aren't relevant for the target model. For example, you might choose not to map gender or office location from the Headcount model to the Finance model.

The source and target models can have different dimensions. For example, HR has personal area but Expense doesn’t. In the data action, a constant can be used for personal area.

Note

Cross-model copy steps don’t support copying between classic account models and models with measures, but you can use an advanced formula step with a LINK function instead. For example, for a classic account model that has the same set of dimensions as a target measure model, a simple link function that copies account values to a measure looks like this:
Code snippet
DATA([d/Measures]="Quantity") = LINK([AccountModel], [d/Version]="public.Forecast", [d/Account]="Quantity")
Expand

Copy Data from a Weekly to a Monthly Model

When data is copied from a weekly to a monthly model, the data is aggregated from weeks into months. The assignment of a week that begins in one month and ends in another is based on the Auto-Generation Strategy in the data action.

Screenshot of two tables (top) showing weekly data in table (left) and the data copied into the monthly table (right). The bottom of the image shows the configuration.

When mapping date dimensions with different time granularity, the first day of the source member will always be used as a point of reference. For example, this option could be used when copying from a source dimension with month-level granularity to a target dimension with day-level granularity.

If a source dimension month starts on January 1, 2027, this month will be mapped to the day member January 1, 2027 on the target dimension. This pattern will be repeated for all dimension members.

Create and Run a Data Action to Copy Data From One Model to Another

Scenario: Copying Labor Hours from HR to Expense with a Cross Model Copy Action

As part of the 2025 Forecast Income Statement for ABC Corporation, Jen must calculate the labor and benefits. She'll first copy then labor hours from HR and then calculate the labor and benefits.

Business Scenario

You are a member of the planning team at ABC Corporation and you are responsible for creating and configuring data actions. Before Jen can calculate labor values in the expense model, you need to create a data action to copy the labor hours from the HR model into the expense model.

To do this, you need to create a cross-model copy data action.

What skills will you develop in this practice exercise?

In this practice exercise, you will:

  • Create a data action to copy between models
  • Configure the data action parameters, mapping, and filter
  • Create a blank private version in the expense model
  • Add the data action to the story and run it

Log in to track your progress & complete quizzes