100% found this document useful (1 vote)
101 views

SACP21_

The document is a participant handbook for an instructor-led training course on SAP Analytics Cloud Planning, lasting four days. It covers various units, including introducing SAP Analytics Cloud Planning, configuring data actions, allocating planning data, and forecasting, aimed at application consultants, technology consultants, and business analysts. The course includes lessons on planning processes, managing versions, and using advanced features for effective planning and collaboration within the SAP Analytics Cloud environment.

Uploaded by

Lamia Brachemi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
101 views

SACP21_

The document is a participant handbook for an instructor-led training course on SAP Analytics Cloud Planning, lasting four days. It covers various units, including introducing SAP Analytics Cloud Planning, configuring data actions, allocating planning data, and forecasting, aimed at application consultants, technology consultants, and business analysts. The course includes lessons on planning processes, managing versions, and using advanced features for effective planning and collaboration within the SAP Analytics Cloud environment.

Uploaded by

Lamia Brachemi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 230

SACP21

SAP Analytics Cloud Planning:


Introduction

.
.
PARTICIPANT HANDBOOK
INSTRUCTOR-LED TRAINING
.
Course Version: 41
Course Duration: 4 Days
SAP Copyrights, Trademarks and
Disclaimers

© 2024 SAP SE or an SAP affiliate company. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without the
express permission of SAP SE or an SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are
trademarks or registered trademarks of SAP SE (or an SAP affiliate company) in Germany and other
countries. Please see https://www.sap.com/corporate/en/legal/copyright.html for additional
trademark information and notices.
Some software products marketed by SAP SE and its distributors contain proprietary software
components of other software vendors.
National product specifications may vary.
These materials may have been machine translated and may contain grammatical errors or
inaccuracies.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only,
without representation or warranty of any kind, and SAP SE or its affiliated companies shall not be liable
for errors or omissions with respect to the materials. The only warranties for SAP SE or SAP affiliate
company products and services are those that are set forth in the express warranty statements
accompanying such products and services, if any. Nothing herein should be construed as constituting an
additional warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business
outlined in this document or any related presentation, or to develop or release any functionality
mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’
strategy and possible future developments, products, and/or platform directions and functionality are
all subject to change and may be changed by SAP SE or its affiliated companies at any time for any
reason without notice. The information in this document is not a commitment, promise, or legal
obligation to deliver any material, code, or functionality. All forward-looking statements are subject to
various risks and uncertainties that could cause actual results to differ materially from expectations.
Readers are cautioned not to place undue reliance on these forward-looking statements, which speak
only as of their dates, and they should not be relied upon in making purchasing decisions.

© Copyright. All rights reserved. iii


Typographic Conventions

American English is the standard used in this handbook.


The following typographic conventions are also used.

This information is displayed in the instructor’s presentation

Demonstration

Procedure

Warning or Caution

Hint

Related or Additional Information

Facilitated Discussion

User interface control Example text

Window title Example text

iv © Copyright. All rights reserved.


Contents

vii Course Overview

1 Unit 1: Introducing SAP Analytics Cloud Planning

3 Lesson: Exploring the SAP Analytics Cloud Planning Process


9 Lesson: Planning Using SAP Analytics Cloud

17 Unit 2: Planning in Stories

19 Lesson: Creating and Managing Versions


25 Lesson: Viewing Version Data from the Planning Model
27 Lesson: Adding New Dimension Members from Data Tables
31 Lesson: Performing Manual Planning
39 Lesson: Using Mass and Fluid Data Entry When Planning in Data
Tables
43 Lesson: Planning Using Inverse Dimension Formulas
47 Lesson: Planning on Multiple Hierarchies and Distributing Data with
Planning Panels
53 Lesson: Using Seamless Planning with SAP Datasphere

71 Unit 3: Configuring Data Actions

73 Lesson: Exploring Data Actions


81 Lesson: Using Data Actions to Copy Data Within a Model
85 Lesson: Using Data Actions to Copy Data Between Models
89 Lesson: Using the Visual Editor to Create an Advanced Formula
Data Action
97 Lesson: Using the Script Editor to Create an Advanced Formula
Data Action
107 Lesson: Creating Dynamic Data Actions and Tables
111 Lesson: Creating and Running Multi Actions
115 Lesson: Managing Data Action Performance

125 Unit 4: Allocating Planning Data

127 Lesson: Outlining the Concept of Allocations


129 Lesson: Creating Data Action Allocations
135 Lesson: Performing Allocations

141 Unit 5: Translating Currencies for Planning

143 Lesson: Configuring Currency Translation


153 Lesson: Performing Currency Translation

© Copyright. All rights reserved. v


159 Unit 6: Forecasting and Simulating Planning Data

161 Lesson: Configuring Rolling Forecast Layouts


165 Lesson: Forecasting with Predictive Analytics
173 Lesson: Simulating with Value Driver Trees

185 Unit 7: Coordinating and Controlling Processes

187 Lesson: Auditing Planning Data


189 Lesson: Validating Planning Data Input
199 Lesson: Implementing Data Locking for a Model
207 Lesson: Using Calendar Processes

vi © Copyright. All rights reserved.


Course Overview

TARGET AUDIENCE
This course is intended for the following audiences:
● Application Consultant
● Technology Consultant
● Industry / Business Analyst Consultant
● Business User
● Business Analyst

© Copyright. All rights reserved. vii


viii © Copyright. All rights reserved.
UNIT 1 Introducing SAP Analytics
Cloud Planning

Lesson 1
Exploring the SAP Analytics Cloud Planning Process 3

Lesson 2
Planning Using SAP Analytics Cloud 9

UNIT OBJECTIVES

● Describe the process phases and planning-related topics of SAP Analytics Cloud.
● Access the different planning options available for SAP Analytics Cloud planning users.

© Copyright. All rights reserved. 1


Unit 1: Introducing SAP Analytics Cloud Planning

2 © Copyright. All rights reserved.


Unit 1
Lesson 1
Exploring the SAP Analytics Cloud Planning
Process

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Describe the process phases and planning-related topics of SAP Analytics Cloud.

The Business Scenario


Persona

● You're an intermediate business user or intermediate consultant who works at ABC


Corporation.
● You’re already familiar with the SAP Analytics Cloud fundamental concepts, modeling, and
story building.
● You have enterprise planning experience, but you are new to SAP Analytics Cloud
planning.
● You recently accepted an assignment to implement SAP Analytics Cloud planning with
guidance from an experienced project lead.

You will work to develop planned income statements by region, line of business, and legal
entity for the companies of ABC Corporation.
You will configure planning models, data actions, allocations, and stories that will be used to
perform planning activities. These activities include manual input planning, version
management, planning simulations, allocations, copying data, calculating labor and benefits,
translating currencies, validating data input, forecasting sales values, and scheduling jobs.

Business Requirements for the Planning Project

● As the planning activities are carried out, the planners need to work on their own private
data before they're ready to publish it for others to see.
● The planners must be able to undo and redo their data changes as they perform what-if
analyses.
● Manual input planning is required along with automated data actions.
● The planners need an efficient and flexible way to plan by base member.
● The planners need to perform planning disaggregation by parent node.

© Copyright. All rights reserved. 3


Unit 1: Introducing SAP Analytics Cloud Planning

● Simulating the impact of growth rates and other drivers on the income statement is
essential.
● The income statement data will be forecast based on historical trends and cycles.
● Some data actions will be scheduled in the calendar.
● ABC Corporation needs a mechanism to coordinate and monitor the planning process in
the calendar that is performed by each regional planner. Planning milestones must be
submitted and then approved.
● After plan data is approved in all regions, it must be locked to prevent any further changes.
Then, the results can be published.

The Planning Process

Figure 1: The SAP Analytics Cloud Planning Process

Prepare
Planning modelers do most of their work in the preparation phase. After the initial setup of the
solution, they can update and enhance it during later cycles.
The work performed in the prepare phase is done at the start of a project.

1. In the prepare phase, our team will use SAP Analytics Cloud to create and populate our
planning models and dimensions. The main business requirement in implementing SAP
Analytics Cloud planning is to create planned income statements by line of business,
region, and legal entity.

2. We'll then add planning functionality related to the model, creating planning objects such
as data actions and multi actions, setting up validation rules and allocation processes, as
well configuring data locking.

3. As planners, we’ll spend most of our time in stories, inputting data, performing
simulations, and running data and multi actions.

4. To collaborate as a team, we'll use the SAP Analytics Cloud calendar to schedule and track
the status of processes such as data actions and multi actions.

4 © Copyright. All rights reserved.


Lesson: Exploring the SAP Analytics Cloud Planning Process

Figure 2: The Planning Setup Phase

Plan
Planning reporters input data into the plan and share their work with viewers. There are often
iterative changes in this part of the process as planners and stakeholders at different levels
and in different departments collaborate on the plan.

1. Once we've set up and completed the prep work, we move on to the Planning Phase. We
use SAP Analytics Cloud to create the forecast for ABC Corporation. To create the
forecast, we'll start by creating our own private versions.

2. We’ll then publish the data for teammates to review.

3. We can collaborate using the comment and discussion tools, analyzing the data and,
where required, update the plan. Iterations of the planning cycle are easily handled with
multiple versions. Historical data is used as the basis for predictive forecasts that our
team can use to seasonalize the forecast values. To adjust the data, we can use built-in
features like mass data entry, disaggregation, and relative values for efficient manual
planning.

© Copyright. All rights reserved. 5


Unit 1: Introducing SAP Analytics Cloud Planning

Figure 3: The Planning Phase

Finalize
When the planning process nears completion, the results need to be reviewed with decision-
makers and data needs to be published. Data locks prevent changes to approved data.

1. In the Finalize Phase, our team monitors the planning process from the calendar.

2. At ABC Corporation, we'll set up a planning process with tasks by region that will be used
for status and tracking, collaboration, and automating activities. Planners will use the
calendar to launch stories, perform planning tasks, and submit their results for approval.

3. Once approved, the version is published.

4. Each region is automatically locked to prevent any further changes.

5. The planning model data can be exported to other SAP source systems such as SAP S/
4HANA.

Figure 4: The Finalize Phase

Overview of Planning-Related Topics


The following table contains a high-level overview of some of the planning-related topics you
will need to understand when working in SAP Analytics Cloud planning.

6 © Copyright. All rights reserved.


Lesson: Exploring the SAP Analytics Cloud Planning Process

Topic Description
Connections You can:
● Connect SAP Analytics Cloud to on-premise data sources.
● Connect SAP Analytics Cloud to your cloud data sources.

Dimensions ● Dimensions represent master data such as cost center, profit center,
product, and account.
● Dimensions contain members, descriptions, properties, and hierar-
chies.
● Base members don't have children while parent nodes in a hierarchy
do have children.
● Public dimensions are shareable across multiple models while private
dimensions are model-specific.

Disaggregation ● Plan data can be entered by base member or by hierarchy parent


node.
● When data is entered by hierarchy parent node, the data is disaggre-
gated to its children equally or in proportion to existing values.

Planning models ● Planning models contain dimensions that are intended for unique
types of planning such as sales, cost center accounting, human re-
sources.
● New type planning models require at least one measure such as local
currency amount, but they could easily have several measures such as
local currency amount, group currency amount, and quantity.
● New type planning models will typically contain an account dimension
even though it isn't technically required. Accounts in a planning model
can represent general ledger accounts in an ERP system such as
411100 Revenue, 422000 Cost of Goods, and 799000 Annual Net In-
come. Accounts such as 911000 Number of People, 912000 Kilowatt
Hours, and 913000 Labor Activity Price are also common.
● When a new type planning model is created, the system automatically
generates a version and date dimension specific to the model.
● Date dimension: The (flexible) date dimension can be configured to
represent calendar months or fiscal periods. Daily, weekly, monthly/
period, quarterly, and annual planning levels of granularity are sup-
ported.
● Version dimension: The version dimension is used to separate actual
vs. plan data in the model.

High-level workflow: Import actual data into a planning model, copy data
from the actual version into a plan version, perform planning stories, ap-
prove, and publish the results.

© Copyright. All rights reserved. 7


Unit 1: Introducing SAP Analytics Cloud Planning

Topic Description
Data imports ● Dimensional data can be imported from files or various source sys-
tems.
● Transaction data can be imported from files or various source sys-
tems into planning models.

Data exports ● Plan data can be exported.


● Export data from planning models to various SAP source systems
such as SAP Business Warehouse, SAP-Integrated Business Planning,
and SAP S/4HANA.

Data locking ● Used to protect data from changes.


● When planning data is approved, prevent data changes by setting a
data lock for the planning version and period/year.

Data point com- ● Used to collaborate with team members.


ments
● As planning data is created or modified, comments can be added to
the same data intersection to add context to the values.

Access Planning Activities


In SAP Analytics Cloud, planning-related objects can be accessed from the Navigation Bar.

Figure 5: Accessing Planning Options

LESSON SUMMARY
You should now be able to:
● Describe the process phases and planning-related topics of SAP Analytics Cloud.

8 © Copyright. All rights reserved.


Unit 1
Lesson 2
Planning Using SAP Analytics Cloud

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Access the different planning options available for SAP Analytics Cloud planning users.

SAP Analytics Cloud Planning Stories


SAP Analytics Cloud Stories
You create and use planning stories in order to execute planning activities in SAP Analytics
Cloud. They are created by users and are based on planning models.

Figure 6: Basic Story

In planning stories, you can use comments and discussions to collaborate with teammates.

© Copyright. All rights reserved. 9


Unit 1: Introducing SAP Analytics Cloud Planning

Figure 7: Budget, Forecast, and Analyze in Stories

If you add a table in a story for planning, then extra planning tools are available for you to use.

Figure 8: Page and Table Options in Stories

10 © Copyright. All rights reserved.


Lesson: Planning Using SAP Analytics Cloud

Note:

● Remember, your screen resolution and zoom affects where items are located
in the SAP Analytics Cloud toolbar. In the previous example, Version
Management appears in the … More menu option, however, with a higher
resolution it appears in the toolbar at the top of the screen.
● Reasons for Unplannable Data: When you hover over a cell that is secure or
locked, for example, the tooltip appears on the upper right with the
explanation.

You can also use stories created for you. In the following example, you can see the Rapid
Financial Planning and Analysis for SAP S/4HANA story landing page. This is an example of
the prebuilt content available in the SAP Analytics Cloud Content Network that administrators
can access. These stories can be customized, depending on business requirements.

Figure 9: Example of Content Network Prebuilt Story

Extended SAP Analytics Cloud Stories


Extended stories are created by story developers using advanced mode in SAP Analytics
Cloud. These stories use scripting to add customized behavior to standard story widgets.
When you interact with the story widget, then the associated scripts are executed. In the
following example, when you select a value in a dropdown, then a script filters the data by the
value you select.
Extended planning stories can range from dashboards to highly dynamic and customized
planning stories. They can be tailored for specific use cases where there are complex user
interface requirements and can be useful for guided planning and approval workflows.

© Copyright. All rights reserved. 11


Unit 1: Introducing SAP Analytics Cloud Planning

Figure 10: Extended Story

SAP Analytics Cloud extended planning stories are covered in more detail in the Designing
Extended Planning Stories in SAP Analytics Cloud learning journey.

Microsoft Add-ins for Planning


SAP Analytics Cloud, add-in for Microsoft Excel
With SAP Analytics Cloud, add-in for Microsoft Excel, SAP Analytics Cloud data can be
imported into Microsoft Excel, where you can then continue your analysis. In this example,
you can see the additional SAP Analytics Cloud tab displayed in the Microsoft Excel ribbon as
well as sample formula functions available.

Figure 11: SAP Analytics Cloud, add-in for Microsoft Excel

SAP Analytics Cloud, add-In for Microsoft Excel is covered in more detail in the Creating and
Working with Microsoft Excel Workbooks Using the SAP Analytics Cloud, Add-in for Microsoft
Excel learning journey.

SAP Analysis for Microsoft Office


SAP Analysis for Microsoft Office, commonly referred to as Analysis for Office, is a Microsoft
Office add-in that allows multidimensional analysis of SAP data sources, including SAP

12 © Copyright. All rights reserved.


Lesson: Planning Using SAP Analytics Cloud

Analytics Cloud. It consists of plug-ins for Analysis and Enterprise Performance Management
(EPM). These Microsoft Excel files are maintained by the business users.

Figure 12: SAP Analysis for Microsoft Office

The SAP Analysis for Microsoft Office add-in is covered in more detail in the Discovering SAP
Analysis for Microsoft Office learning journey.

Note:
While SAP Analysis for Microsoft Office can also be used to plan on SAP Analytics
Cloud data, all future development regarding SAP Analytics Cloud will be on the
SAP Analytics Cloud, add-in for Microsoft Excel.

LESSON SUMMARY
You should now be able to:
● Access the different planning options available for SAP Analytics Cloud planning users.

© Copyright. All rights reserved. 13


Unit 1: Introducing SAP Analytics Cloud Planning

14 © Copyright. All rights reserved.


Unit 1

Learning Assessment

1. Which of the following statements about dimensions are correct?


Choose the correct answers.

X A Dimensions represent transaction data such as cost center, profit center, product,
and account.

X B Dimensions contain members, descriptions, properties, and hierarchies.

X C Base members don't have children while parent nodes in a hierarchy do have
children.

X D Public dimensions are shareable across multiple models while private dimensions
are model-specific.

2. In SAP Analytics Cloud planning you can use stories, SAP Analytics Cloud, add-in for
Microsoft Excel and SAP Analysis for Microsoft Office to perform planning.
Determine whether this statement is true or false.

X True

X False

3. Which of the following statements about planning stories are true?


Choose the correct answers.

X A Planning stories are created by users and are based on analytic models.

X B Comments and discussions can be used to collaborate with teammates.

X C Extra planning tools are available for you to use when you add a table to your story.

X D It is possible to add scripting to standard story widgets to add customized


behavior.

© Copyright. All rights reserved. 15


Unit 1

Learning Assessment - Answers

1. Which of the following statements about dimensions are correct?


Choose the correct answers.

X A Dimensions represent transaction data such as cost center, profit center, product,
and account.

X B Dimensions contain members, descriptions, properties, and hierarchies.

X C Base members don't have children while parent nodes in a hierarchy do have
children.

X D Public dimensions are shareable across multiple models while private dimensions
are model-specific.

Dimensions represent master data such as cost center, profit center, product, and
account.

2. In SAP Analytics Cloud planning you can use stories, SAP Analytics Cloud, add-in for
Microsoft Excel and SAP Analysis for Microsoft Office to perform planning.
Determine whether this statement is true or false.

X True

X False

SAP Analytics Cloud stories, the SAP Analytics Cloud, add-in for Microsoft Excel and SAP
Analysis for Office can both be used to perform planning activities.

3. Which of the following statements about planning stories are true?


Choose the correct answers.

X A Planning stories are created by users and are based on analytic models.

X B Comments and discussions can be used to collaborate with teammates.

X C Extra planning tools are available for you to use when you add a table to your story.

X D It is possible to add scripting to standard story widgets to add customized


behavior.

Planning stories are created by users and are based on planning models. Analytic models
are used for reporting activities.

16 © Copyright. All rights reserved.


UNIT 2 Planning in Stories

Lesson 1
Creating and Managing Versions 19

Lesson 2
Viewing Version Data from the Planning Model 25

Lesson 3
Adding New Dimension Members from Data Tables 27

Lesson 4
Performing Manual Planning 31

Lesson 5
Using Mass and Fluid Data Entry When Planning in Data Tables 39

Lesson 6
Planning Using Inverse Dimension Formulas 43

Lesson 7
Planning on Multiple Hierarchies and Distributing Data with Planning Panels 47

Lesson 8
Using Seamless Planning with SAP Datasphere 53

UNIT OBJECTIVES

● Create, maintain, and publish versions from stories.


● Manage versions from planning models.
● Add new dimension members from data tables.
● Perform simple data entry and work with planning data in tables.

© Copyright. All rights reserved. 17


Unit 2: Planning in Stories

● Disaggregate planning data, lock cells, and set cells in a table to read only.
● Perform mass and fluid data entry in a data table.
● Use inverse dimension formulas.
● Plan on multiple hierarchies.
● Distribute data with planning panels.
● Use seamless planning with SAP Datasphere.

18 © Copyright. All rights reserved.


Unit 2
Lesson 1
Creating and Managing Versions

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create, maintain, and publish versions from stories.

Versions
A Version is a dimension in a planning model.
When planning models are created, the Actual version is provided as a system default.
Additional versions are created while planning in stories.
When using planning models in SAP Analytics Cloud, versions are used to organize, compare,
and maintain actual, plan, and forecast data.
You only need one version for historical (actual) data. But, when planning for the future,
organizations can create plan iterations for a variety of reasons. These plans can each use a
different version of the data. When working with versions, you can change data in one version
without impacting the data in other versions.

Version Management
Version Management lets you manage different versions and types of plans. For example,
your organization can create a new version for each new forecast period. You can separate
your forecasts from other types of plans like budgets and strategic plans.

Private and Public Versions


In SAP Analytics Cloud, there are two types of versions available to planners: private versions
and public versions.

Private Versions
Private versions are maintained in a story and are only visible to the creator of the version.
You can use private versions to change or simulate plan values without making the changes
visible to anyone else.
● You can make a private version a new public version by using the Publish As option.
● When you use the Publish private data option, it writes to the public version where it was
copied from initially.
● Private versions can be shared with other users, if needed.
● When you edit private data, the data is automatically saved.

© Copyright. All rights reserved. 19


Unit 2: Planning in Stories

Note:
You can view your own private data from the planning model. When private data is
changed, you don't need to save it or publish it.

Public Versions
Public versions are also maintained in stories. It’s published so that other planners can see
the data.
● There can be only one public Actual version in a planning model.
● Access to public version data is controlled by data privileges.
● If you leave a story without publishing data changes, you’re prompted either to Revert all
or Publish all changes. If you leave a story without reverting or publishing, the data will be
retained (in edit mode) when you return to the story, but it won't be published.

Create New Versions


Versions can be created and maintained from the Version Management option in the story
ribbon.

Figure 13: Accessing Version Management

In the Version Management panel below, you can see several display, creation, and publishing
options highlighted.

20 © Copyright. All rights reserved.


Lesson: Creating and Managing Versions

Figure 14: Version Management

1. The Show versions in use only toggle allows you to show or hide versions that aren’t
included in the associated table filter.

2. Add a new public version without any data by selecting the Create Blank Public Version
icon.

3. Choose Copy to create a new public version with data.

4. Choose Publish to update the database with unpublished data. Any data in Edit Mode
remains unpublished.

5. Add a new private version without any data by selecting the Create Blank Private Version
icon.

6. In Private Versions, the Publish button provides two options in a drop-down menu:

● Choose Publish to record the private data to an existing public version.

● Choose Publish As to record the private data to a new public version.

7. In Private Versions, the Copy button creates a new private version.


If comments are enabled in the data table, then all comments are included.

Note:
To share a private version, go to Version Management → Private Versions → …
(More) → Share. Select either Read Only or Read and Write.

Access Versions from Data Tables


Managing Versions from Data Tables
You can conveniently access version options from a data table in a story. Right-click on a data
cell, and you can select from a list of options.

© Copyright. All rights reserved. 21


Unit 2: Planning in Stories

Figure 15: Convenient Access to Version Data

The Version options menu allows you to:

1. Start Edit Mode: Create a temporary private version that only you can see until the
changes are published.

2. Undo / Redo Data Change: Undo or redo the last data change.

3. Revert: Go back to the last saved data.

4. History: Access processing steps on unpublished data.

5. Publish: Publish changes to an existing public version.

6. Publish As: Publish private data to a new public version.

7. Copy Version: Copy a private or public version to a new private version.

8. Delete Version: Delete a public or private version.

Version History Panel


By clicking any of the processing steps in the Version History panel, you can display the data
for each change that you made from the time the data was copied. It's helpful when
conducting simulations, as you can quickly click through the processing steps to see how
changes such as a 5% discount versus a 10% discount affects the overall forecast.

22 © Copyright. All rights reserved.


Lesson: Creating and Managing Versions

Figure 16: Version History

Version Categories
The type of planning activity in a version is described by its version category. Meaning, a
version related to actual data is assigned to the Actual category and a version related to
forecast data is assigned to the Forecast category.
There are five built-in version categories:

1. Actual: Historic data. Values that you’ve achieved.

2. Budget: How much you're allowed to spend.

3. Planning: The goal (financial or non-financial) that you're trying to achieve next year or the
next three years.

4. Forecast: Your expectation for a specific timeframe in the future. This typically focuses on
major revenue and expense items and is updated every month or quarter.

5. Rolling Forecast: Similar to forecast, except it usually includes a few months of actual data
followed by a continuous 12-18 months of forecast data.

Note:

● There’s no intrinsic difference among the budget, planning, forecast, and


rolling forecast categories, for example, the system functions the same for the
planning category as it does for the forecast category.
● Planning models can only contain one actual version.
● Additional categories can't be added.

Publish Versions

Caution:
Once data is published, it can't be undone.

© Copyright. All rights reserved. 23


Unit 2: Planning in Stories

When you enter data for a public version and you're ready to publish, you can do so from the
story ribbon as follows:
● In View mode, choose the dropdown next to Publish Data in the ribbon and select
Advanced → Publish All.
● In Edit mode, select Publish Data from the ribbon.
Remember, the menu options vary depending on your device type and screen resolution.
The Publish Data option may appear as in the following example or in a More option.

Figure 17: Publish Data

Note:
Publishing when using data actions and multi actions: When using data actions,
public data can be published when the data action runs. When using multi actions,
public data can be published in a separate process step. Data actions and multi
actions are covered later in this course.

LESSON SUMMARY
You should now be able to:
● Create, maintain, and publish versions from stories.

24 © Copyright. All rights reserved.


Unit 2
Lesson 2
Viewing Version Data from the Planning Model

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Manage versions from planning models.

Version Dimensions
Access the Version Dimension from a Planning Model
In the Version dimension, Category is a property that is used to describe the type of planning
activity. You can access the version dimension from the Model Structure workspace of the
planning model, as you can see in the following example.

Figure 18: Accessing the Version Dimension from a Planning Model

In the preceding example, you can see the public.actual version, which is automatically
created by the system when a planning model is created. Other versions can be created from
stories.

© Copyright. All rights reserved. 25


Unit 2: Planning in Stories

Note:
Importing Data
● Data can only be imported into a public version of a planning model.
● During the import, the default version is actual but it can be changed to any
other existing public version.
● Public versions can't be created during the import process for new model
types.

View Data by Version


When viewing data from the planning model, both published and unpublished public data can
be viewed. Private data is viewable by whomever created the private version.

Figure 19: View Versions from the Planning Model Data Foundation

Note:
Administrators can delete all private data from model preferences.

LESSON SUMMARY
You should now be able to:
● Manage versions from planning models.

26 © Copyright. All rights reserved.


Unit 2
Lesson 3
Adding New Dimension Members from Data
Tables

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Add new dimension members from data tables.

Create New Dimension Members


While planning in a story, if you need to add a new member, then you can enter new
dimension members directly into the data table. However, you can't create members for
Account, Version, or Date dimensions from a data table.
While you can create members in a story, you can't delete them. Members can only be
deleted from the model or public dimension (assuming they don't have any posted values).

Add a New Dimension Member from a Story


When you right-click on a call and choose Add Member, a blank row is inserted below.

Figure 20: Add Dimension Member from a Data Table

You enter in the new member into the new blank row. In the following example, you can see
that Sweatshirts is added.
An input help allows you to access a dialog to select the Parent Node and input the Description
and ID. You can choose to define the new member as a child or sibling of existing members.

© Copyright. All rights reserved. 27


Unit 2: Planning in Stories

Figure 21: Input Help and Parent Node Dialog

Note:
If the dimension has properties, you can input existing or new property values as
well.

Insert Unposted Member


When a dimension is set to display posted values, the Add Member option is used to add a
new row, for example. By double-clicking the cell, you can insert an unposted member. This
allows you to add members (that don't have data in the fact table) to the input form and input
values.

Unbooked Data
When you create a new member, it won't have any data. A member with no data is referred to
as Unbooked and is displayed as a dash - in the table cell.
Unbooked data isn't visible unless the Unbooked Data setting for the table is turned on. To
add new members more quickly, the Unbooked Data setting is turned off by default. However,
if you create a new member on an inner dimension, then Unbooked Data is turned on
automatically for that member.

28 © Copyright. All rights reserved.


Lesson: Adding New Dimension Members from Data Tables

Figure 22: Unbooked Data

Save a New Member


After you save the new member, you are no longer able to change the member details.

Note:
Master Data: At an enterprise level, you must decide where master data is to be
maintained. In general, a corporate repository (master data governance)
approach is taken. However, in some cases, adding new dimension members while
planning in a story is feasible, for example, it is feasible when planning for a
consumer products company to add new products as and when needed.

LESSON SUMMARY
You should now be able to:
● Add new dimension members from data tables.

© Copyright. All rights reserved. 29


Unit 2: Planning in Stories

30 © Copyright. All rights reserved.


Unit 2
Lesson 4
Performing Manual Planning

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Perform simple data entry and work with planning data in tables.
● Disaggregate planning data, lock cells, and set cells in a table to read only.

Data Entry
Data entry is key to planning functionality. SAP Analytics Cloud's planning functionality makes
it easy to enter data, perform calculations on that data, and write it back to your database.
In the following example, you can see some of the key data entry features in SAP Analytics
Cloud:
● Adjust plan by +/-, %, or absolute value.
● Shortcut scaling characters to simplify input.
● Automatic highlights of impacted and related cells.
● Messages with number of records changed.

Figure 23: Data Entry Based on a Percentage

Data Scaling
Data tables in stories are automatically scaled to thousands or millions, depending on the
data. The scaling factor is displayed on the upper left of the data table. When you enter
numeric values, for example 10 as in the following example, the system automatically displays
the scaling factor in the cell.

© Copyright. All rights reserved. 31


Unit 2: Planning in Stories

Figure 24: Scaling

It is also possible to set scaling for a table in the data region styles.

Data Change Indicator


You can see in the following example that when there's a data change an asterisk appears in
the affected column. The asterisk and the yellow markup mean that the data entry function is
being used but not published.
Data entries can be tested before you save and publish them.

Figure 25: Change Indicator

Values
You can type an absolute value in a cell or type a relative value such as *2 or +500 to perform
simple mathematical calculations on existing data. For example, if the data value in a cell is
100, and you type *2 in the cell, the value will change to 200.

Table 1: Relative Value Options


Relative Value Symbol Description
In this table, X represents a number.

*X Multiply the value by X


/X Divide the value by X
X% or - X% Increase or reduce the value by X percentage
+X Add X to the value

32 © Copyright. All rights reserved.


Lesson: Performing Manual Planning

Relative Value Symbol Description


In this table, X represents a number.

-X Subtract X from the value

You can also include the scale when typing a value. For example, if you want to enter the value
1,000,000, you can simply type 1M, and SAP Analytics Cloud will interpret that entry as
1,000,000.

Table 2: Scale Options


Scale Single Letter Complete Word Short Form
Thousand T Thousand K
Million M Million M
Billion B Billion Bn

Hint:
You can also copy and paste values from a source such as Microsoft Excel or a
flat file to develop your dataset.

Disaggregation
When data is entered for a parent member, the system automatically disaggregates the
parent data to the children, either equally or in proportion to existing values. This saves you
time as you don't have to enter data for every base member.
Disaggregation can be controlled as follows:
● Filter the data table so that input cells only represent base members.
● You can control disaggregation by enabling Data Disaggregation - Data Locking and / or
Data Disaggregation - Validation Rules in the planning model and also in the data table.

Note:

● Base members in a dimension don't have children.


● Base members are also referred to as leaf members.

Key Terminology
There are several terms that relate to disaggregation, such as allocation and distribution. In
this context, we're using these definitions:
● Disaggregation: The system automatically assigns values entered for a parent to its
children equally, or proportionally, based on the existing values.
● Allocation: This is based on explicit instructions in an allocation process.

© Copyright. All rights reserved. 33


Unit 2: Planning in Stories

● Distribute: This is an option in the planning panel used in stories.

Disaggregation Example
In the following Disaggregation example, discounts are disaggregated:

1. Existing discounts: The children of the Discounts account in Feb (2025) contain existing
values that total .8m. In Mar (2025) no values are posted for Discounts.

2. New discounts: Values of 1m for Discounts in Feb (2025) and in Mar (2025) are entered.

3. Discounts disaggregated:

● The delta of .2m is spread proportionally to Pricing Adjustments and Sale Allowances.
Since every dimension in the model is restricted to base members in the table filter,
only two records are updated.

● The 1m entered for Discounts in Mar (2025) is disaggregated equally to the four
children accounts because they don’t contain any data.

Figure 26: Disaggregation

Note:
In the preceding disaggregation example, if a dimension such as product isn't
restricted in the table filter, then a new value will be disaggregated proportionally
to all products that contain posted values.

Unbooked Cells
If you enter a value in an unbooked cell, then the following rules are used to determine how to
disaggregate the value along each dimension:
● If the unassigned member (#) is available as a leaf member of the source cell, then this
member receives the same value as the source cell and other members of the dimension
remain unbooked.

34 © Copyright. All rights reserved.


Lesson: Performing Manual Planning

● The unassigned member may not be available and in these cases, the value is spread to
base members based on the dimension's aggregation type. Some reasons why the
unassigned member may not be available:
- It's filtered out of the table.
- It doesn't aggregate up to the source cell.
- It doesn't exist for dimensions such as Time and Account. In these cases, the value is
spread to base members based on the dimension’s aggregation type.

Additional Information
Visit the SAP Help Portal to find additional information about the disaggregation of values
during data entry

Cell Locking in Stories


Cell locks prevent data entry for specific table cells and are defined in the table. If you lock a
table cell, then the value in that cell isn't updated when you change the data.
When using cell locks, it's important to remember:
● They are saved with the story.
● They are page-specific.
● They are story-specific.
● They apply to everyone who accesses the same page in the same story.

You set locks individually in the table by right-clicking a cell and choosing Lock Cell.
You set locks on multiple cells by using the Value Lock Management panel. The Value Lock
Management panel can be accessed from the main toolbar in the ...More option.

Figure 27: Lock Cell

Set Locks
In the following example, five key elements for cell locking are highlighted:

© Copyright. All rights reserved. 35


Unit 2: Planning in Stories

1. Lock a cell: Right-click on a specific cell and lock it. This prevents data entry and
disaggregation won't update the cell.

2. View all locks: View existing locks and their priority in Value Lock Order.

3. Set new lock: Create a new lock.

4. Clear locks: Clear all locks at once.

5. Reset priority: Reset the lock order.

Figure 28: Cell Locking Concept

Rearrange Locks
To change a lock's priority, you can rearrange locks in the Value Lock Management panel. In
the Value Lock Order, you can drag a lock to change the priority. After you move one lock,
priority values appear for all locks in the list with their specific priority.
When you lock a table cell, the value in that cell won't be updated when you change the data.
By default, data entry processes have lower priority than cell locks. If you want to give data
entry processes higher priority, you can change the order of the locks.

Set and Unset Read Only Cells


When you need to prevent input for a large range of cells, you can use the Set/unset read only
for selected cells option. However, remember that the Set/unset read only for selected cells
setting doesn’t prevent disaggregation.
To use this option, follow these steps:

1. Highlight the cells that you want to disable for input.

2. Go to … More in the Tools area of the ribbon.

3. Select Set/unset read only for selected cells.

Once applied, the selected cells are grayed out and data entry isn't possible.
When you save the story, the Set/unset read only for selected cells setting is retained.

36 © Copyright. All rights reserved.


Lesson: Performing Manual Planning

Figure 29: Set/unset Read Only for Selected Cells

Note:
If you want to prevent data entry on only a few cells, use cell locks from the Value
Lock Management panel. This panel only applies to Cell Locks.

LESSON SUMMARY
You should now be able to:
● Perform simple data entry and work with planning data in tables.
● Disaggregate planning data, lock cells, and set cells in a table to read only.

© Copyright. All rights reserved. 37


Unit 2: Planning in Stories

38 © Copyright. All rights reserved.


Unit 2
Lesson 5
Using Mass and Fluid Data Entry When
Planning in Data Tables

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Perform mass and fluid data entry in a data table.

Data Entry Modes


The data entry modes for data tables are as follows:
● Single Data Entry Mode: Processes each new data change immediately.
● Fluid Data Entry Mode: Processes all new data changes at the same time if they are made
in a fast sequence. This is the default data entry mode for new data tables.
● Mass Data Entry Mode: Processes all new data changes when you confirm that you've
finished entering values.

Figure 30: Data Entry Modes in Data Tables

Mass Data Entry


Adding multiple values to a table can be time consuming when you have to wait for the system
to update the data source after each entry. Mass Data Entry allows you to enter multiple
values in a table without waiting for the system to update between entries.
You can use the mode as required, for example, you can perform some updates then exit
Mass Data Entry mode and continue to make changes in the story.
In order to use Mass Data Entry, follow these steps:

© Copyright. All rights reserved. 39


Unit 2: Planning in Stories

1. Switch to Mass Data Entry using the table's More Actions menu.

2. Enter data values.

3. Select Process Data to apply the changes and exit or select Exit Mass Data Entry to leave
without applying changes.

Figure 31: Steps to Use Mass Data Entry

Fluid Data Entry


In Fluid Data Entry Mode, data values that are entered in a fast sequence are processed
together at the same time as a batch; you don’t need to wait for the system to update
between entries.

Figure 32: Fluid Data Entry

Time Interval for Fluid Data Entry


Data values that are entered with time between every two successive data entries within this
set time interval are treated as belonging to the same fluid data entry batch. For example, if
the interval is set to 500 milliseconds (0.5 seconds), then after 0.5 second of inactivity, the

40 © Copyright. All rights reserved.


Lesson: Using Mass and Fluid Data Entry When Planning in Data Tables

batch is processed. The next data value you enter is treated as the first one of a new fluid data
entry batch.
SAP Analytics Cloud administrators can set or change the time interval for fluid data entry
batches by going to System → Administration → System Configuration and updating the value
for Time interval of fluid data entry batches (in milliseconds).

LESSON SUMMARY
You should now be able to:
● Perform mass and fluid data entry in a data table.

© Copyright. All rights reserved. 41


Unit 2: Planning in Stories

42 © Copyright. All rights reserved.


Unit 2
Lesson 6
Planning Using Inverse Dimension Formulas

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Use inverse dimension formulas.

Inverse Dimension Formulas


By default, planning models don't support data entry for formulas. But with inverse functions,
you can enable data entry for the formula result and then specify one or more ways to reverse
the formula, meaning it is possible to add inverse functions to calculate a value that is the
result of the formula.

Single Inverse Formula


Let's use a scenario where you want to input values for revenue and cost and have the system
calculate the profit. You also want to be able to enter the profit and have the system back-
calculate cost.
In the example below, the two possible outcomes are displayed:
● Without an Inverse Formula: Profit is calculated and input is not possible.
You can see the Account dimension with the calculated member Profit that is calculated as
[Revenue] – [Cost].
With this formula, you can't enter data for the Profit account since it's the result of a
formula.
● With an Inverse Formula: Profit is calculated and input is possible.
You can see the formula [Revenue] – [Cost] | INVERSE ([Cost] := [Revenue]
– [Profit]).
With the inverse formula option of Cost = Revenue - Profit, if you enter a value for
Profit in a story, then Cost adjusts while Revenue remains constant.

© Copyright. All rights reserved. 43


Unit 2: Planning in Stories

Figure 33: Dimension - Inverse Formula

Note:
You can also input data for an account that is a percent type. For example, profit
%.

Display the Formula Bar


To display the dimension formula:

1. Go to … More in the Tools menu.

2. Select Formula Bar.

3. Highlight the account with the formula.

Figure 34: Formula Bar

44 © Copyright. All rights reserved.


Lesson: Planning Using Inverse Dimension Formulas

Multiple Inverse Formulas


You can define multiple inverse formula options in a given formula. When doing so, the order
in which they are typed determines the priority.
Inverse formulas require the following characters:

Character Description
| A vertical bar (pipe) marks the end of the base formula and the be-
ginning of one or more inverse functions.
:= You must add a colon before the equal sign when defining an inverse
function.

In some cases, it may not be possible to change the value for cost. For example, if a cell lock is
applied to cost, or values are entered for cost and profit simultaneously. To allow data entry in
these cases, you can define a secondary inverse formula that assigns value to revenue:
[Revenue] – [Cost] | INVERSE([Cost] := [Revenue] – [Profit]) OR
INVERSE([Revenue] := [Profit] + [Cost])
When the first inverse formula can't be applied, the data entry can be carried out using the
secondary formula. As a result, the revenue value is adjusted.

Additional Information
Visit the SAP Help Portal for more information: Inverse Formulas

LESSON SUMMARY
You should now be able to:
● Use inverse dimension formulas.

© Copyright. All rights reserved. 45


Unit 2: Planning in Stories

46 © Copyright. All rights reserved.


Unit 2
Lesson 7
Planning on Multiple Hierarchies and
Distributing Data with Planning Panels

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Plan on multiple hierarchies.
● Distribute data with planning panels.

Planning on Multiple Hierarchies


In the early phase of a planning process, a lead planner may want to do some high-level
planning by store type and then lock down the data. When planning by individual stores
occurs, planners won't be able to exceed the lead planner's values.
The process for planning with multiple hierarchies includes the following steps:

1. Create a high-level hierarchy by store type.

2. Create low-level hierarchy that includes stores.

3. The lead planner inputs the forecast amounts by store type.

4. The lead planner locks the cell.

5. The store planners input data by store, in Mass Data Entry Mode.

Figure 35: Entering Values with Multiple Hierarchies

© Copyright. All rights reserved. 47


Unit 2: Planning in Stories

Scenario: Top Down Budgeting


When you enter planning data for a dimension with multiple hierarchies, you can end up with
values booked directly to parent nodes in some of the hierarchies. For example, you can work
in one table with a hierarchy with store types as leaf members, and in another table with store
types as parent members.
Top down budgeting has to do with setting a limit on what the planners can assign, for
example, to their stores.
In the following example, you can see the steps required to prevent the store planners from
exceeding the total by store type:

1. The Large Store Consolidated store group is set to $1000 using Mass Data Entry Mode
and the cell is locked.

2. The budget is exhausted.

3. The store planner can’t budget any more than $1000. If they add $5 to Store 17, then
Stores 12-16 update to $199.

Figure 36: Top Down Budgeting

Additional Information
Visit the SAP Help Portal for more detailed information: Entering Values with Multiple
Hierarchies

Planning Panel
You can use the Planning Panel to move values in a table and perform distributions. The panel
can help if you’re working on a task that’s too complex for basic data entry, but doesn’t need a
structured data action or allocation process.
For example, you have an unassigned overhead cost that you want to spread to a few different
cost centers. Or you need to redistribute sales volumes among different regions without
changing the total. These tasks are difficult with basic spreadsheet applications, but you can
handle them quickly using the Planning Panel.

48 © Copyright. All rights reserved.


Lesson: Planning on Multiple Hierarchies and Distributing Data with Planning Panels

Figure 37: Planning Panel Options

Features of the Planning Panel


The Planning Panel is a built-in story feature that allows you to:
● Use a form-based approach to distribute values between the members.
● Distribute values in the data table using on-the-fly criteria selected.
● Preview the results before submitting.

You can also interact with the table while the Planning Panel is open. You can collapse or
expand dimension members, set the drill level of a dimension, show or hide unbooked
members, and show or hide rows and columns.
Here's an example of how to use the Planning Panel. For the 2023 hierarchy node, the planner
wants to distribute 1,200,000 to each month equally.
Steps:

1. Select the 2023 cell in the data table.

2. In More Actions, go to Distribute Values.

3. In the Planning Panel, enter 1,200,000 as the amount to distribute.

4. In Recommendations, choose Distribute to Date members one level below.

5. Choose Overwrite.

6. For the driver, choose Equally (the preview appears).

7. Choose Apply.

© Copyright. All rights reserved. 49


Unit 2: Planning in Stories

Figure 38: Planning Panel Scenario

Basic Operations
There are two basic operations:
● Distribute a source value to one or more target cells.
● Redistribute the values of a group of cells.

Options, such as custom source values and different driver types, let you carry out more
scenarios with the planning panel. You can also allocate multiple dimensions in one step, and
pick target cells from different hierarchy levels.

Planning Panel Recommendations


In the following examples, you'll see the four options to distribute from an entity parent node
to its members along with a preview.
The number of recommendation options depends on whether the source value is a parent
with only children or a parent with siblings.

1. Distribute to Entity Members of the Same Level

Figure 39: Distribute to Entity Members of the Same Level

50 © Copyright. All rights reserved.


Lesson: Planning on Multiple Hierarchies and Distributing Data with Planning Panels

2. Distribute to Entity Members One Level Below

Figure 40: Distribute to Entity Members One Level Below

3. Redistribute Among Entity Members

Figure 41: Redistribute Among Entity Members

4. Redistribute Among Entity Members of Lower Level

Figure 42: Redistribute Among Entity Members of Lower Level

© Copyright. All rights reserved. 51


Unit 2: Planning in Stories

Driver
Use the Driver options to choose how to set the cell values:
● Input Values: Add the exact target values, either in the table or in the panel.
● Equally: Divide the source value equally among the cells.
● Input Weights: Set proportional weights for each cell. For example, if you want to get
weights from a different time period, you could copy and paste those values from the
table.
● Proportionally: Use the existing proportions between the cells. This option requires
existing booked values.

Year-To-Date Variance
The Planning Panel can be used to adjust your revised annual budget. For example, if your
travel expenses are higher than budgeted, you can assign the variance to the upcoming
forecast periods. This way, you’ll set new targets that reduce your costs enough to meet the
budget for the year.
In the following example, the year-to-date variance is 17,543,670. In the Planning Panel, you
enter -17,543,670 and choose Append. The forecast for July to December is reduced. The
YTD expense variance is distributed to the remaining months so that no over-runs occur by
the end of the year.

Figure 43: Distribute YTD Variance - Example

LESSON SUMMARY
You should now be able to:
● Plan on multiple hierarchies.
● Distribute data with planning panels.

52 © Copyright. All rights reserved.


Unit 2
Lesson 8
Using Seamless Planning with SAP Datasphere

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Use seamless planning with SAP Datasphere.

Integrated Data and Analytics

Note:
Connecting SAP Analytics Cloud and SAP Datasphere for seamless planning is
available as a controlled release with SAP Analytics Cloud QRC4 2024.

What is Seamless Planning?


Seamless planning is the integration of SAP Analytics Cloud and SAP Datasphere. It is not a
product but a solution that aims to improve data and application interoperability between
SAP Analytics Cloud and SAP Datasphere.
Connecting SAP Analytics Cloud for planning and SAP Datasphere as a data platform creates
a seamless planning solution. This simplifies the planning process and enables a uniform
interface. The goal is to reduce the time to action and foster collaboration across different
lines of business by enabling planning and analytics on a simplified, centralized, and governed
data platform.

Figure 44: Integrated Data & Analytics Portfolio

How Does It Work?


With seamless planning, data in planning models can be easily combined with other data to
create new views supporting a wide selection of applications.

© Copyright. All rights reserved. 53


Unit 2: Planning in Stories

You can opt for SAP Datasphere as a data storage location when creating new models and
dimensions, or when importing content from the Content Network in SAP Analytics Cloud.
While SAP Datasphere acts as the processing layer, SAP Analytics Cloud continues to define
the model structure, own the model’s metadata, define calculations, planning processes, and
so on. Direct write access to the planning fact table in SAP Datasphere is not possible as SAP
Analytics Cloud objects are read-only in SAP Datasphere.
To model your data and create stories, you must start off with an SAP Datasphere space.
Spaces are created by administrators and are virtual work environments with their own
databases, enabling you to collaborate without being concerned about sharing your data.

Benefits
With seamless planning, there is:
● Reduced data redundancy.
● Enhanced flexibility to perform live reporting across SAP Analytics Cloud and other data
sources based on joint SAP Datasphere analytic models.
● Extensibility of SAP Analytics Cloud planning using SAP Datasphere capabilities such as
data operations using SQL editor.

Figure 45: Foundation for Enterprise Planning

Requirements
All SAP Analytics Cloud planning features are available for seamless planning models,
including SAP Analytics Cloud predictive scenarios, however, there are some requirements.
To use seamless planning:
● SAP Analytics Cloud has to run on HANA Cloud.
● SAP Analytics Cloud and SAP Datasphere tenants have to be linked for seamless planning
in a 1:1 relationship by the system owner. Linking will enable the selection of SAP
Datasphere spaces as the data storage location for the supported object types.
● One SAP Analytics Cloud tenant can be linked with only one SAP Datasphere tenant.

54 © Copyright. All rights reserved.


Lesson: Using Seamless Planning with SAP Datasphere

● You need to own licenses for both SAP Analytics Cloud and SAP Datasphere. In the
seamless planning scenario, you would license the planning functionality via SAP Analytics
Cloud users and license the hardware (storage, memory, compute) required for planning
via SAP Datasphere capacity units.

Note:

● Only seamless planning models in Optimized Design Experience can be


consumed.
● The deployment of classic account models to SAP Datasphere is not
supported.

SAP Datasphere as a Data Storage Location


Create the Model
You still build your model in SAP Analytics Cloud even if you choose to store your data in SAP
Datasphere. To create a model from a file that uses SAP Datasphere as the data storage
location:

1. In the Modeler in SAP Analytics Cloud, create a new model.

2. In the Data Storage Location dialog, select SAP Datasphere. From the dropdown menu,
select your SAP Datasphere space. Select Next. If you select SAP Analytics Cloud, then
you cannot use seamless planning.

3. In the Select a data source dialog, select File (Local File or File Server).

4. In the Create Model from File dialog, use the Select Source File button, navigate to the file
and select it. Once you select it, select Import.

Figure 46: Create a Model From a File Using an SAP Datasphere Space as the Data Storage Location

© Copyright. All rights reserved. 55


Unit 2: Planning in Stories

Expose the Model to SAP Datasphere


If you want to enable SAP Datasphere users to consume the model in SAP Datasphere, then
model needs to be exposed. To do this:

1. Enable Planning Capabilities by selecting the toggle.

2. Select Edit.

3. In the SAP Datasphere Fact Table dialog, name the fact table. Select OK.

4. Save the model.

Figure 47: Not Exposed in SAP Datasphere

SAP Analytics Cloud models expose the underlying data foundation as a Local Table (Fact),
while the public dimension tables expose the master data as a Local Table (Dimension)
associated with a translation table (storing the multi-language descriptions) and, in the
future, hierarchy tables.

56 © Copyright. All rights reserved.


Lesson: Using Seamless Planning with SAP Datasphere

Figure 48: Exposed in SAP Datasphere

Once a model is exposed, SAP Datasphere can use SAP Analytics Cloud-exposed objects in
graphical views, SQL views, analytic models, transformation flows, for example. However,
remember that SAP Analytics Cloud objects appear in read-only mode in SAP Datasphere,
meaning that SAP Datasphere modelers cannot make structural changes to these objects.

Fact Tables in SAP Datasphere


Access the SAP Datasphere Space
To access the fact table that was created when you exposed the model, open the SAP
Datasphere space in the Data Builder.

Figure 49: Data Builder in SAP Datasphere

© Copyright. All rights reserved. 57


Unit 2: Planning in Stories

View the Data


In the Data Builder of SAP Datasphere, you can see that the SAP Analytics Cloud model was
successfully deployed and the SAP Analytics Cloud model was exposed with the semantic
type Fact.

Figure 50: Objects Contained in the SAP Datasphere Space

When you open the fact table and select Data Viewer, you can view the model data. Since the
model was exposed in read-only mode, you cannot change the structure from the Data
Builder. Nevertheless, you can consume the model as the source in other workflows such as
analytic models.

Figure 51: Fact Table for the SAP Analytics Cloud Model

58 © Copyright. All rights reserved.


Lesson: Using Seamless Planning with SAP Datasphere

Seamless Planning in an SAP Analytics Cloud Story


To use seamless planning for your plan data, you first have to create an Optimized Design
Experience story in SAP Analytics Cloud using the model that you created and exposed to
SAP Datasphere.

1. In your story, update the plan data. In the example below, you can see Plan Sales Revenue
was updated.

2. Select the Advanced Publish option from the dropdown menu.

3. In the Publish or Revert Data by Version dialog, select the Publish icon.

4. Check the SAP Datasphere fact table to see the change to the plan data.

Figure 52: Using Seamless Planning in an SAP Analytics Cloud Story

Graphical Views and Analytic Models in SAP Datasphere


In SAP Datasphere, there are a variety of different ways that you can prepare data for
consumption. In this lesson, we will create a model in SAP Datasphere using a Graphical View
to query the SAP Analytics Cloud fact tables for sales revenue plan data and actual data.
Remember, the data models for plan data and actual data were created using the SAP
Datasphere Data First approach. Meaning models were created in SAP Analytics Cloud using
a file, an SAP Datasphere space was selected as the data storage location, and the model was
exposed to SAP Datasphere.

Create a Graphical View


To create a graphical view using the fact tables created from the SAP Analytics Cloud model:

1. In SAP Datasphere, go to Data Builder.

2. Select the SAP Datasphere space that was exposed to the model.

3. Select the fact table, in the following example, Fact_Table_Plan_Data is selected.

4. Select New Graphical View.

© Copyright. All rights reserved. 59


Unit 2: Planning in Stories

Figure 53: SAP Datasphere Graphical View

Combine the Plan and Actual Fact Tables


Since we want to combine the data from the two fact tables, we use the Union operator in the
graphical view.

1. Drag the first data source, in this example, Fact_Table_Plan_Data onto the canvas.

2. Drag the second data source, Fact_Table_Actual_Data and drop it onto the Union
operator.

Figure 54: Combine the Data Sources

Map the Dimensions and Measures


The graphical view setup requires mapping between the dimensions and the measure of both
data sources. Once the mapping is complete, save the graphical view.

60 © Copyright. All rights reserved.


Lesson: Using Seamless Planning with SAP Datasphere

Figure 55: Union Properties

Deploy the Graphical View


Configure and deploy the graphical view by completing the following steps:

1. Toggle Expose for Consumption to On.

2. Toggle Run in Analytical Mode to On.

3. Deploy the view.

4. Once the Status is set to Deployed, select Create Analytic Model.

Figure 56: Deploy Graphical View and Create Analytic Model

© Copyright. All rights reserved. 61


Unit 2: Planning in Stories

Hint:
If the Status does not immediately update to Deployed, refresh the browser.

Deploy the Analytic Model


1. Update the name of the model. It is also possible to change the name when it's deployed.

2. Select Deploy. Once deployed, graphical view changes color as shown in the following
example, and the Status updates to Deployed.

3. To view the model, select Preview.

Figure 57: Deploy and Preview the Analytic Model

Preview the Analytic Model in SAP Datasphere


Once the analytic model is deployed, it's ready for consumption in SAP Analytics Cloud. In the
following example, you can see the plan data that was updated earlier in the lesson.

62 © Copyright. All rights reserved.


Lesson: Using Seamless Planning with SAP Datasphere

Figure 58: Preview the Analytic Model in SAP Datasphere

Seamless Planning Using an SAP Dataphere Model


To use seamless planning for your actual data, you first have to create an Optimized Design
Experience story in SAP Analytics Cloud using the model that you created and deployed in
SAP Datasphere.

1. In the Select Dataset or Model dialog, select the SAP Datasphere storage location.

2. Select the SAP Datasphere space.

3. Select the SAP Datasphere analytic model.

Figure 59: Use an SAP Datasphere Model

In the following example, you can see the plan data that was updated earlier in the lesson.

© Copyright. All rights reserved. 63


Unit 2: Planning in Stories

Figure 60: SAP Analytics Cloud Story Using an SAP Datasphere Model

LESSON SUMMARY
You should now be able to:
● Use seamless planning with SAP Datasphere.

64 © Copyright. All rights reserved.


Unit 2

Learning Assessment

1. What are the two types of Versions for planning models?


Choose the correct answer.

X A Version and Rate Version

X B Locked and Unlocked

X C Public and Private

X D Local and Shared

2. Which of the following statements about versions is correct?


Choose the correct answers.

X A In a planning model, both published and unpublished public data can be viewed.

X B In a planning model, private data is on viewable by whomever created the private


version.

X C In a planning model, only the user who created the private data can delete it from
model preferences.

X D In the Version dimension, Category is a property that is used to describe the type
of planning activity.

3. Which dimension allows the creation of new members from a story?


Choose the correct answer.

X A Version

X B Account

X C Generic

X D Measure

© Copyright. All rights reserved. 65


Unit 2: Learning Assessment

4. Where can you define cell locking?


Choose the correct answers.

X A In the model

X B In the story table widget

X C In the value management panel

5. Which of the following statements about data entry modes are true?
Choose the correct answers.

X A Single Data Entry Mode processes each new data change immediately and is the
default for new tables added to SAP Analytics Cloud stories.

X B Fluid Data Entry Mode processes all new data changes at the same time if they are
made in a fast sequence.

X C Mass Data Entry allows you to enter multiple values in a table without waiting for
the system to update between entries.

6. When using inverse dimension formulas, when is it not possible to change the value for
cost?
Choose the correct answers.

X A If a cell lock is applied to cost.

X B If values are entered for cost and profit simultaneously.

X C It is always possible to change the value for cost.

7. The Planning Panel is a built-in feature used to distribute values among dimension
members in a story.
Determine whether this statement is true or false.

X True

X False

66 © Copyright. All rights reserved.


Unit 2: Learning Assessment

8. Which of the following statements is true?


Choose the correct answers.

X A To use a model created in SAP Analytics Cloud for seamless planning, you must
expose the model to SAP Datasphere.

X B To use a model created in SAP Analytics Cloud for seamless planning, you must
select SAP Datasphere as the storage location.

X C To update a model created in SAP Analytics Cloud, you must make the changes in
SAP Datasphere.

9. To use seamless planning in SAP Analytics Cloud with a model created and deployed in
SAP Datasphere, which of the following steps must you complete?
Choose the correct answers.

X A Create an Optimized Design Experience story in SAP Analytics Cloud.

X B Select the model from the SAP Datasphere storage location.

X C Create a new model in SAP Analytics Cloud use SAP Datasphere as the storage
location.

© Copyright. All rights reserved. 67


Unit 2

Learning Assessment - Answers

1. What are the two types of Versions for planning models?


Choose the correct answer.

X A Version and Rate Version

X B Locked and Unlocked

X C Public and Private

X D Local and Shared

The two types of Versions for planning models are public and private.

2. Which of the following statements about versions is correct?


Choose the correct answers.

X A In a planning model, both published and unpublished public data can be viewed.

X B In a planning model, private data is on viewable by whomever created the private


version.

X C In a planning model, only the user who created the private data can delete it from
model preferences.

X D In the Version dimension, Category is a property that is used to describe the type
of planning activity.

Administrators can delete all private data from model preferences.

3. Which dimension allows the creation of new members from a story?


Choose the correct answer.

X A Version

X B Account

X C Generic

X D Measure

Generic and organization dimensions allow the creation of new members from a story.

68 © Copyright. All rights reserved.


Unit 2: Learning Assessment - Answers

4. Where can you define cell locking?


Choose the correct answers.

X A In the model

X B In the story table widget

X C In the value management panel

Cell locking is used in the story with no configuration needed in the model.

5. Which of the following statements about data entry modes are true?
Choose the correct answers.

X A Single Data Entry Mode processes each new data change immediately and is the
default for new tables added to SAP Analytics Cloud stories.

X B Fluid Data Entry Mode processes all new data changes at the same time if they are
made in a fast sequence.

X C Mass Data Entry allows you to enter multiple values in a table without waiting for
the system to update between entries.

While it is true that Single Data Entry Mode processes each new data change immediately,
it's Fluid Data Entry Mode that is the default for new tables added to SAP Analytics Cloud
stories.

6. When using inverse dimension formulas, when is it not possible to change the value for
cost?
Choose the correct answers.

X A If a cell lock is applied to cost.

X B If values are entered for cost and profit simultaneously.

X C It is always possible to change the value for cost.

In some cases, it may not be possible to change the value for cost. For example, if a cell
lock is applied to cost, or values are entered for cost and profit simultaneously.

7. The Planning Panel is a built-in feature used to distribute values among dimension
members in a story.
Determine whether this statement is true or false.

X True

X False

The Planning Panel is a built-in feature in a story used to distribute values among
members.

© Copyright. All rights reserved. 69


Unit 2: Learning Assessment - Answers

8. Which of the following statements is true?


Choose the correct answers.

X A To use a model created in SAP Analytics Cloud for seamless planning, you must
expose the model to SAP Datasphere.

X B To use a model created in SAP Analytics Cloud for seamless planning, you must
select SAP Datasphere as the storage location.

X C To update a model created in SAP Analytics Cloud, you must make the changes in
SAP Datasphere.

Models created in SAP Analytics Cloud must be updated in SAP Analytics Cloud. Models
created in SAP Datasphere must be updated in the SAP Datasphere Data Builder.

9. To use seamless planning in SAP Analytics Cloud with a model created and deployed in
SAP Datasphere, which of the following steps must you complete?
Choose the correct answers.

X A Create an Optimized Design Experience story in SAP Analytics Cloud.

X B Select the model from the SAP Datasphere storage location.

X C Create a new model in SAP Analytics Cloud use SAP Datasphere as the storage
location.

To use seamless planning for your actual data, you first have to create an Optimized
Design Experience story in SAP Analytics Cloud using the model that you created and
deployed in SAP Datasphere. You do not need to create a new model in SAP Anaytics
Cloud.

70 © Copyright. All rights reserved.


UNIT 3 Configuring Data Actions

Lesson 1
Exploring Data Actions 73

Lesson 2
Using Data Actions to Copy Data Within a Model 81

Lesson 3
Using Data Actions to Copy Data Between Models 85

Lesson 4
Using the Visual Editor to Create an Advanced Formula Data Action 89

Lesson 5
Using the Script Editor to Create an Advanced Formula Data Action 97

Lesson 6
Creating Dynamic Data Actions and Tables 107

Lesson 7
Creating and Running Multi Actions 111

Lesson 8
Managing Data Action Performance 115

UNIT OBJECTIVES

● Describe the data action features.


● Create and run a data action to copy data within a model.
● Create and run a data action to copy data from one model to another.
● Create an advanced formula data action using the visual editor.

© Copyright. All rights reserved. 71


Unit 3: Configuring Data Actions

● Create an advanced formula data action using the script editor.


● Build dynamic data actions and tables.
● Configure and run multi actions.
● Use best practice tips and performance tracking content.

72 © Copyright. All rights reserved.


Unit 3
Lesson 1
Exploring Data Actions

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Describe the data action features.

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.

© Copyright. All rights reserved. 73


Unit 3: Configuring Data Actions

Figure 61: Accessing Data Actions

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.

Figure 62: Data Action Processing

74 © Copyright. All rights reserved.


Lesson: Exploring Data Actions

Types of Data Action Steps Available

Figure 63: Data Action Configuration

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.

© Copyright. All rights reserved. 75


Unit 3: Configuring Data Actions

Figure 64: Copy Data Action - Executed from a Story

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

Figure 65: 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.

76 © Copyright. All rights reserved.


Lesson: Exploring Data Actions

● 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.

Figure 66: Data Action Parameter for Target Year

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.

© Copyright. All rights reserved. 77


Unit 3: Configuring Data Actions

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.

Figure 67: Schedule a Data Action from the Calendar

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.

Figure 68: Configure the Job to Schedule a Data Action

78 © Copyright. All rights reserved.


Lesson: Exploring Data Actions

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)

© Copyright. All rights reserved. 79


Unit 3: Configuring Data Actions

Figure 69: Data Action Monitor

LESSON SUMMARY
You should now be able to:
● Describe the data action features.

80 © Copyright. All rights reserved.


Unit 3
Lesson 2
Using Data Actions to Copy Data Within a
Model

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create and run a data action to copy data within a model.

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.

Figure 70: Data Action Example

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

© Copyright. All rights reserved. 81


Unit 3: Configuring Data Actions

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.

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

82 © Copyright. All rights reserved.


Lesson: Using Data Actions to Copy Data Within a Model

2. Default Value (based on the default value set in the data action configuration)

3. Story Filter

4. Input Control

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.

Figure 71: Running Data Actions from Stories

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.

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.


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

LESSON SUMMARY
You should now be able to:
● Create and run a data action to copy data within a model.

© Copyright. All rights reserved. 83


Unit 3: Configuring Data Actions

84 © Copyright. All rights reserved.


Unit 3
Lesson 3
Using Data Actions to Copy Data Between
Models

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create and run a data action to copy data from one model to another.

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.

© Copyright. All rights reserved. 85


Unit 3: Configuring Data Actions

Figure 72: Cross Model Copy with Mapping

For each of the target dimensions listed in this area, you need to either map a source
dimension or select a default value. As an example, in Cross Model Copy with Mapping figure,
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.
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:
DATA([d/Measures]="Quantity") = LINK([AccountModel], [d/
Version]="public.Forecast", [d/Account]="Quantity")

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.

86 © Copyright. All rights reserved.


Lesson: Using Data Actions to Copy Data Between Models

Figure 73: Copy from Weekly to Monthly

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.

Note:
The objects in the Copy from Weekly to Monthly image above is contained in the
SACP21 → Solutions folder:
● Models:
- U00M_Monthly
- U00M_Weekly
● U00S_Weekly_to_Monthly story
● U00DA_Week To Month data action

Copy Weekly to Monthly Data

1. Open the U00DA_Week To Month data action. Go to the Date mapping and view the auto-
generation setting.

2. Open the U00S_Weekly_to_Monthly story from the SACP21 → Solutions folder. Input
some data in the weekly model and run the data action to see the aggregation from weeks
to months.

© Copyright. All rights reserved. 87


Unit 3: Configuring Data Actions

LESSON SUMMARY
You should now be able to:
● Create and run a data action to copy data from one model to another.

88 © Copyright. All rights reserved.


Unit 3
Lesson 4
Using the Visual Editor to Create an Advanced
Formula Data Action

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create an advanced formula data action using the visual editor.

Advanced Formula Data Actions Introduction


Planning requires various types of calculations. To perform these calculations, you can use
advanced data actions (formulas).
Here are some key points regarding advanced formulas:
● Use Cases:
- Advanced formulas provide a mechanism for custom calculation logic
- Driver-based formulas: Rev = Price x Qty
- Depreciation calculation
- Populate opening balances for headcounts
- Mark-ups | Mark-downs
- Schedule or run on an ad-hoc basis
● Maintenance:
- The script editor provides context help and code completion
- Validation and trace mode in the script editor
● Features:
- The visual editor provides a graphical wizard to define calculation logic
- The statements are represented by boxes, which can be further configured with special
dialogs
- The graphical representations give users a clear logic flow

© Copyright. All rights reserved. 89


Unit 3: Configuring Data Actions

Figure 74: Advanced Formula Example

Note:
Advanced data actions are used to perform calculations that are stored in the
database. If there's a need to perform calculations that aren't stored in the
database, there are several options:
● Data table formulas
● Story-based calculated measures
● Model-based calculated measures

Advanced Data Actions


Create Calculations with the Visual Editor
Use the visual tool to drag and drop graphic elements in a flow diagram to create advanced
formulas. The general process flow for creating advanced formulas is:

1. Specify the context

2. Define and use a variable if needed

3. Set the configuration options: Calendar, Signflip, Unbooked

4. Formula options:

● Calculation

● Repeat

● Condition

● Delete

● Comments

90 © Copyright. All rights reserved.


Lesson: Using the Visual Editor to Create an Advanced Formula Data Action

Figure 75: Create Calculations with the Visual Editor

Advanced Formula
● Advanced formula actions allow you to design formulas for calculations to apply to the
source data. The results are written to specified scopes in the planning model.
● Unlike dimension formulas, which perform the calculation in real-time "on the fly", the
advanced formulas data action stores the result of the calculation in the SAP Analytics
Cloud database.
● And as with dimension formulas, parameters can be used in the advanced formula data
action.

Recent Enhancements for Advanced Data Actions


● Support AND/OR for IF condition: Complex and detailed condition expressions are
possible with shorter scripts, which means better execution performance time as well as
better readability.
● Keyword “BREAK” that stops a loop if a specific condition is fulfilled: Support an
immediate stop of FOREACH loop with IF condition or others. For example, stopping the
depreciation loop with date dimension is possible if the residual book value reaches zero
value or the iteration number reaches and the same as the useful life. You don't need to
loop for an entire date scope resulting in better execution performance.
● Load pre-aggregated value as calculation scope: Minimize the dataset size of calculation
scope for non-calculation related dimensions.
● Pop-up dialog-box that shows the calculation scope: Estimate the calculation scope at
design time and optimize the script for better execution performance.

Context Membersets
Use Membersets to Restrict the Data Region
Membersets are used to restrict the data region for the calculation.
Typical use cases:
● MEMBERSET [d/ORGANIZATION].[p/REGION] ="ASIA“: Set the scope of the
Organization dimension's Region property to ASIA.
● MEMBERSET [d/FLOW] = ("F_TEMP", "F_NONE"): Set the scope of the Flow
dimension to the F_TEMP and F_NONE members.

© Copyright. All rights reserved. 91


Unit 3: Configuring Data Actions

● MEMBERSET [d/CURRENCY] = [d/ORGANIZATION].[p/CURRENCY]: Set the Currency


dimension's scope to the value of the Organization dimension's currency property.
● CONFIG.HIERARCHY = [d/ENTITY].[h/H1] MEMBERSET [d/ENTITY] =
BASEMEMBER([d/ENTITY], "World"): Return all base members of the member "World"
in hierarchy H1 and set these base members as the member scope of the Entity dimension.
● MEMBERSET [d/DATE] ="202201" TO "202212": Set the scope of the Date dimension
from 202201 to 202212.

Memberset is used to determine the context, that is the Point of View or the Scope.

Figure 76: Advanced Formula - Memberset Concept

In the preceding example, see the explanations for the script:


● MEMBERSET [d/Date] = (BASEMEMBER([d/Date].[h/YQM], %YearMonth%))
BASEMEMBER refers to leaf members for calendar year in this example.
The time hierarchy is set to the Calendar Year, therefore YQM is the hierarchy ID.
% denotes variables: for example %YearMonth% refers to the prompt/variable for time.
Result: If you select 2021, the system will include all months of 2021 in the calculation.
● MEMBERSET [d/Cost_Center] = (BASEMEMBER([d/Cost_Center].[h/H1],
"All_Cost_Centers"))
The H1 hierarchy for the cost center dimension has been selected.
All_Cost_Centers is the id of the top node/parent.

● Result, if the user selects hierarchy node Canada, only Canadian cost centers will be
included in the calculation.

Advanced Formula Memberset Example


The following script will only run for PC1 & PC2 (that is, only PC1 & PC2 are scoped).

92 © Copyright. All rights reserved.


Lesson: Using the Visual Editor to Create an Advanced Formula Data Action

Figure 77: Advanced Formula - Memberset Example

In the preceding example, January data is being copied to February with an uplift:
DATA([d/Date] = %TargetMonthYr%) = RESULTLOOKUP([d/Date]=PREVIOUS(1)) *
%UpLift%

● In this example, %TargetMonthYr% is the receiver or target that is dynamically selected


by the planner.
● RESULTLOOKUP([d/Date]=PREVIOUS(1)) dynamically reads the previous month (or
period) as compared to the %TargetMonthYr% selection.

● %UpLift% is the variable for the uplift provided by the planner. Example: 1.25.

Visual Editor Compared to the Script Editor


The visual editor can be used for simpler calculations. It generates the script automatically.
The script editor is used for more complex programming.
You can hover on a dimension in the data line to see what members are included in the scope
of the Calculation.

© Copyright. All rights reserved. 93


Unit 3: Configuring Data Actions

Figure 78: Visual Versus Script Editor - Example of an Expression

Ways to Design Advanced Formulas


There are two different ways to design advanced formulas – using the visual tool and writing
scripts.
You can build your own logic in the visual editor and then view the generated code in the script
editor.

Figure 79: Visual Editor to Script

Summary: Visual Editor and Script Editor


Visual Editor Script Editor
Target business users Target professional modeling users, such as
IT specialists
No coding skills required Requires basic coding knowledge

94 © Copyright. All rights reserved.


Lesson: Using the Visual Editor to Create an Advanced Formula Data Action

Visual Editor Script Editor


Created by dragging and dropping graphic el- Created by writing scripts
ements
Can be switched to script Can be switched back to the visual editor

Scenario Example
Scenario: Calculate Labor
● Read labor rates from the HR model and multiply them with labor hours in the expense
model
● Input parameters are used to query information from users at execution time
● Memberset parameters flexibly define the execution scope (%CostCenter% and
%MonthYear%)
● Other scoping is hard-coded: currency = EUR
● In the DATA line, the LINK command reads labor hours from the HR Model

Figure 80: Advanced Formula Scenario - Calculate Labor

Note:
In the preceding example, line 6 has a line break to fit it all on one image. Line
breaks on data lines aren't permitted.

Note:
You can also link analytic models.

Scenario: Calculate Benefits


● Calculate benefits = labor x a user-defined %
● Parameter: provide benefit rate - %BenefitRate%

© Copyright. All rights reserved. 95


Unit 3: Configuring Data Actions

Figure 81: Advanced Formula Scenario - Calculate Benefits

LESSON SUMMARY
You should now be able to:
● Create an advanced formula data action using the visual editor.

96 © Copyright. All rights reserved.


Unit 3
Lesson 5
Using the Script Editor to Create an Advanced
Formula Data Action

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create an advanced formula data action using the script editor.

Variables
Variables in advanced formulas can be used to store data temporarily while the script is
running, to avoid calculating the value repeatedly. This is the traditional concept referred to as
a Local Variable. or Virtual Variable Member. The virtual variable member will be stored
independently and cannot be added to a dimension like a real dimension member. After
defining a variable member for a certain dimension, you can use the variable member to store
values only for that specific dimension.
Key Points:
● Write this definition after the configuration settings and before all the instructions.
● Create a new name for a virtual variable member. Make sure, in the variable member
definition, it always starts with the prefix "#".
● Dimension Name is mandatory and must be an existing dimension in the current data
action model. The version dimension is not supported. Measures are supported, for
example: VARIABLEMEMBER #Total_Revenue OF [d/Measures]
● A virtual variable member can only be used in DATA and RESULTLOOKUP functions. When
inputting "#" in DATA() or RESULTLOOKUP(), a list of all available virtual members will be
shown.

In the following Advanced Logic Virtual Variables example:


● SumOfProducts is the temporary account for total sales revenue.
● Since the total sales are over 1000 (1500), the system calculates other income of 1500 x -.
01 for each product.

© Copyright. All rights reserved. 97


Unit 3: Configuring Data Actions

Figure 82: Advanced Logic Virtual Variables

Test Variables
To work with variables, use the following content in the training system:
● P00S_Logic Story: Copy this story from the SACP21 course content folder.
● P00M_Logic Model.
● P00_Logic advanced formula.

Configuration Options
Configuration Options
Fiscal Year: This configuration governs the time hierarchy used in the advanced formulas.
This setting affects the result of time/date commands, such as FIRST and LAST.It controls
which period is selected.
Account Sign Flip: If this option is turned on, all calculations consider the sign value (debit or
credit) of each account according to the account type (LEQ, AST, INC, and EXP).
Unbooked Data: Unbooked data refers to cells with empty values. If turned on, all empty
cells in the source data to be copied will be treated as cells with zeroes.

Advanced Formula - Time Hierarchy


Time can be interpreted as YQM: Year | Quarter | Month or as FYQP: Fiscal Year | Quarter |
Period.

98 © Copyright. All rights reserved.


Lesson: Using the Script Editor to Create an Advanced Formula Data Action

Figure 83: Advanced Formula - Time Hierarchy

This configuration governs the time hierarchy of the script. If this configuration is not defined,
the default time hierarchy from the model is used.

Advanced Formula - Sign Flip


In advanced formulas, all data is calculated in absolute value by default, regardless of the
account type. This is important when working with the Account dimension, where certain
accounts will have positive values while others will have negative values. If you want to
calculate with the existing sign-flipping rules of Account dimensions, then enter
CONFIG.FLIPPING_SIGN_ACCORDING_ACCTYPE=ON at the beginning of your script.

Figure 84: Advanced Formula - Sign Flip

In the Advanced Formula - Sign Flip example, the memberset command is selecting data for
revenue and cost and then writing the result to retained earnings. If the sign flip setting is ON,
the correct value (40) is written to retained earnings.

© Copyright. All rights reserved. 99


Unit 3: Configuring Data Actions

Advanced Formula - Unbooked Data

Figure 85: Advanced Formula - Unbooked Data

In the example Advanced Formula - Unbooked Data, January data for profit centers PC1/2/3
is being copied to February. By using the unbooked setting, the existing 500 value for PC4 can
either be retained or set to zero (to match the source).

Syntax and Auto Complete


Auto Complete
As you type, a hint list shows all available functions that match the text you've typed. A short
help text description is available for each function. You can use Ctrl+Space to choose from a
list of values that are valid for that location in the formula, or type [d/ for a list of valid
dimensions and properties to use in the formula.
There are also formula templates for common calculations. If you select a formula from the
hint list, a template is automatically entered in the formula entry bar.
Examples of how to use auto-complete:
● Type M to access the command that start with the letter M.

● Type [d/ to access the model dimensions.

● Press Ctrl+Space to access members and parameters.

100 © Copyright. All rights reserved.


Lesson: Using the Script Editor to Create an Advanced Formula Data Action

Figure 86: Advanced Formulas - Auto Complete

Script Syntax

● [ ]: Dimensions, properties, hierarchies are enclosed in square brackets

● d: Dimension. Example: [d/Cost_Center]

● p: Property. Example: [d/Account].[p/ElimTarget]

● h: Hierarchy. Example: [d/Cost_Center].[h/H1], "All_Cost_Centers"))

● %: Variables. Example: % YearMonth%

● #: Unassigned. Example: since labor hours aren’t currency related, currency is


unassigned:RESULTLOOKUP([d/Account] = "LHours", [d/Currency] = "#")

● " ": Double quotes are required when specifying dimension members.

● /: Comments

Note:
In an advanced formulas step, you can repeat a group of statements a specified
number of times, using the FOR keyword. Employing a BREAK statement inside a
FOR loop will allow you to stop the loop when the given condition is met, offering
more flexibility.

Note:
In the Show option in the Script tab, you can turn Auto Complete off.

For more syntax options, to the reference guide: Advanced Formulas Reference Guide

Formula Options
Formula Options
When you create an advanced formula, you have 5 options.

© Copyright. All rights reserved. 101


Unit 3: Configuring Data Actions

1. Calculation
Calculation will create an equation such as Target = Expression

● A calculation is divided into two parts: Target and Source:


● Target is the data range to which you plan to write data.
● Source is the data involved in the calculation.

2. Delete
Delete will prompt for a filter upon which to identify which cost center to delete, for example.

3. Repeat (loop)
Repeat (loop) will prompt for a dimension to loop over, and then you can add a calculation, for
example.

For example, calculate revenue amount with a 10% increase over the previous month:
MEMBERSET [d/Date] = (BASEMEMBER([d/Date].[h/YQM], "[2024]"))
MEMBERSET [d/Measures] = ("Amount")
MEMBERSET [d/Account] = ("Revenue")
FOREACH [d/Date]
Data() = ResultLookup([d/Date]=PREVIOUS(1)) * 1.1
ENDFOR

4. Comment
Comment creates an input field for explanations.

102 © Copyright. All rights reserved.


Lesson: Using the Script Editor to Create an Advanced Formula Data Action

5. Condition
Condition will prompt for a filter upon which to create the if statement, and then you can add a
calculation.

For example, if the company = US, then copy prior year data to the current year data +10%.
MEMBERSET [d/Date] = (BASEMEMBER([d/Date].[h/YQM], "[2024]"))
MEMBERSET [d/Measures] = ("Amount")
MEMBERSET [d/Account] = ("Revenue")
IF [d/Company] = "US" THEN
DATA() = RESULTLOOKUP([d/Date] = Previous(12)) * 1.1
ENDIF

In the previous examples, you can see how the system creates formulas depending on which
option you pick. Each one generates code that you can view in the script dialog. In the
following example, you can see an example of a Calculate Labor formula in the Visual Editor.

Figure 87: Calculate Labor Formula

Editing Options
There are four editing options, when you hover over the formula:

1. Duplicate

© Copyright. All rights reserved. 103


Unit 3: Configuring Data Actions

2. Annotate

3. Comment out

4. Delete

Using Scripts to Write Advanced Formulas


When using script to write advanced formulas, keep the following in mind:

1. Each line of instruction inherits the calculation results of previous lines of instructions.

2. Advanced formulas perform all calculations only with leaf-level members that don’t have
any account formulas defined.

3. In a RESULTLOOKUP function, the function considers the most detailed values in the
dataset, even if the formula doesn't specify them. For example, consider the following
record set:
Account Product Entity Date Value
Quantity Sparkling Water Region Dec.2018 210 (aggregate
of all countries)
Quantity Sparkling Water Germany Dec.2018 50
Quantity Sparkling Water France Dec.2018 70
Quantity Sparkling Water UK Dec.2018 90

You write a formula to add 20 to the Quantity Values for December 2018 and write the new
values to January 2019:
MEMBERSET[d/Product]="Sparkling Water" MEMBERSET[d/
Account]="Quantity" DATA([d/Date]="Jan.2019")=RESULTLOOKUP([d/
Date]="Dec.2018")+20
The final result will add 20 to each detailed Entity value, not to the aggregated Region
value:

Account Product Entity Date Value


Quantity Sparkling Water Region Jan.2019 270 (aggregate
of all countries)
Quantity Sparkling Water Germany Jan.2019 70
Quantity Sparkling Water France Jan.2019 90
Quantity Sparkling Water UK Jan.2019 110

4. A null value is treated as a non-existent value, while 0 is treated as an actual number. If the
RESULTLOOKUP function returns a null value, advanced formulas do nothing.

5. Advanced formulas basically work with the fact record-set of the model. If you don't
specify other dimension information and members via the MEMBERSET definition, the
advanced formulas will take all members from the dimensions in the model.

104 © Copyright. All rights reserved.


Lesson: Using the Script Editor to Create an Advanced Formula Data Action

Note:
In an advanced formulas step, you can repeat a group of statements a specified
number of times, using the FOR keyword. Employing a BREAK statement inside a
FOR loop will allow you to stop the loop when the given condition is met, offering
more flexibility.

LESSON SUMMARY
You should now be able to:
● Create an advanced formula data action using the script editor.

© Copyright. All rights reserved. 105


Unit 3: Configuring Data Actions

106 © Copyright. All rights reserved.


Unit 3
Lesson 6
Creating Dynamic Data Actions and Tables

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Build dynamic data actions and tables.

Dynamic Data Actions and Tables


Automatic Time Determination
Planning workflow for automatic time determination:

1. Set the current year in the input control.

2. The input form (data table) automatically adjusts.

3. Run the data action.

4. The data action reads the current year selection via the input control.

Figure 88: Data Action - Determine Parameter Values Dynamically

In the preceding example, you select the planning year using an input control. The input form
as well as the data action use the same input control to determine the current year, thereby
resulting in fewer selections for you.
The input form is configured as follows:
● PY Actual is a restricted measure based on a fixed assignment for Version = Actual and a
dynamic selection for year of: Previous Year.
● CY Fcst is a restricted measure based on a fixed assignment for Version = Forecast and a
dynamic selection for year of: Year to Date.
● Hidden column is needed to determine the current year (hard coded) in the scenario.
● Year 2023 column header is a dynamic text widget.

© Copyright. All rights reserved. 107


Unit 3: Configuring Data Actions

Figure 89: Dynamic Table Example

Note:
In the Dynamic Table Example, 2023 is determined via dynamic text from an input
control.

To create a restricted measure, use the Add Calculation option for Measure.

Automatically Determine the Prior Year


In the following example, the objective is to automatically determine the prior year so that the
user doesn't have to select it.
When the advanced formula is run, actual data for 2022 is copied into the public forecast
version for 2023. 2022 is determined by the formula (PREVIOUS(12).

Figure 90: Dynamic Data Action

In the preceding example, note the following rows in the Advanced Formulas Step:

108 © Copyright. All rights reserved.


Lesson: Creating Dynamic Data Actions and Tables

● Row 1: The target year is determined via the TargetYear prompt.


● Row 2: The amount measure is copied.
● Row 3 Data for the prior-year actual is copied to the current-year forecast.

Note:
Target version is a parameter by default and doesn't appear in the advanced
formula.

LESSON SUMMARY
You should now be able to:
● Build dynamic data actions and tables.

© Copyright. All rights reserved. 109


Unit 3: Configuring Data Actions

110 © Copyright. All rights reserved.


Unit 3
Lesson 7
Creating and Running Multi Actions

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Configure and run multi actions.

Multi Actions
What are Multi Actions?
Multi actions help you orchestrate a set of planning operations across multiple models and
versions. They link together a sequence of steps such as data actions and version
management steps, which all run from a single planning trigger. Multi actions can help
planning users save time when they need to run multiple data actions in a sequence, publish
versions, or both.
If multi actions are available in a basic or extended story, you can run them to carry out
complex or repetitive planning operations more quickly and accurately.
You can add parameters to your multi actions to prompt you for values while running the
operations and to make them easier to update and reuse.
Consider using multi actions if your planning process involves running data actions on
multiple versions or models or publishing data between data action steps.

Key Features of Multi Actions


Multi actions include the following features:

1. Orchestrated execution of several SAP Analytics Cloud components:

● Data Action Step: Runs a data action with parameter values that you specify in the step,
either by setting fixed values or by applying parameters from the multi action.

● Data Locking Step: Allows data locks to be set directly from the multi action trigger.
Setting data locks protects your data from unwanted changes.

● Version Management Step: Publishes a version from the model that you specify. You
can set the version, or apply a parameter from the multi action.

● Predictive Step: Runs a time series forecast predictive scenario to answer business
questions using a predictive model. This step retrains a predictive model based on the
current state of your data, and then writes a forecast to a public or private planning
version.

● Data Import Step: Import master data and transaction data from SAP source systems.

© Copyright. All rights reserved. 111


Unit 3: Configuring Data Actions

● API Step: Integrates on-premise and cloud-based external applications using an HTTP
Application Programming Interface (API).

Note:
If you’ll be adding multiple data actions based on the same model and version,
it is recommended to embed these data actions into a new data action first.
You can then add the new embedded data action to your multi action to
improve performance.

2. One click or schedule execution:

● In the story, you can trigger multi actions with one click

● Can be scheduled from the calendar

3. Business value:

● Lower cost-of-development

● Simpler end-user experience

Figure 91: Multi Actions - Use Case

Comparison: Data Actions and Multi Actions


Let's compare data actions and multi actions.
A data action consists of one or more steps for the same model. A data step can have another
data action embedded into it as long as they all belong to the same model.
You can use an embedded data action step to run another data action as part of the one
you’re working on. Combining these steps with dynamic parameters lets you reuse data
actions from the same model and set different source or target members.
A multi action bundles multiple data actions into one.
In the following example, you can see that one multi action has been created to run five
separate data actions using two different models. The Copy Hours data action actually copies
labor hours from the HR model to the Expense model.

112 © Copyright. All rights reserved.


Lesson: Creating and Running Multi Actions

Figure 92: Multi Actions Compared to Data Actions

Table 3: Multi Actions vs. Data Actions


Use Case Example Solution
Run a data action multiple Run depreciation on several Data Action or Multi Action
times on the same version fixed assets for a single ver-
and publish it at the end sion

Run data actions on multiple Plan on multiple versions si- Multi Action
target versions multaneously and populate
them with initial data

Run data actions on multiple Copy data from a strategic Multi Action
models planning model to multiple
models such as workforce
and finance

Run a data action, publish da- Copy the initial data to a ver- Multi Action
ta and then run another data sion, publish it and then run
action an advanced formula

LESSON SUMMARY
You should now be able to:
● Configure and run multi actions.

© Copyright. All rights reserved. 113


Unit 3: Configuring Data Actions

114 © Copyright. All rights reserved.


Unit 3
Lesson 8
Managing Data Action Performance

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Use best practice tips and performance tracking content.

Best Practice Tips for Performance


When writing an advanced formula step in a data action, consider your script’s performance.
There are often a few different ways to get to the same calculation results, and picking the
fastest one will save time for your planners.

1. Check the calculation scope: After you validate your script without errors, you can check
the calculation scope for specific functions. This helps you get good performance and
correct calculation results in an advanced formulas step. Check the scope by hovering
over one of the supported functions.

2. Reduce the Number of FOREACH functions and limit their scope as much as possible:
FOREACH functions are helpful when you need to run a calculation for multiple dimension
members, and the result from each member becomes the input for the next member.

● However, FOREACH functions repeat the calculation for each member included in their
scope, so they can slow down performance.

● In many cases, you can either replace a FOREACH function with a different function, or
reduce the scope of the FOREACH function for better performance.

3. Remove unnecessary IF statements and organize IF statements to reduce the calculation


scope: Complex scripts usually involve several IF statements, often nested within one
another. Checking all these conditions can slow down performance, so it’s best to remove
unneeded IF statements. Also, try to arrange your IF statements to reduce the overall
number of calculations.

4. Reduce the number of RESULTLOOKUP functions used in a single calculation:


RESULTLOOKUP functions are the main performance drivers for data actions, because
each one retrieves model data from the database. In particular, you can get better
performance by avoiding multiple RESULTLOOKUP functions in a single calculation.

5. Avoid using the “= NULL” comparison if possible: Using the “= NULL” comparison can
slow down your data action because the script needs to check each member to see if it’s
unbooked.

6. Reduce the number of DATA functions: Using numerous DATA functions can also cause
slow performance. You might be able to use fewer DATA functions when copying data
within a dimension, or when assigning initial values.

© Copyright. All rights reserved. 115


Unit 3: Configuring Data Actions

7. Use dimension aggregation functions where possible: Together, the


AGGREGATE_DIMENSIONS, AGGREGATE_WRITETO, and MODEL functions let you
aggregate dimension members together before running the step's calculations. You can
achieve the same results by applying member filters, but the performance is slower.

8. Define as many MEMBERSET statements as possible to focus your calculation to specific


dimension members.

Additional Information
For more information, go to Performance Best Practices

Performance Aids
If you're an administrator of an SAP Analytics Cloud tenant, you can use the following decision
tree to find resources that will help you resolve performance issues as well as the
Performance Analysis Tool to analyze and manage system performance.

Troubleshoot Performance Issues


Follow the steps in the following decision tree to find resources that will help you to resolve
performance issues (if necessary).

Figure 93: Performance Decision Tree

Access the interactive online performance decision tree.

SAP Analytics Cloud Performance Analysis Tool


Administrators can use the built-in Performance Analysis Tool to analyze and manage system
performance at any time. Go to System → Performance.

116 © Copyright. All rights reserved.


Lesson: Managing Data Action Performance

Figure 94: SAP Analytics Cloud Performance Content

It is deployed per default into your system folder directory into the SAP Analytics Cloud
content folder so you don‘t need to deploy it from the Analytics Content Network. The analytic
models, stories, and analytic applications are provided off-the-shelf.
For more information, visit SAP Analytics Cloud Performance Analysis Tool

LESSON SUMMARY
You should now be able to:
● Use best practice tips and performance tracking content.

© Copyright. All rights reserved. 117


Unit 3: Configuring Data Actions

118 © Copyright. All rights reserved.


Unit 3

Learning Assessment

1. What are the types of action steps available in a Data Action?


Choose the correct answers.

X A Delete step

X B Copy step

X C Cross-Model Copy step

X D Save step

X E Advanced Formulas step

2. How can you make a copy step more flexible for the end-users?
Choose the correct answer.

X A Add a variable to the source system (SAP BW, BW/4HANA, or S/4HANA)

X B Use SAP Analytics Cloud's Input Task collaboration option to solicit their input

X C Use a parameter to allow them to choose dimension members

3. You are limited to 5 steps in a data action planning sequence.


Determine whether this statement is true or false.

X True

X False

4. When using a cross-model copy step, what must you include?


Choose the correct answer.

X A A parameter to determine the source model

X B A filter on the Version dimension to choose which version to copy from

X C A parameter to determine the target model

© Copyright. All rights reserved. 119


Unit 3: Learning Assessment

5. The results of an advanced formula step are not stored in the SAP Analytics Cloud
database.
Determine whether this statement is true or false.

X True

X False

6. What are the options for defining advanced data actions?


Choose the correct answers.

X A In a model

X B In the Visual Editor

X C In a story

X D In the Script Editor

7. When you filter data with an input control, you can automatically run the data action for
the same member.
Determine whether this statement is true or false.

X True

X False

8. What are the advantages of multi actions?


Choose the correct answers.

X A Faster performance

X B Scheduling

X C Lower cost of development

X D Fewer buttons to push

9. Your users are complaining that their data actions are running slower than normal. You
should follow up by running everyone's data actions to see for yourself.
Determine whether this statement is true or false.

X True

X False

120 © Copyright. All rights reserved.


Unit 3

Learning Assessment - Answers

1. What are the types of action steps available in a Data Action?


Choose the correct answers.

X A Delete step

X B Copy step

X C Cross-Model Copy step

X D Save step

X E Advanced Formulas step

Six types of data actions are available: Copy, cross-model copy, embedded, allocations,
currency, and advanced formulas.

2. How can you make a copy step more flexible for the end-users?
Choose the correct answer.

X A Add a variable to the source system (SAP BW, BW/4HANA, or S/4HANA)

X B Use SAP Analytics Cloud's Input Task collaboration option to solicit their input

X C Use a parameter to allow them to choose dimension members

Parameters add flexibility for end-users.

3. You are limited to 5 steps in a data action planning sequence.


Determine whether this statement is true or false.

X True

X False

You can have as many steps as you need.

© Copyright. All rights reserved. 121


Unit 3: Learning Assessment - Answers

4. When using a cross-model copy step, what must you include?


Choose the correct answer.

X A A parameter to determine the source model

X B A filter on the Version dimension to choose which version to copy from

X C A parameter to determine the target model

You must filter on the source version to copy data between models.

5. The results of an advanced formula step are not stored in the SAP Analytics Cloud
database.
Determine whether this statement is true or false.

X True

X False

Advanced formula results are stored in the SAP Analytics Cloud database.

6. What are the options for defining advanced data actions?


Choose the correct answers.

X A In a model

X B In the Visual Editor

X C In a story

X D In the Script Editor

You can use the visual or script editors to create advanced data actions.

7. When you filter data with an input control, you can automatically run the data action for
the same member.
Determine whether this statement is true or false.

X True

X False

You can link a data action parameter to input controls and story filters.

122 © Copyright. All rights reserved.


Unit 3: Learning Assessment - Answers

8. What are the advantages of multi actions?


Choose the correct answers.

X A Faster performance

X B Scheduling

X C Lower cost of development

X D Fewer buttons to push

Multi actions can be scheduled in the SAP Analytics Cloud calendar and multiple data
actions can be bundled into one multi action. By including one multi action in a story
instead of several data action, the cost of developing stories is lowered.

9. Your users are complaining that their data actions are running slower than normal. You
should follow up by running everyone's data actions to see for yourself.
Determine whether this statement is true or false.

X True

X False

You should access the built-in performance tracking content and run the Data Action
Statistics and Analysis story.

© Copyright. All rights reserved. 123


Unit 3: Learning Assessment - Answers

124 © Copyright. All rights reserved.


UNIT 4 Allocating Planning Data

Lesson 1
Outlining the Concept of Allocations 127

Lesson 2
Creating Data Action Allocations 129

Lesson 3
Performing Allocations 135

UNIT OBJECTIVES

● Describe the business purpose to use allocations.


● Create data action allocations.
● Perform an allocation.

© Copyright. All rights reserved. 125


Unit 4: Allocating Planning Data

126 © Copyright. All rights reserved.


Unit 4
Lesson 1
Outlining the Concept of Allocations

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Describe the business purpose to use allocations.

Allocations Overview
In SAP Analytics Cloud, you can create complex multistep 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. What logic will we use to push these
costs back to the divisions?

Figure 95: Allocations Use Case

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.

© Copyright. All rights reserved. 127


Unit 4: Allocating Planning Data

Note:
To create new allocations, data actions must be created. It isn’t possible to create
legacy allocation processes or steps. The legacy allocation objects can be
migrated into data actions if needed. Legacy allocations can still be run from
stories.

LESSON SUMMARY
You should now be able to:
● Describe the business purpose to use allocations.

128 © Copyright. All rights reserved.


Unit 4
Lesson 2
Creating Data Action Allocations

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create data action allocations.

Data Action Allocation Steps


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.

Figure 96: Data Action Allocation Step - Data Source, Filters, and Write Mode

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

© Copyright. All rights reserved. 129


Unit 4: Allocating Planning Data

Figure 97: 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.
● Write Mode: To delete existing values of the target members at the start of the step, in
Write Mode select, Overwrite Target.

Figure 98: Data Action Allocation Step - Target Context

130 © Copyright. All rights reserved.


Lesson: Creating Data Action Allocations

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 provides 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.

Figure 99: Data Action Allocation Step - Allocation Rules

© Copyright. All rights reserved. 131


Unit 4: Allocating Planning Data

Allocation Rules - Number of Repetitions


The Number of Repetitions field is set by default to 1. However, it's possible to use the same
dimension member as the source and target for an allocation step. In this case, values will be
reallocated from a source member to one or more members of the same dimension
hierarchy.
For example, you can use allocations to take costs that have already been assigned to a
service department and reassign them to departments based on the number of service hours
that they used. This is known as the reciprocal (repetitive) method of cost allocation. Because
some of the original value is allocated back to the source member, you can choose to perform
multiple repetitions of the step until all source values are allocated.

Figure 100: Allocation Rules - Number of Repetitions - Reciprocal Method of 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.

132 © Copyright. All rights reserved.


Lesson: Creating Data Action Allocations

Figure 101: Allocation Rules - Results

LESSON SUMMARY
You should now be able to:
● Create data action allocations.

© Copyright. All rights reserved. 133


Unit 4: Allocating Planning Data

134 © Copyright. All rights reserved.


Unit 4
Lesson 3
Performing Allocations

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Perform an allocation.

Run an Allocation
Allocation Data Actions in a Story
Allocations are run in the story using data actions.

Figure 102: Allocation Data Actions in a Story

© Copyright. All rights reserved. 135


Unit 4: Allocating Planning Data

Example: Electric Telephone Water Allocation - Before and After

Figure 103: Electric Telephone Water Allocation - Before and After

In the figure entitled Electric|Telephone|Water Allocation - Before & After, the Utilities cost
center expenses for electric, water, and telephone are allocated based on kilowatt hours and
number of people.
In this example, the Utilities cost center is being treated as a pass-through for the electric,
water, and telephone costs. Correspondingly, the same accounts that collect the costs are
also being used as the sending accounts.
As a result, the Utilities cost center is zeroed out.

Example: HR Allocation - Before and After

Figure 104: HR Allocation - Before

136 © Copyright. All rights reserved.


Lesson: Performing Allocations

Figure 105: HR Allocation - After

In the figure entitled HR Allocation - After, the HR cost center expenses are allocated based on
the number of people in the receiving cost centers.
In this example, the HR expenses are allocated using a separate sending account: Human
Resources. As a result, the HR cost center is zeroed out in total, but a comparison can still be
made between actual and plan values since a separate account is being used for the
allocation.

LESSON SUMMARY
You should now be able to:
● Perform an allocation.

© Copyright. All rights reserved. 137


Unit 4: Allocating Planning Data

138 © Copyright. All rights reserved.


Unit 4

Learning Assessment

1. Allocations are performed in order to identify cost by responsible unit.


Determine whether this statement is true or false.

X True

X False

2. The booking account is used to send a summarized value to target cost centers.
Determine whether this statement is true or false.

X True

X False

3. An allocation can be run from the story ribbon or via a data action.
Determine whether this statement is true or false.

X True

X False

© Copyright. All rights reserved. 139


Unit 4

Learning Assessment - Answers

1. Allocations are performed in order to identify cost by responsible unit.


Determine whether this statement is true or false.

X True

X False

Allocations are performed in order to identify the total cost by responsible unit.

2. The booking account is used to send a summarized value to target cost centers.
Determine whether this statement is true or false.

X True

X False

The booking account is used to send a summarized value to target cost centers.

3. An allocation can be run from the story ribbon or via a data action.
Determine whether this statement is true or false.

X True

X False

An allocation can be run from the story ribbon and / or a data action. Data actions can run
all steps of an allocation process or individual steps.

140 © Copyright. All rights reserved.


UNIT 5 Translating Currencies for
Planning

Lesson 1
Configuring Currency Translation 143

Lesson 2
Performing Currency Translation 153

UNIT OBJECTIVES

● Configure currency translation in models and stories.


● Perform currency translation in stories.

© Copyright. All rights reserved. 141


Unit 5: Translating Currencies for Planning

142 © Copyright. All rights reserved.


Unit 5
Lesson 1
Configuring Currency Translation

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Configure currency translation in models and stories.

Currency Translation Overview

Figure 106: Currency Components

Note:
The following comments go along with the Currency Translation Overview figure.

Business scenario: In our scenario, ABC Corporation has companies in various countries/
regions. Each company plans their income statement in their own local currency. After the
companies submit their results to headquarters, the corporate planners convert the local
currency results for all companies into the group currency so that the overall results are in
one currency. The local and group currency values are stored in the model. Also, there are
requirements to convert currencies on-the-fly to perform comparisons to prior years, and
hold exchange rates constant over time.
To meet these requirements, SAP Analytics Cloud uses the following components:

© Copyright. All rights reserved. 143


Unit 5: Translating Currencies for Planning

● Exchange rate table: The exchange rate table in SAC stores exchange rates for pairs of
currencies by date and version. The exchange rates are imported from financial
institutions.
● Model: When currency conversion is enabled for a planning model, the relevant SAP
Analytics Cloud exchange rate table is referenced. For models that have currency enabled,
there are dimensional properties that are used to convert currencies. In the entity
dimension, the Currency property identifies local currencies for each entity. The account
dimension's Rate Type property identifies whether accounts use average or ending rate
types. The account dimension also has a Unit and Currencies property that determines
whether an account is relevant for currency conversion or not.
● Measures: The amounts in the model are stored in two measures:

1. The currency for the Local Currency Amount values are determined via each entity's
local currency property value.

2. The Group Currency Amount measure is fixed to the corporate currency (USD).

Because there are so many Canadian companies, the model also includes the CAD
Amount converted measure, which is calculated on-the-fly as the data is refreshed in
stories. Additional converted measures can be easily added to the model, potentially
reducing the need to create converted measures in stories.
● Data Flow: Now, let’s discuss how we'll populate the planning model. In this scenario, we'll
start by importing actual local currency amounts for each entity from the source system.
After the actual Local Currency Amounts are copied into forecast Local Currency
Amounts, we can then convert the forecast Local Currency Amounts into the Group
Currency Amounts via a data action.
● Data action: The currency data action is used to convert forecast Local Currency Amounts
to Group Currency Amounts. The data action is run in the story when the planner is
finished updating the Group Currency Amount values.
● Story: In the story, the planners have access to the local, group, and CAD currency
amounts from the model. If needed, planners can add additional converted measures in
the story for comparison purposes. For example, calculate the local currency amount at
last year's exchange rate. Or, convert monthly local currency amounts at a fixed exchange
rate to perform a constant currency analysis.

In summary, currencies can be converted on-the-fly based on converted measures in models


or stories. Currencies can also be converted via data actions and the results can be stored in
the model.
SAP Analytics Cloud Planning models can easily handle most currency scenarios without a
separate currency dimension by using the model's currency conversion mechanism.

When to Use Currency Conversion


Currency conversion use case examples include:
● Display corporate (group) and local operating currencies in stories.
● Import and plan in local currency and immediately translate to group currency.
● Translate with category-specific exchange rates.
● Import both local and group currency actual values.

144 © Copyright. All rights reserved.


Lesson: Configuring Currency Translation

● Isolate exchange rate changes with a constant currency analysis.

Key Points for Currency Translation

● Exchange rates are stored in the SAP Analytics Cloud currency translation table.
● Currency tables can be updated using:
- Flat files
- SAP BPC rate models
- SAP Business Warehouse queries
- Manual data entry
● Exchange rates originate from financial institutions and are automatically or manually
updated into SAP Analytics Cloud.

Note:

● The concepts in this lesson concern planning concepts not month-end closing
currency translation.
● If you use New Models, you can enable a currency variable in the model
preferences to set a default target currency for conversions measures.

Key Terminology for Currency Conversion


● Local Currency (LC) refers to the functional or operating currency of a company. For
example, a company in the US uses the US dollar as its local currency but a company in
Germany uses the euro.
● Group Currency refers to the corporate level currency. For example, a company in the US
that has a German parent will have the euro as its group currency.
● Translation is used interchangeably with conversion.

Currency Translation Table


Translation Table
Currency conversion tables are defined independently of models. You can apply a selected
table to any model you create.
Currency tables are listed on a separate Currency Conversion page, where you add, copy, and
delete currency tables as required.
In the following example, the fields in a translation table explained:

1. Source Currency: CAD values will be translated to EUR values at an exchange rate of 0.65
for accounts that have the Average rate type for postings that occur on 2024.01.01 or
later.

2. Category: Use this to assign exchange rates to specific categories such as actual or plan.

3. Rate Version: Use this for optimistic or pessimistic scenarios for example. Use a category
value = Specific to use rate version.

© Copyright. All rights reserved. 145


Unit 5: Translating Currencies for Planning

4. Rate Type: These are assigned to accounts. Income statement accounts use Average and
balance sheet accounts use Closing.

5. Conversion Errors: Check the dropdown to view the conversion error log, if needed.

Figure 107: Translation Table

More Information
For more information on currency conversion tables, visit Learn about Currency Conversion
Tables

Model and Dimension Currency Settings


SAP Analytics Cloud models designed for SAP ERP financial data typically contain the
following measures:
● Local currency amount
● Group currency amount
● Quantity

Measures can also be added to the model that calculate currency values on-the-fly.

Model Preferences for Currency Conversion


In the Model Preferences:

1. Activate currency conversion.

2. Select the source currency table.

3. Select the dimension for the date determination.

4. Activate the currency variable (optional).

146 © Copyright. All rights reserved.


Lesson: Configuring Currency Translation

Figure 108: Model Preferences

Note:
When currency conversion is activated for the model, the Rate Type property is
added to the account dimension, and the Rate Version property is added to the
version dimension. The currency variable can be used to determine the target
currency dynamically when the story is opened.

Currency Variable
If the currency variable is turned on, the variable can be used to determine the target
currency for a translated measure (but not in a measure).

The Entity Dimension Currency Settings


1. Enable currency translation for a dimension (this can be any dimension that has a
currency property, not just organizational dimensions).

2. If needed, change the name of the currency property (for display in input forms). LC is the
local (or operating currency) of the entities. For example, a store in Canada has a local
currency of CAD.

Figure 109: Entity Dimension Settings

Switch on Enable Currency to add a Currency column to the dimension. Using three-character
currency codes, this column identifies the source currency for data that belongs to each leaf
member.

© Copyright. All rights reserved. 147


Unit 5: Translating Currencies for Planning

The Currency column is enabled by default for the Organization dimension, and can also be
added to generic dimensions (but not for any other dimension types).
For each converted measure in the model, a dimension (any dimension with currency
enabled) is set as the currency dimension.

The Account Dimension Currency Settings


In the account dimension, the Rate Type property column appears when you switch on
currency conversion in the model preferences.
With currency conversion switched on, you must set the Rate Type by accounts and update
the Units & Currencies property:
● EXP and INC use the Average rate type.
● LEQ and AST use the Closing rate type.
● The Units & Currencies property must be set to Currency.

The setting corresponds to the rate type for exchange rates in your currency table. It lets you
distinguish between the average exchange rate for a period and the closing rate at the end of
the period.

Figure 110: Account Dimension Settings

Note:
Only the average and closing rate types are possible. Custom rate types aren't
possible.

Configure Model-Based Measures


Measures in models are used to store values in the database. In the Measures in a Model
example, there are two measures:

1. Local Amount This stores the amounts in the currency of each company. The currency for
each company (or entity) is stored in its dimension.

2. Group Amount This stores the amounts in the corporate currency. The group currency is
fixed in the group amount definition.

148 © Copyright. All rights reserved.


Lesson: Configuring Currency Translation

Figure 111: Measures in a Model

Converted measures are calculated as and when needed. The calculated values aren't stored
in the database.
Model-based measures are available to story designers and therefore reduce the need to
create story-based converted measures.

Note:
Base measure rate type: If you have an account dimension as the primary
structure, the account member sets this value, so it’s not necessary for the
measure.

Figure 112: Converted Measures in a Model - Definition

© Copyright. All rights reserved. 149


Unit 5: Translating Currencies for Planning

Preview the Results in the Model


To confirm the conversion, you can preview the results for converted measures in models in
the Calculations workspace.

Figure 113: Converted Measures in a Model - Preview

Configure a Data Action for Currency Conversion


For models with measures, you can use data actions to copy from the local amount the group
currency amount. The conversion rule can use measures or parameters as the source and
target.

Figure 114: Currency Data Action

The Date options available in the Conversion Settings include:


● Booking Date: The date of the transaction data record.
● Booking Date +1: The date following the date of the transaction data record.
● Booking Date -1: The date preceding the date of the transaction data record.
● Fixed Date: A hard-coded date.

150 © Copyright. All rights reserved.


Lesson: Configuring Currency Translation

The category can be set to Dynamic when the data action applies to various categories. Or, a
specific category can be specified.

LESSON SUMMARY
You should now be able to:
● Configure currency translation in models and stories.

© Copyright. All rights reserved. 151


Unit 5: Translating Currencies for Planning

152 © Copyright. All rights reserved.


Unit 5
Lesson 2
Performing Currency Translation

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Perform currency translation in stories.

Currency Translation in Stories


Currency Conversion Results in a Story
The following example illustrates currency conversion results in a story:

1. Measures: The local currency property value for Store02 is EUR.

2. P_ACCT Values: The local currency is EUR. This value is stored in the database.

3. Group Currency USD: The group currency is USD. This value is stored in the database also.

4. Alternative Currency CAD: The alternative currency is calculated but not stored. This is an
example of a model currency conversion measure.

5. Simulated_Cur_USD_PY (USD): This simulated currency is a story-calculated measure.

Figure 115: Results in a Story

Note:

● Displaying the local currency (property) in the columns is optional.


● When LC is changed, the calculated currencies (4 and 5) are re-translated.

Story Conversion Measures


In the following example, you can see the information required to create a converted measure
in a story:

© Copyright. All rights reserved. 153


Unit 5: Translating Currencies for Planning

1. Columns: In the story, add a calculated measure for currency conversion.

2. Name: Provide a name for the new column.

3. Target Currency: Select the target currency: either fixed or based on the entity currency.

4. Category: You can choose between categories, either dynamic, or fixed to actual or plan.

5. Source Measure: Select the required measure from the drop-down list.

6. Date: Select the date to determine the exchange rate. The Booking Date, for example, is
determined through the date dimension (specified in the currency setting) in the model.

Figure 116: Creating Story Conversion Measures

Note:
If a currency conversion is added and there are no exchange rates for that
combination of currencies, then the system directs you to the currency table (to
add the missing rates).

Currency Translation Examples


Category-Specific Exchange Rates
Business Scenario: You want to compare values that use exchange rates for different
categories. You use category-specific exchange rates, which are useful for what-if scenarios.
In this example, the CAD value for Store01 is 5,000,000 dollars.

1. Currency conversion table:

● The Actual exchange rate is 0.15

● The Forecast exchange rate is 0.155

2. Actual currency: Add a currency conversion for actual.

3. Forecast currency: Add a currency conversion for forecast.

4. Output: View the results in the story.

● Actuals: 5,000,000 CAD x .15 = 750,000 MXN

● Forecast: 5,000,000 CAD x .155 = 775,000 MXN

154 © Copyright. All rights reserved.


Lesson: Performing Currency Translation

Figure 117: Forecast Vs Actual Exchange Rates

Constant Currency
Business Scenario: You want to see companies' annual growth in a model currency (such as
USD) but you want a flat conversion rate applied so you filter out the currency conversion
impact on your figures.
● The Default Currency (USD) values are translated with the monthly average exchange
rates for 2020. For example:
- Jan: 11,655.9 x 1.1 = $12,821.5
- Feb: 17,302.5 x 1.15 = $19,897.9
● The USD in Constant ER (USD) values are translated with the Jan average exchange rate
for 2020. For example:
- Jan: 11,655.9 x 1.1 = $12,821.5
- Feb: 17302.5 x 1.1 = $19,032.7

© Copyright. All rights reserved. 155


Unit 5: Translating Currencies for Planning

Figure 118: Constant Currency Analysis

LESSON SUMMARY
You should now be able to:
● Perform currency translation in stories.

156 © Copyright. All rights reserved.


Unit 5

Learning Assessment

1. A currency data action stores its result in the database but a conversion measure does
not.
Determine whether this statement is true or false.

X True

X False

2. You are analyzing currency values in a story. You can access any conversion measure
from the model and you can also create more conversion measures in the story.
Determine whether this statement is true or false.

X True

X False

© Copyright. All rights reserved. 157


Unit 5

Learning Assessment - Answers

1. A currency data action stores its result in the database but a conversion measure does
not.
Determine whether this statement is true or false.

X True

X False

Currency data actions are run to record results into the database. Conversion measures
are calculated on the fly.

2. You are analyzing currency values in a story. You can access any conversion measure
from the model and you can also create more conversion measures in the story.
Determine whether this statement is true or false.

X True

X False

Model-based conversion measures are available in stories and you can create your own in
stories if needed.

158 © Copyright. All rights reserved.


UNIT 6 Forecasting and Simulating
Planning Data

Lesson 1
Configuring Rolling Forecast Layouts 161

Lesson 2
Forecasting with Predictive Analytics 165

Lesson 3
Simulating with Value Driver Trees 173

UNIT OBJECTIVES

● Create rolling forecast layouts.


● Use predictive analytics for planning.
● Simulate and forecast with value driver trees.

© Copyright. All rights reserved. 159


Unit 6: Forecasting and Simulating Planning Data

160 © Copyright. All rights reserved.


Unit 6
Lesson 1
Configuring Rolling Forecast Layouts

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Create rolling forecast layouts.

Rolling Forecast Layouts


You can create a rolling forecast layout that dynamically generates time members based on
the system date. The time interval of a rolling forecast layout automatically changes based on
the current month.

Figure 119: Rolling Forecast Type Layout

Rolling forecasts allow the easy display of a few periods of actuals in the past followed by a
few periods of the future forecast data.
With SAP Analytics Cloud, you can easily create a rolling forecast table using the Forecast
Layout table type. The table in your story has a version with data that you want to use for the
forecast periods. If it doesn't have one, you can use Version Management to create one.

© Copyright. All rights reserved. 161


Unit 6: Forecasting and Simulating Planning Data

Figure 120: Forecast Layout Table

Create a Forecast Layout


Simply choose Forecast Layout as the type of cross-tab you want to use.
The Forecast Layout panel, consists of the following sections.

Figure 121: Forecast Layout Panel

1. Layout

● Look back on: The version for looking back (probably Actuals). You can also create an
input control to allow users to choose the look back version.

162 © Copyright. All rights reserved.


Lesson: Configuring Rolling Forecast Layouts

● Look ahead on: The version for forecasting or looking ahead. You can also create an
input control to allow users to choose the look ahead version.

● Cut-over date: The date of the change from Look back on and Look ahead on. Options
are:

- Today: The current date; this is the default choice.

- Specific Date: In the Select member for Date dialog box, select the date or add a
dynamic filter with a New Calculation Input Control.

- Last Booked (Actuals): The latest date of data entered for the Actuals version.

2. Timeframe

● When Type is Forecast

- Granularity - Choose the granularity of the time interval: Quarter or Month.

- Range - Choose Year to display forecast-year months or choose Quarter to display


forecast-quarter months.

- Look back additional - Enter the number of time intervals and set the granularity of
the look-back (Year, Quarter, or Month).

- Look ahead additional - Type the number of time intervals and set the granularity of
the look-ahead (Year, Quarter, or Month).

● When Type is Rolling Forecast

- Look back - Type the number of time intervals and set the granularity of the look-
back (Year, Quarter, or Month).

- Look ahead - Type the number of time intervals and set the granularity of the look-
ahead (Year, Quarter, or Month).

3. Calculation: Sum the data values for either the Cut-over Year, All periods, Look ahead
periods, or None (does not sum).

4. Additional Versions: The settings you make in the Forecast Layout dialog box determine
how your table will compare Actuals with Forecast data. This feature allows you to see a
Delta column for the difference between the values in the forecast layout and any other
version that is not already in the table.

Example: Forecast Type Layout with Monthly Granularity


In the following example, the layout Type is set to Forecast, the Granularity is Month, and the
Look back additional and Look ahead additional are set to blank. This results in actual and plan
columns but only for the forecast year.

© Copyright. All rights reserved. 163


Unit 6: Forecasting and Simulating Planning Data

Figure 122: Forecast Type Layout with Monthly Granularity

Hint:
In the table header, you can use the Hidden hyperlink to view members that are
hidden based on the rolling forecast selections.

Example: Forecast Type Layout with Quarterly Granularity


If the granularity is changed to Quarterly, the months appear in nodes by quarter in the
columns.

Figure 123: Forecast Type Layout with Quarterly Granularity

LESSON SUMMARY
You should now be able to:
● Create rolling forecast layouts.

164 © Copyright. All rights reserved.


Unit 6
Lesson 2
Forecasting with Predictive Analytics

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Use predictive analytics for planning.

Predictive Analytics and Planning


The Planner's Workflow
The planner’s workflow:
● Predictive Planning provides data-driven forecasts to accelerate planning
● Planners supplement the predictive forecasts based on business acumen
● Planners monitor plan attainment based on continuously updated predictive forecasts

Figure 124: The Success Formula

Time Series Forecasting


Time series forecasting is available in SAP Analytics Cloud in the following areas:
● Smart Predict
● Time series line chart
● Story grid or table

© Copyright. All rights reserved. 165


Unit 6: Forecasting and Simulating Planning Data

Smart Planning

Figure 125: Smart Planning

Use Cases for Predictive Planning


● Expense and cost planning:
- What will be my expenses by location and category?
- Should we transfer budget between areas?
● Revenue and sales planning:
- What is the revenue forecast per business unit?
- How will sales evolve for specific products in the future?
● Headcount planning:
- How many employees will leave due to attrition or retirement next year?
- What are the profiles of employees that leave?

Predictive Forecasting
Predictive forecasting takes different values into account and also looks at trends, cycles, and
fluctuations in your data. This data-driven approach optimizes your planning process since
it's based on facts, not feelings.
SAP Analytics Cloud predictive forecasting helps you understand your key business
influencers, with interactive visuals giving you a clear view of your data. This unbiased view
leads to more accuracy in planning tasks.
To use predictive forecasting in SAP Analytics Cloud, try to use a dataset with as much
historical data as possible. The system will use this dataset to look for trends, and the more
history you have, the easier it is to notice trends.

Main Functionality
SAP Analytics Cloud predictive forecasting allows you to understand past data trends to
predict future metrics. The automatic predictive algorithm classifies existing information,
identifies outliers, and surfaces relationships within your data to help you identify and
understand your business’ key influencers.
The main functions of the automatic predictive calculations are:

166 © Copyright. All rights reserved.


Lesson: Forecasting with Predictive Analytics

● Identify key influencers.


● Explore visualized data that is automatically generated based on your query.
● Predict future results based on historical data.

Example of a Predictive Forecast Created from a Table

Figure 126: Predictive Forecasting from a Table

Predictive Forecast Preview and Result in a Table

Figure 127: Predictive Forecasting Preview and Result

© Copyright. All rights reserved. 167


Unit 6: Forecasting and Simulating Planning Data

Example: Predictive Forecast on an Entire Income Statement

Figure 128: Run Predictive Forecasting on the Income Statement

Smart Predict Time Series


Configuring a Predictive Scenario
Configuring the predictive scenario is straightforward with Smart Predict. You don't need to
be a machine learning expert or a data scientist.
● Select the planning model to be augmented.
● Select the version of the planning model to learn from. Smart Predict should learn from
actual data.
● Select the measure to be predicted. In this scenario, you want to predict the gross revenue
measure.
● Select the number of forecast periods to be predicted. The granularity of the planning is
month, and if you would like to get predictions for 12 months, request 12 forecasts.
● Select the entities. For example, you can share the predictions and insights with
stakeholders responsible for different products in different countries/regions.

168 © Copyright. All rights reserved.


Lesson: Forecasting with Predictive Analytics

Figure 129: Smart Predict - Time Series Settings

You can further refine your predictive forecasts by using the Influencers setting that allows
you to select which influencer variables to include before training your predictive planning
model.
With Smart Predict, you can go one step further and generate forecasts per entity to get
accurate business-oriented insights, not only raw forecasts. You can directly use your
planning model as the data source, no need to extract data in a dataset.

Create and Train a Predictive Model


Smart Predict uses the data available in your planning model to create and train a predictive
model. You can then analyze predictive forecast accuracies across the combined dimension
values and understand signal breakdown in details. Once you're satisfied with the accuracy of
your predictive model, you can generate the predictive forecasts: they're saving back directly
in the private version of your planning model. It’s then easy for you to augment your story with
actual and predictive forecasts.
When you create a predictive model, you initially specify a training data source, a target or
signal variable, and then define additional training settings. Training is a process that uses
SAP automated machine learning algorithms to find relationships or patterns of behavior in
the data source. You can apply the result to a new data source to predict with a probability
what could be the value of the target or signal for each element of the data source.
When using a planning model, the input version must be a public version, not in edit mode, or
a private version. You have at least read access to it.

Analyze the Model


A predictive model produces performance indicators and reports as a result of a successful
training.

© Copyright. All rights reserved. 169


Unit 6: Forecasting and Simulating Planning Data

Figure 130: Smart Predict Analysis

Here's a short summary of the different components that you can use to debrief your results
so you can verify the accuracy of your predictive model:
● Horizon-Wide MAPE Is the main performance indicator high enough to consider my
predictive model robust and accurate? Check the quality of your model performance over
the Horizon-Wide MAPE. It evaluates the "error" made when using the predictive model to
estimate future values of the signal, where zero indicates a perfect model. The lower the
Horizon-Wide MAPE, the better your predictive model performance. For more information,
refer to Horizon-Wide MAPE
● Signal Analysis What forecasts are provided by the predictive model? Have a close look at
the signal and forecasts. Signals show trends, cycles, and fluctuations in the signal, each
with a description. Check if there are outliers in the forecasts and detect anomalies on the
signal. For more information, refer to The Predictive Forecasts, The Signal Outliers and
The Signal Anomalies
● Signal vs. Forecast How accurate is my predictive model? Use the Signal vs. Forecast
graph to visualize the predicted values (forecast) and actual values (signal) for the data
source. You can then quickly see how accurate your predictive model is, what are the
outliers, the zone of possible errors. For more information, refer to The Forecast vs. Actual
Graph and The Signal Outliers

If you're not satisfied with the model once you’ve analyzed the results, you can improve your
predictive model by changing the settings, or if necessary, changing the data source.

170 © Copyright. All rights reserved.


Lesson: Forecasting with Predictive Analytics

Figure 131: Smart Predict Time Series Breakdown

Performance
Check the quality of your predictive model performance over the Horizon-Wide MAPE. The
Horizon-Wide MAPE is the evaluation of the "error" made when using the predictive model to
estimate the future values of the signal. A Horizon-Wide MAPE of zero indicates a perfect
predictive model. The lower the Horizon-Wide MAPE, the better your predictive model
performance.
Analyze the predicted values for the predictive model over a set of known data from the
training data source. Check if there are outliers in the forecasts and detect anomalies on the
signal.
Use the Signal versus Forecast graph to visualize the predicted values (predictive forecast)
and actual values (signal) for the training data source. You can then quickly see how accurate
your predictive model is, what are the outliers, the zone of possible errors.

Figure 132: Smart Predict Accuracy

For more information regarding Smart Predict, you can go to Analyzing the Results of Your
Time Series Predictive Model.

Save the Results to the Planning Model


After running Smart Predict and confirming that the results are reasonable, you can save the
results to the planning model in a private version.
You can write Smart Predict results to private planning versions only. The goal is to enforce a
validations workflow and avoid unvalidated forecasts to be written to public versions.

© Copyright. All rights reserved. 171


Unit 6: Forecasting and Simulating Planning Data

The confidence interval (dotted lines) helps to understand the level of confidence we have in
the forecast. If the interval is narrow, we have a high confidence in the forecasts.
After running Smart Predict and confirming that the results are reasonable, you can save the
data to the planning model in a private version.

Figure 133: Smart Predict - Save the Results to the Planning Model

After analyzing the results in a story, the values can then be published to a public version.

Example: Smart Predict Results in Rolling Forecast Input Form

Figure 134: Smart Predict Results in Rolling Forecast Input Form

Additional Information
For more information regarding on predictive modeling, go to the Applying AI-powered
Augmented Analytics to Business Data in SAP Analytics Cloud learning journey, where we
explore augmented analytics, including time series predictive models.

LESSON SUMMARY
You should now be able to:
● Use predictive analytics for planning.

172 © Copyright. All rights reserved.


Unit 6
Lesson 3
Simulating with Value Driver Trees

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Simulate and forecast with value driver trees.

Value Driver Trees


You can use a value driver tree to visualize the entire value chain of your business, instead of
looking at isolated KPIs.

Why Use Value Driver Trees?


Value driver trees use story calculations and dimensions formulas to help visualize:
● Graphical planning simulations
● Entire value chains
● KPI relationships
● Driver-based planning
● Anytime granularity

You use value driver trees to take a driver-based approach to planning, where you identify key
driver values and models their impact on top-level metrics.

Figure 135: Value Driver Tree Use Case

© Copyright. All rights reserved. 173


Unit 6: Forecasting and Simulating Planning Data

Drivers
The drivers are usually figures that you can influence directly, like product prices, headcount,
or travel expenses. They could also be external factors such as tax rates or raw material
costs. Say you’ve modeled how these factors will impact the value of your business, for
example, net revenue, gross margin, and total expenses.
In this case, you’ll need to see how value flows through your model. Like a table, a value driver
tree shows numeric values, and supports data entry so that you can adjust the plan.
Value driver trees also show hierarchical links between different values, and how the values
are interconnected. For example, if you increase marketing expenses, you’ll expect your
overhead costs and your sales volume to increase. In turn, you’ll see an increase in your sales
revenue, and the cost of goods sold. A value driver tree lets you visualize these different links
and see how your changes affect the bottom line.

Key Points
Value driver trees are available for planning models and analytic models only. They aren't
available for live models.
Value driver trees can be built based on formulas in the account dimension.
Value driver trees can be based on account dimension hierarchies or member formulas.

Figure 136: Formulas for a Value Driver Tree

Create a Value Driver Tree


You can use a value driver tree (VDT) to visualize how values flow through your model and to
help you make strategic planning decisions and simulate different scenarios.
When you're finished building your value driver tree in your story, you can save and view it,
share it with other users, or add it to a Digital Boardroom presentation.

Create a Value Driver Tree Based on an Account Hierarchy


Follow these steps to create a value driver tree based on an account hierarchy:

1. Add the value driver tree to a story.

174 © Copyright. All rights reserved.


Lesson: Simulating with Value Driver Trees

2. Select the source planning model.

3. Auto-create the value driver tree.

4. Pick a hierarchy node.

5. Choose OK.

Figure 137: Create a Value Driver Tree Features from a Hierarchy

Just remember that value drivers trees can't be used in other value drivers trees.

Note:
Both planning and BI customers can create value driver trees and enter data in
them, however, only customers with planning licenses can publish changes to a
version.

© Copyright. All rights reserved. 175


Unit 6: Forecasting and Simulating Planning Data

Value Driver Tree Time Granularity

Figure 138: Value Driver Tree Time Granularity

Date filters: The value driver tree uses a presentation date dimension to set the periods that
display in each node. By default, it's the planning date dimension. You can only change its
filter for the entire value driver tree, not for individual nodes.
The filter is optional, but you'll usually want to include it. It filters the values for each node, and
it determines the time granularity and which periods are displayed for each node unless you
specify a Presentation Date Range too.

Default Node
The Default Node is used to provide calculations and filters to all nodes in the value driver tree.
You can add your own calculated and restricted measures.
Settings are available for individual nodes, as well as the default node configuration that
applies to all nodes. If you're adding nodes manually, start with the default node configuration,
and then add nodes and change their settings as needed.

Figure 139: Value Driver Tree - Default Node

176 © Copyright. All rights reserved.


Lesson: Simulating with Value Driver Trees

Note:

● Calculated and restricted measures are maintained in the Cross Calculation


area.
● The date dimension can't be filtered in individual nodes.

Node-Specific Formula
You can also create node-specific calculations in your Value Driver Tree.
You can display the same cross calculations in all nodes, or change individual nodes. For
example, all nodes show measure values, but the top-level node that shows both measure
values and delta values.

Figure 140: Value Driver Tree - Node-Specific Formula

Linking Nodes
Nodes in value driver trees maintain their relationships based on the underlying account
formulas. Based on the underlying formulas, you can display parent and child nodes for any
specific node.

© Copyright. All rights reserved. 177


Unit 6: Forecasting and Simulating Planning Data

Figure 141: Value Driver Tree - Linking Nodes

There are two ways to add and set up nodes: manually or automatically based on the account
hierarchy and calculation structure in the model.

Use Driver Value Trees to Simulate Scenarios


To quickly simulate different scenarios and see how individual value changes affect the overall
scenario, you can enter data directly in a value driver tree based on a planning model.
A keypad lets you enter a new value, or change the existing value using a slider or a
mathematical function. The new value is entered to the model, and the rest of the nodes
update to show the effects of your change. Values can be typed in as well, without using the
number pad.
At any point, you can undo or redo data changes by opening the Version Management panel
from the task bar at the top of the screen.

Note:
It isn't necessary to include a table widget on the same model in the story to
access Version Management, Version History, or when using a simple push button.

Multiple Versions
Nodes in value driver trees can display multiple versions. Also, the nodes can display versions
based on input controls.
If needed, you can display the same KPI in multiple nodes but with a different data region such
as version.

178 © Copyright. All rights reserved.


Lesson: Simulating with Value Driver Trees

Figure 142: Value Driver Tree - Multiple Versions

Display Multiple Currencies


In the example below, you can see the underlying model has currency translation enabled with
USD set as the model currency. The entity dimension determines the local currency in the
node filter.

Figure 143: Value Driver Tree - Multiple Currencies

Note:
Currently, the new model doesn't support value driver trees.

LESSON SUMMARY
You should now be able to:
● Simulate and forecast with value driver trees.

© Copyright. All rights reserved. 179


Unit 6: Forecasting and Simulating Planning Data

180 © Copyright. All rights reserved.


Unit 6

Learning Assessment

1. With a rolling forecast, the time interval is static.


Determine whether this statement is true or false.

X True

X False

2. A Predictive Forecast requires which objects in a story?


Choose the correct answers.

X A Analytic application

X B HANA PAL

X C Data table

X D Planning model

3. What are the models in advanced options when running a predictive forecast?
Choose the correct answers.

X A Moving average

X B Linear regression

X C Gamma model

X D Automatic forecast

4. A Value Driver Tree can be created based on any model type.


Determine whether this statement is true or false.

X True

X False

© Copyright. All rights reserved. 181


Unit 6

Learning Assessment - Answers

1. With a rolling forecast, the time interval is static.


Determine whether this statement is true or false.

X True

X False

Time determination can be dynamic.

2. A Predictive Forecast requires which objects in a story?


Choose the correct answers.

X A Analytic application

X B HANA PAL

X C Data table

X D Planning model

A Predictive Forecast requires a data table that uses a planning model as a data source.

3. What are the models in advanced options when running a predictive forecast?
Choose the correct answers.

X A Moving average

X B Linear regression

X C Gamma model

X D Automatic forecast

Linear regression and automatic forecast are included in the advanced options.

182 © Copyright. All rights reserved.


Unit 6: Learning Assessment - Answers

4. A Value Driver Tree can be created based on any model type.


Determine whether this statement is true or false.

X True

X False

A Value Driver Tree can be created on planning as well as analytic models.

© Copyright. All rights reserved. 183


Unit 6: Learning Assessment - Answers

184 © Copyright. All rights reserved.


UNIT 7 Coordinating and Controlling
Processes

Lesson 1
Auditing Planning Data 187

Lesson 2
Validating Planning Data Input 189

Lesson 3
Implementing Data Locking for a Model 199

Lesson 4
Using Calendar Processes 207

UNIT OBJECTIVES

● Audit planning data.


● Validate planning data input.
● Configure and use data locking to control data access in a model.
● Use data locking to control data access in a story.
● Configure and run calendar processes.

© Copyright. All rights reserved. 185


Unit 7: Coordinating and Controlling Processes

186 © Copyright. All rights reserved.


Unit 7
Lesson 1
Auditing Planning Data

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Audit planning data.

Activate and Use Data Audit


Data audit is used to log and report on changes to transaction data in the model.

Enable Data Audit in a Model


Data audit is a low-overhead way to track who changed what transaction data and when.
There's no impact on performance when this feature is enabled.
Data audit logs changes to public data starting from the point of activation. Any changes
made before enabling the Data Audit setting aren't logged.

Figure 144: Data Audit Activation in the Model

Data Changes Log


The data changes log is accessed by going to the side menu and selecting Security → Data
Changes.
In the log, you can:
● Select the model.
● Change columns as needed.
● Filter.

© Copyright. All rights reserved. 187


Unit 7: Coordinating and Controlling Processes

You can filter the audit report by: Audit Time, Audit User, Audit Action, and other model
dimensions.
● Download to Microsoft Excel.
● Delete data.
Records can be manually deleted from the data audit table. There's no option to delete
data automatically based on age.

Imported data appears in the Signed Data Old column. Let's use the example of 225,000. If
the user inputs 230,000, it appears in the Signed Data New column and the difference of
5,000 appears in the Signed Data Delta column. In the Audit Action column, the change is
shown as a Modify audit action. Any data in a public version that is copied via version
management appears as a New audit action.

Figure 145: Audit Report

LESSON SUMMARY
You should now be able to:
● Audit planning data.

188 © Copyright. All rights reserved.


Unit 7
Lesson 2
Validating Planning Data Input

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Validate planning data input.

Data Validation Overview


Validation rules use case and features:
● Prevent data input for invalid combinations.
● Derive related members based on attribute values in the dimension.
● Warnings in the story help to guide planners.
● Use a combination of members: For example, only allow entry for cost center = Sales and
account = advertising.
● Use dimension members referenced as attributes: For example, only allow entry for cost
center = CC100_1000, Company 1000, and Profit Ctr PC100.

In planning models, you can define valid combinations of dimension members that control
data entry and derivation.
Validation rules define allowed member combinations to prevent improper data entry. For the
dimensions you define in a validation rule, only the member combinations that you specify as
allowed combinations can pass validation.
Validation rules require dimensions with properties that refer to other dimensions in the
model.

Note:
If the property is used as a column in the data table, the Add Member and
unbooked data options are disabled.

© Copyright. All rights reserved. 189


Unit 7: Coordinating and Controlling Processes

Configure Data Validation


Enable Validation Rule in the Model

Figure 146: Validation Rule Activation in the Model

How to Use a Validation Rule


To use a validation rule:

1. Activate the feature in the model.

2. Map members from one dimension to the property values in a reference dimension.

3. Create a validation rule.

● Create an attribute-based validation rule:

- Select the reference dimension.

- Map the reference dimension property to a matching dimension.

● Create a member-based validation rule:

- Select the dimensions to cross reference.

- Map the allowed dimension members.

4. Test the validation rule in a story.

190 © Copyright. All rights reserved.


Lesson: Validating Planning Data Input

Validation Rule with Existing Attributes

Figure 147: Validation Rule with Existing Attributes

Validation Rule with Members


With dimension combination rules, you can match the existing attributes maintained for the
reference dimension to the matched dimension and create dimension combination rules
based on that.
To define multiple allowed members to match with the reference dimension attribute, enter
the members and use a separator such as a comma (,) between the members.

Figure 148: Validation Rule with Members

Points to Note and Restrictions


To use validation rules, users must have the Planning Professional license and the Validation
Rule permission.
● You can create three rules for one model.
● You can define up to three dimensions in one rule.
● You can use the same dimension in up to 10 different rules.
● You can't choose time or version dimensions in a dimension combination rule.

© Copyright. All rights reserved. 191


Unit 7: Coordinating and Controlling Processes

● You can't use system properties, only custom properties are supported.
● All values of the property are available as dimension members in the matched dimension.
Otherwise, you'll receive an error or warning message asking you to check and maintain
the dimension's master data.

Perform Data Validation in Stories


Story Settings
There are two key settings in the story when using validation rules:

1. Enable Color Fill for Editable Cells in the Styling panel.

Figure 149: Table Properties

2. Enable the Reason for unplannable data message for invalid combinations.

Figure 150: Validation Member Rule Example

192 © Copyright. All rights reserved.


Lesson: Validating Planning Data Input

Excluding Unassigned Members in the Input Form


It's important to exclude unassigned members in the data table so that when disaggregation
occurs, only valid members are updated.
In the example below, you can see when validation rules are in effect and a property
assignment is changed, existing postings will display a message in the story. In this scenario,
a data action can be used to:

1. Copy the values to the valid combination.

2. Delete the invalid combination.

Figure 151: Excluding Unassigned Members in the Input Form

Bottom-up Scenario
Bottom-up concept:

1. Enter data with only cost center in the layout.

2. Company code and profit center values are derived from the validation rules.

In the following example, you can see that when data is entered for Cost Center CC100_1000,
then Company Code 1000 and Profit Center PC100 are derived based on the validation rule
and posted to the model.

Figure 152: Validation Rule - Bottom up Scenario

© Copyright. All rights reserved. 193


Unit 7: Coordinating and Controlling Processes

Top Down Scenario


In the following example, you can see that the left side displays the input by cost center
(bottom up) and the right side displays the input by company code (top down). When values
are entered for the company code dimension, the values are distributed proportionately to
posted members and evenly to unposted members.

Figure 153: Validation Rule - Top Down Scenario

Note:
When new members are added in the story, you can select property values for
them, and the system will then update the validation rules in the background.

Result in a Story for an Invalid Combination


In a layout with multiple dimensions in the rows, validation rules don't control the
combinations of unbooked members. Therefore, when a value is entered for an invalid
combination, a message will appear.

194 © Copyright. All rights reserved.


Lesson: Validating Planning Data Input

Figure 154: Validation Rule - Result in a Story for an Invalid Combination

If the planners disaggregate the values in such a story, booked data has a higher priority than
unbooked data:
● If the planners disaggregate a value to both valid and invalid booked data, the value will
only be disaggregated to the valid booked cells.
● If the planners disaggregate a value to both valid and invalid unbooked data, the value will
only be disaggregated to the valid unbooked cells.
● What happens if the planners disaggregate a value to invalid booked data and valid
unbooked data? The value will be disaggregated to the booked invalid cells and an error
message will inform you that the disaggregation failed.

Note:

● Data actions don't check for validation rules, however while publishing the data,
validation rules are checked for data correctness, and invalid records won't be
saved.
● Data imports don't check for validation rules.
● Validation rules are updated when the member properties are updated.
Invalid / posted data will display a warning: Data Changes not Allowed. Due to
validation rules, any data changes in this cell except deleting data will be
reverted when you publish data entries.

Manage Attribute Changes


A Change to a Value Causes the Data to Need Realignment
When master data attributes are changed, there's a warning that users will see in the
dimension, as you can see in the following example.

© Copyright. All rights reserved. 195


Unit 7: Coordinating and Controlling Processes

Figure 155: A Property Value Changes and the Data Needs Realignment

In the story, if a value is changed for the invalid combination, a warning icon appears with the
message:

“Data Changes not Allowed. Due to validation rules, any data


changes in this cell except deleting data will be reverted when
you publish data entries”

.
When using validation rules, any property value changes will be automatically updated and
existing data with invalid combinations will have a warning in the stories.

Realign the Data


To realign the existing transaction data, planning functions can be used to copy to the new
valid combination and delete the invalid combination.
In the following example, you can see how the data is realigned.

1. Run a copy data action.

● From company code US(1000) → CA(2000).

● For cost center CC1000_1000.

2. Run a delete data action.

● For company code US(1000).

● For cost center CC1000_1000.

196 © Copyright. All rights reserved.


Lesson: Validating Planning Data Input

Figure 156: Realignment Result

LESSON SUMMARY
You should now be able to:
● Validate planning data input.

© Copyright. All rights reserved. 197


Unit 7: Coordinating and Controlling Processes

198 © Copyright. All rights reserved.


Unit 7
Lesson 3
Implementing Data Locking for a Model

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Configure and use data locking to control data access in a model.
● Use data locking to control data access in a story.

Data Locking for a Model


Implementing data locking in a model allows you to apply set up locks on specific data
intersections of a model. This prevents changes to the data by either data entry or by other
planning operations in a story, such as allocations. There are some things to remember:
● Data locking must be enabled in the model preferences.
● You must have the proper permissions to configure data locking.
● In a story, locked and restricted cells for public versions appear as read-only.
● You can delegate ownership of the data locks to members of a dimension.
● Data locking owners can change the state of the locks that they own.

1. Enable Data Locking in the Model Preferences


Go to Model Preferences of the planning model and click Access and Privacy. Activate Data
Locking and set the Default Lock State. The default lock state can be either Open or Locked.

Figure 157: Turn On Data Locking for a Planning Model

© Copyright. All rights reserved. 199


Unit 7: Coordinating and Controlling Processes

2. Maintain the Organization Type Dimension


In the following example, you can see that Data Locking Ownership is enabled, allowing the
following columns to be maintained:

1. Data Locking Owner: This property is created in the Organization dimension when data
locking is enabled. The Owner property requires either teams or users, or both.

2. Person Responsible: The Person Responsible property is used to determine the owners.
Users here can be inherited from the Owner property.

3. Reviewer: This is not used in data locking (it can be used in a calendar process).

4. Hierarchy: A hierarchy is required so that statuses of parents can be inherited by children,


for example. Children inherit the locks of parents.

Figure 158: Organization Type Dimension

3. Define Driving Dimensions


Version and Date are mandatory driving dimensions. The driving dimensions further define
the specific intersection of data that will be locked.
For example, if you want to lock data for a specific member of an Organization dimension, you
would need to include the Organization dimension as a driving dimension.

4. Select Data Region


Select the data region for the lock. In the following example, 2021, Midwest, Forecast version
is selected.

5. Set Locks
Select Show Grid to display a grid of the driving dimensions where you can set the lock state
of each intersection:
● Open: Values are unlocked for this combination of members in table, and can be changed
by any users who have permissions to enter values for the model.

200 © Copyright. All rights reserved.


Lesson: Implementing Data Locking for a Model

● Restricted: Values can be changed only by a user who has effective ownership of locks on
this combination of members. Select the restricted cell and select Add Owner under a
driving dimension and choose one or more owners for the selected member of that driving
dimension.
● Locked: Values cannot be changed for this combination of members in a table.

When you change the state for a parent member in a dimension, the same state is applied to
its children as well. For example, if you lock North America, then the United States and
Canada will also be locked.

Figure 159: Data Locking Grid

6. Configure the Data Lock Dimensions


In the example below, you select the Configure the Data Lock icon to open the Data Locking
dialog. Then, after adding Entity as a new driving dimension, you select the Enable Ownership
option. This prompts the system to look up owners from the Entity dimension. The
Organization Type dimension is Entity, however, this depends on the dimensionality of the
model as to which dimension is the Organization Type. For example, in cost center planning,
the Cost Center dimension would be the Organization Type dimension.
● Data Locking Owner: Can contain one or more teams and users.
● Person Responsible: Can contain only one user.
● Review: A custom property and can contain only one user.

© Copyright. All rights reserved. 201


Unit 7: Coordinating and Controlling Processes

Figure 160: Configure the Data Lock Dimensions

Optimizing the Planning Area


Performance in planning models depends on queries and planning actions. These two factors
can be optimized to reduce processing time when working with large public versions.
By optimizing the planning area, you keep the data size manageable and can work on data
that’s relevant to you. You can think of the planning area as a version’s data used for all
planning actions, that you can filter out and refine for a private version. Its size will vary
depending on the model settings. Optimizing the planning area is especially useful when
you’re trying to limit the data size of a model with a large public version.

Enable Optimize Recommended Planning Area in the Model


You enable optimization of the planning area in the Model Preferences, under the Data and
Performance tab. Click the toggle under the Optimize Recommended Planning Area section.
Select whether you want to limit the planning area based on data locking, data access control
and model privacy, or both. Note that for both options to be effective, data access control and
data locking must be enabled and configured.

Figure 161: Planning Area - Model Settings

202 © Copyright. All rights reserved.


Lesson: Implementing Data Locking for a Model

You can limit the size of the planning area by using data access control, data locking, or both.
This corresponds to the recommended planning area that decreases the size of a private
version size when you create it based on data access and data locking.
● Data access restrictions give you access to the data for which you have write access.
● Data locking restrictions give you access to the data regions that are unlocked. When you
edit a public version, or create a private one, the application stores a reduced data
snapshot but still shows locked data outside of that snapshot.

When working with a public version in a story, the planning area filters the data based on what
data you've permission to edit. Only data that you've edit permissions for will be put into edit
mode. When creating a private version, you have the option to copy the recommended
planning area to the private version. Data actions and multi actions only affect data within
your planning area.
Planning areas can be tested in the training system with the Process Control model:
● Enable the planning area in the model preferences.
● In a story, set a data lock for forecast data for 2025 and all entities except one such as the
Midwest.
● Right click on the Midwest → Version → Start edit mode → Choose Recommended
Planning Area → Start.
● Go to Version Management → View the details for the Forecast/Edit Mode entry. The
planning area should be limited to Midwest but not the other entities.
● In Version Management → Hove on Edit Mode (Limited) → Go to ...More → Revert →
choose OK to exit edit mode.
● If a copy data action is run for other than the Midwest, there will be an error.

Lock-Related Settings in Data Tables


When using data locking, there are two related settings in data tables in stories:

1. Data Disaggregation: The data disaggregation settings provide more control over how
values are spread from parent members to leaf members. Enabling the following options
will change how data disaggregation will occur and prevent disaggregation to those locked
(by data locking) or invalid (due to relationship validation) leaf members that would
otherwise normally receive values.

2. Input Enablement: Some restrictions automatically make cells appear as read-only in a


table, while other restrictions allow you to edit the values in restricted cells but won’t allow
you to publish changes to restricted members.

© Copyright. All rights reserved. 203


Unit 7: Coordinating and Controlling Processes

Figure 162: Lock Related Settings in Data Tables

Access Model-Based Data Locks in a Story


In a story, you can set and view data locks by cell.
The statuses include:
● Open: Any user with the appropriate authorization can change the data.
● Locked: No one can change the data.
● Mixed State: A combination of open and locked statuses, for example, a parent will have a
mixed state if one of its children has a different status.

Turn on the Data Lock Indicator


Turn the indicators on or off in a story by going to More Actions → Show/Hide → Data Locks
from the story table.

204 © Copyright. All rights reserved.


Lesson: Implementing Data Locking for a Model

Figure 163: Data Lock Indicator

Note:
Data locking can be used with advanced filtering.

Scheduling Data Locks


Data locks can be scheduled in the SAP Analytics Cloud calendar as long as:
● There's a single owner.
● There's no assignee support.
● There's no parent process.

Owner Access
If a user is logged on as the owner, they can change Restricted data.
If a user is logged on as a non-owner:
● Assuming they have the Planner Reporter role, they can’t change the data lock status.
● They can set the cell to ignore data locks and change the data but they can't publish it.

In order to use data locking, non-owners require a role that includes Read access to the Data
Locking activity (in a role).

© Copyright. All rights reserved. 205


Unit 7: Coordinating and Controlling Processes

Figure 164: Data Lock Owner and Non-Owner Access

Additional Information
Visit the SAP Help Portal for more information on Permissions.

LESSON SUMMARY
You should now be able to:
● Configure and use data locking to control data access in a model.
● Use data locking to control data access in a story.

206 © Copyright. All rights reserved.


Unit 7
Lesson 4
Using Calendar Processes

LESSON OBJECTIVES
After completing this lesson, you will be able to:
● Configure and run calendar processes.

Build Planning Processes


Benefits of Using Planning Processes in the SAP Analytics Cloud Calendar
Planning processes have the following benefits:
● Add transparency to steps in the process.
● Provide ease of access to planning stories from the calendar.
● Provide oversight by named reviewers.
● Collaborate using notifications, discussions, and emails.
● Dynamically generate tasks based on the driving dimension hierarchy.
● Integrate with data locking tasks.
● Use task dependencies.

The Planning Process Settings Panel


Some things to keep in mind when creating a planning process:

1. Due dates: When due dates are exceeded, the tasks retain the In Progress status by
default. Alternatively, tasks can be set to discontinue when due dates are exceeded.

2. Approval levels: To use multiple approval levels, simply add more reviewer rounds. After
the Round 1 reviewer approves a task, then it rolls onto the next reviewer and so on.
There's no limit to the number of reviewer rounds.

3. Create tasks to track the process: Use the SAP Analytics Cloud calendar to create review
tasks. These tasks let you assign someone who will check the work result of another task,
for example, like a general task or a process.

● You can create a review task to let one or more assignees check the work result of
another calendar event.

● You can assign tasks to colleagues who don't have SAP Analytics Cloud accounts.
Simply use their email address and they’ll receive information on how to get an
account.

4. Tracking: Processes can be for you to track tasks or you can assign them to other users.
You can have assignees, reviewers, and viewers for a task.

© Copyright. All rights reserved. 207


Unit 7: Coordinating and Controlling Processes

● When you are creating a task, you can add a viewer (Shared with) to all tasks of a
Calendar process simultaneously.

● As a task viewer, you have an overview of all tasks that are shared with you in the
calendar.

● In tasks with review steps, people who review the work results are called reviewers.
They’re added as assignees when the task is being created.

Figure 165: Process Settings

Generating Events
Generate Events with the Wizard
After the process is created, you can generate events by region for example.

Figure 166: Step 1 - Basic Settings

Event-specific files can be added in step 1.

208 © Copyright. All rights reserved.


Lesson: Using Calendar Processes

Figure 167: Step 2 - Context

Select the model with an organization type dimension. The organization type dimension
becomes the Driving Dimension because it's used to select the members. An event is
generated for each member.
The Driving Dimension hierarchy is used to burst the tasks by region. When the process is
created, tasks are activated automatically.

Figure 168: Step 3 - Event Types (General Task and Review Tasks)

In the Event Types step, you can generate general, review, and data locking tasks
automatically. This reduces manual setup work.
Event types:
● General Task and Review Tasks: Create a general and review task for each leaf member.

© Copyright. All rights reserved. 209


Unit 7: Coordinating and Controlling Processes

● Composite Task: Create at least one composite task for each leaf member. This option can
still require a reviewer to approve or reject the task, but the review task won't be visible in
the calendar.
● Add Data Locking Tasks: Create data locking tasks before or after a general task and after
all tasks. For example:
- Before General Task: When the process is started for an entity, the data lock is opened
for the same entity.
- After General Task: When the general (dependent) task is submitted for an entity, the
data is restricted for the same entity. When the general task is approved, its status is
100% Successful.
- After All Tasks: When the preceding review task is partially successful, or successful,
the data lock is triggered.
● Create a process for groups of tasks: Create a task group made up of general, review, and
data locking tasks.

Note:
The example in the preceding image generates five events per region. If
Composite Task is selected and no data locking tasks are added, then only one
event per region is generated.

Figure 169: Step 4 - People

The Driving Dimension also contains the Person Responsible and Reviewer properties.

Note:
In the Entity dimension, custom properties can be used to determine Assignees
and Reviewers. You can assign multiple users and teams (separated by semi-
colons) to custom properties. The Person Responsible property can also be used
to determine Assignees and Reviewers. However, only one person can be assigned
to the Person Responsible property.

210 © Copyright. All rights reserved.


Lesson: Using Calendar Processes

Figure 170: Step 5 - Additional Settings

In Additional Settings, you configure the naming rules. In the preceding example, the Event
Name consists of a prefix that matches the process name and the description of the Driving
Dimension members. You can also add suffixes for the Before General Task, After General
Task, and After All Tasks.

Figure 171: Step 6 - Preview

The Driving Dimension determines the assignees and reviewers. Any property with user IDs
can be used to identify the assignees and reviewers.
While assignees are required in a task, reviewers are optional.
The resulting events are displayed in the following image.

© Copyright. All rights reserved. 211


Unit 7: Coordinating and Controlling Processes

Figure 172: Generating Events - Result

Schedule Data Locking


Data Locking Tasks
Data locking tasks help you to track planning processes, and make sure that model data is
locked at the right time.
Data locking tasks in the calendar provide structure for your planning process. You'll decide
what data is involved, whether to lock or unlock it, when to make the change, and who's
responsible for changing the locks. Then, the assignees can quickly apply those changes by
submitting the task.
Before you create a data locking task, you become familiar with how data locking is
configured for the model, and who owns the locks. The lock owners will be your assignees for
the task. Or if you need to, you can set up the task first and then edit the model to match it.
Visit the SAP Help Portal for more information on Scheduling Data Locks in the Calendar.
Notifications are sent to the applicable people and the assignees can submit the task between
the start time and the due time.
When a data locking owner submits the task, any data slices that they own within the context
of the task are set to the target lock state.

Create a Data Locking Task


Follow these steps when creating a data locking task:

1. Create the Data Locking Task.

2. Assign the Model and Context (data region).

3. When the task is Submitted, the lock status will be Locked.

212 © Copyright. All rights reserved.


Lesson: Using Calendar Processes

Figure 173: Data Locking Tasks

Data locking tasks can be used as part of a process and in that way, the process becomes
more complete. Data locking tasks can also be used as standalone tasks.

Note:
Data locking tasks are the only tasks that require a planning model in the Process
Context.

Define Dependencies Among Calendar Events


In the SAP Analytics Cloud calendar, events can start by a specified date and time, at the
same date as their parent process, or by a dependency to other events. With dependencies,
you define which other events need to meet a certain status before your event can start.
You can use dependent tasks to automate your planning process. For example, when raw
data is entered and the associated task is submitted, the system will automatically run a data
action and then automatically lock the data.

Dependent Tasks in the Calendar


In the following example, you can see the different dependent tasks.

1. Input Data: This is a general task type. The user will submit this task.

2. Run Data Action: Dependent on the Input Data task. This task runs automatically.

3. Review: Dependent on Run Data Action task. The user approves or rejects this task.

4. LockData: Dependent on Review task. This task runs automatically.

© Copyright. All rights reserved. 213


Unit 7: Coordinating and Controlling Processes

Figure 174: Dependent Tasks in the Calendar

Dependent Tasks: Sequence of Events


Once the Input Data task is triggered on the start date, the assignee is notified of the task.
The following sequence of dependent tasks is expected:

1. Dependent Task: Data Entry and Task Submission


You enter the required data into the table, which in this example is Jan (2023).

Figure 175: Dependent Task: Input Data

Once complete, you submit it. The Run Data Action task to copy data from January to
February - December is automatically triggered because it's a dependent task. A notification
is sent to the reviewer that there's data to review.

Figure 176: Data Action Results

2. Dependent Task: Review Task


The review task opens when the data action task is successful.
● Review tasks don't use the reviewer property but rather, users are assigned to the task.
● The review task must be approved or rejected by an assignee. If rejected, it is sent back to
you for update and resubmission.

214 © Copyright. All rights reserved.


Lesson: Using Calendar Processes

Figure 177: Dependent Task: Review

3. Dependent Task: Data Lock Task


When the review task is approved, the data lock task runs automatically.

Figure 178: Dependent Task: Locked Data

Planning Process Calendar View


Monitor Planning Processes
You can monitor your planning process in the calendar's List view. The list view is helpful
because it can help you track your tasks by allowing you to:
● Drill into the process hierarchy
● Highlight time info
● View indicators for recurrence and automatic tasks
● Show/hide additional columns
● Sorting/reordering of columns

Planning Process Views


It's possible to view the planning processes and the associated tasks using either the
Calendar or List workspaces. In the List workspace, you can view by task only, as follows, or
include a Gantt list.

© Copyright. All rights reserved. 215


Unit 7: Coordinating and Controlling Processes

Planning Process with Gantt Chart


In the following example, a planning process is displayed in the SAP Analytics Cloud Calendar
with the Gantt view enabled. It includes the planning process with tasks for four cost centers
that require input.
It's possible to change dates for tasks in the process by simply dragging the bars in the Gantt
view. When you move the process, the change is automatically applied to the task.

Discussion
You can discuss the work progress on your process or tasks directly in the calendar. From the
panel, choose Open discussion in the heading section, opening the Discussions panel. Here,
you'll find everyone assigned to your process listed, and you can start a new discussion.
In this example, you can see that the Discussion icon is highlighted for a data locking task.

Manage Tasks in a Story


You can access the tasks assigned to you from the calendar. You can launch the relevant
planning story directly from the calendar, simply by clicking the related work file.

216 © Copyright. All rights reserved.


Lesson: Using Calendar Processes

In this example, clicking the Work File will launch the story for the entire process. However,
clicking individual tasks, for example Midwest will open a story that is restricted via a story
filter for that task.

Note:
You can find all work files of a task or a process in the header section. In addition
to stories, you can add URL links as work files to your tasks or processes. For
example, you want to add a link to a custom web application or an SAP Analysis
for Microsoft Office document (workbook or presentation).

Notifications
You'll be notified in SAP Analytics Cloud of any pending tasks, however, you'll also receive an
e-mail notification that includes a link to the task.

© Copyright. All rights reserved. 217


Unit 7: Coordinating and Controlling Processes

Submit or Reject Tasks as a Reviewer


After a task is submitted, the reviewer is notified. If the reviewer rejects the task, you'll be
notified and the status of the task goes back to the In Progress status.

Reopen Events
Owners of calendar events can reopen events that have been accomplished, partially
accomplished, or canceled. For example, as owner of large planning processes, you can
follow-up on issues with finished child processes or tasks and reopen them.

LESSON SUMMARY
You should now be able to:
● Configure and run calendar processes.

218 © Copyright. All rights reserved.


Unit 7

Learning Assessment

1. Data audit reports include the time stamp, user, previous value, new value, and delta value
for data changes.
Determine whether this statement is true or false.

X True

X False

2. What is the purpose of a validation rule?


Choose the correct answer.

X A To prevent improper data entry and planning operations.

X B To allow access to a story.

X C To prohibit use of a model.

3. What is one criteria for defining data locks?


Choose the correct answer.

X A The story must be in the Public folder.

X B The model must be shared.

X C The Version must be Private.

X D Data locking must be enabled in the model.

4. The communications tools used in collaboration include:


Choose the correct answers.

X A Comments

X B Calendar

X C Story

X D Version

© Copyright. All rights reserved. 219


Unit 7: Learning Assessment

5. In a planning process, a Reviewer is required.


Determine whether this statement is true or false.

X True

X False

6. Where is a Process created?


Choose the correct answer.

X A Calendar

X B Model

X C Story

220 © Copyright. All rights reserved.


Unit 7

Learning Assessment - Answers

1. Data audit reports include the time stamp, user, previous value, new value, and delta value
for data changes.
Determine whether this statement is true or false.

X True

X False

Data audit records the time stamp, user, previous value, new value, and delta value
whenever there is a data change.

2. What is the purpose of a validation rule?


Choose the correct answer.

X A To prevent improper data entry and planning operations.

X B To allow access to a story.

X C To prohibit use of a model.

Validation rules check for invalid member combinations.

3. What is one criteria for defining data locks?


Choose the correct answer.

X A The story must be in the Public folder.

X B The model must be shared.

X C The Version must be Private.

X D Data locking must be enabled in the model.

Data locks are configured in the model.

© Copyright. All rights reserved. 221


Unit 7: Learning Assessment - Answers

4. The communications tools used in collaboration include:


Choose the correct answers.

X A Comments

X B Calendar

X C Story

X D Version

Comments are used to document planning assumptions. In the calendar, you can create a
task for another user.

5. In a planning process, a Reviewer is required.


Determine whether this statement is true or false.

X True

X False

Reviewers are optional. They are only needed when approvals are required.

6. Where is a Process created?


Choose the correct answer.

X A Calendar

X B Model

X C Story

Processes are created in the calendar.

222 © Copyright. All rights reserved.

You might also like