100% found this document useful (1 vote)
103 views434 pages

Model Config IBP

This document is a configuration guide for SAP Integrated Business Planning for Supply Chain 2102, detailing various aspects of model configuration. It covers topics such as attributes, master data types, planning areas, and key figures, providing instructions for creating, editing, and managing these elements. The guide serves as a comprehensive resource for users to effectively configure and utilize the planning models within the SAP system.

Uploaded by

Megha Goel
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)
103 views434 pages

Model Config IBP

This document is a configuration guide for SAP Integrated Business Planning for Supply Chain 2102, detailing various aspects of model configuration. It covers topics such as attributes, master data types, planning areas, and key figures, providing instructions for creating, editing, and managing these elements. The guide serves as a comprehensive resource for users to effectively configure and utilize the planning models within the SAP system.

Uploaded by

Megha Goel
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/ 434

Configuration Guide | PUBLIC

Document Version: 1.3 – 2021-04-01

Model Configuration Guide


SAP Integrated Business Planning for Supply Chain 2102
© 2021 SAP SE or an SAP affiliate company. All rights reserved.

THE BEST RUN


Content

1 Document History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3 Planning Models in SAP Integrated Business Planning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4 Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1 Creating Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2 Attribute Configurations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3 Extending the Length of an Attribute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.4 Editing Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.5 Deleting an Attribute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5 Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20


5.1 Description Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2 Copy Options for Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.3 Creating Simple Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.4 Creating Attribute Checks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.5 Creating Compound Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.6 Creating External Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.7 Creating Reference Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.8 Creating Virtual Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.9 Master Data Type Configurations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.10 Change of a Master Data Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.11 Deleting a Master Data Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.12 Tracking Changes to Personal Master Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6 Time Profiles and Time Periods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39


6.1 PERIODID and PERIODID(n) Attributes in Time Profile Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.2 Creating Time Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
6.3 Options for Creating Time Periods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.4 Creating Time Periods from a Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.5 Creating Time Periods with an Application Job. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.6 Change and Deletion of Time Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.7 Configuring Aggregation and Disaggregation of Data Across Different Time Profile Levels. . . . . . . . . 47

7 Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.1 Creating a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.2 Sample Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Model Configuration Guide


2 PUBLIC Content
7.3 Creating a Planning Area Based on a Sample Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
7.4 Assigning Attributes to a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.5 Assigning an Attribute Category to a Planning Area Attribute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.6 Replacing the Time Profile in a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
7.7 Using Multiple Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7.8 Downloading a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
7.9 Comparing Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
7.10 Deleting a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

8 Planning Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73


8.1 Creating Planning Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.2 Assigning Attributes to Planning Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
8.3 Change and Deletion of Planning Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

9 Attributes as Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81


9.1 Defining an Attribute as a Key Figure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
9.2 Troubleshooting for Attributes as Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

10 Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
10.1 Types of Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
10.2 Creating Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Configuration of Key Figure Fixing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Enabling Planning Notes for a Key Figure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
Configuration of Proportional Disaggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
Conversion Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.3 Copying Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
10.4 Editing Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
10.5 Creating External Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
10.6 Decimal Places in Key Figure Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117

11 Key Figure Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119


11.1 Adding Calculations to Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
11.2 Calculation Graphs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
11.3 Commonly Used Functions and Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
11.4 MIN and MAX with Multiple Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
11.5 COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
11.6 Stored Key Figure Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
11.7 Calculations at Request Level. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
11.8 Calculations Across Different Planning Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132
11.9 Defaulting to Another Key Figure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134
11.10 Simplified Key Figure Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Cumulative Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Last Period Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Model Configuration Guide


Content PUBLIC 3
Rolling Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Dynamic Rolling Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Period Shift. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Weighted Average. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
Coverage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Calendar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Generate Missing Time Periods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
11.11 Using Attributes in Key Figure Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
11.12 Using Time Periods in Key Figure Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
11.13 Exceeding the 12-Digit Integer and 6-Digit Decimal Limit in Key Figure Calculations. . . . . . . . . . . . . 184

12 Business Meaning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

13 Creating Versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

14 Planning Operators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190


14.1 Creating a Planning Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
14.2 Assigning a Planning Operator to a Planning Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
14.3 Advanced Simulation (ADVSIM) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Example: Setting Up the ADVSIM Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
14.4 Copy Operator (Advanced). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Copy Operator Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Processing of Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Preparing Automatic Migration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
14.5 Copy (COPY) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Example: Setting Up the Copy Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Example: Clearing Key Figure Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
14.6 Snapshot (SNAPSHOT) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220
14.7 Redo Snapshot (SNAPSHOTREDO) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221
14.8 Disaggregation (DISAGG) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Packaged Processing of the DISAGG Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
Example: Setting Up the Disaggregation Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
14.9 Inventory Optimization (IO) Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

15 Configuring Original Snapshots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

16 Activating Planning Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242


16.1 Statuses of Model Entities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Example: Changing Model Entities That Are Dependent on Each Other. . . . . . . . . . . . . . . . . . . 246
Example: Deleting an Attribute from an Active Master Data Type and Active Planning Area
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
16.2 Activating Time Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
16.3 Activating Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

Model Configuration Guide


4 PUBLIC Content
16.4 Activating Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Activating Planning Areas in the Planning Areas App. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Enhanced Version of Planning Area Activation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Suppressible Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
16.5 Deleting Active Objects (Active Deletion). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Troubleshooting for Active Deletion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268

17 Modeling Requirements (Checks and Errors). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270


17.1 Time Profiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
17.2 Master Data Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
17.3 Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
17.4 Planning Levels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
17.5 Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
17.6 Suppressible Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

18 Copy Options for Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293


18.1 Create New. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
18.2 Replace Existing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
18.3 Create New with Dependencies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Copying an SAP Sample Planning Area with Create New with Dependencies. . . . . . . . . . . . . . . 300
18.4 Replace Existing Including Dependencies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
18.5 Merge with Existing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303
Updating the Resulting Planning Area After Using Merge with Existing. . . . . . . . . . . . . . . . . . . 305

19 Restore Active Instance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307


19.1 Restore Active Instance After Copy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308

20 Viewing Historical States of Modeling Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310

21 Setting Up Multilanguage Support for Modeling Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . .311

22 Export and Import of Extension Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314


22.1 Export and Import of Extension Items in Your System Landscape. . . . . . . . . . . . . . . . . . . . . . . . . . 318
22.2 Best Practices for Exporting Planning Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
22.3 Exporting Planning Areas in a 2-Phase Configuration Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . .323

23 Transport of Model Entities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326


23.1 Exporting a Model Entity from the Source System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
23.2 Importing a Model Entity into the Target System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
23.3 Best Practices for Transporting Planning Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
23.4 Transporting Planning Areas in a 2-Phase Configuration Project. . . . . . . . . . . . . . . . . . . . . . . . . . .331

24 Emergency Access to Production System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

25 Reason Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336

Model Configuration Guide


Content PUBLIC 5
25.1 Creating Reason Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

26 Global Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337


26.1 Managing Global Configuration Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338
26.2 Global Configuration Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

27 Configuration History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378

28 Advanced Modeling Topics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380


28.1 Time-Independent Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
28.2 Configuring Currency Conversion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
28.3 Configuring Unit of Measure Conversion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
28.4 Attribute Transformations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
28.5 Weighted Average Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
28.6 Configuring Price and Cost for Currency and UoM Conversions. . . . . . . . . . . . . . . . . . . . . . . . . . .390
28.7 Split Factor Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
28.8 Cross-Period Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Cumulative Sum, Cumulative Average, Minimum or Maximum. . . . . . . . . . . . . . . . . . . . . . . . . 394
Year-To-Date and Year-To-Go Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .396
Projected Stock Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
28.9 How to Enable Change History?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Enabling Change History for Planning Areas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Enabling Change History for Key Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Enabling Users to View Change History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Optional Settings for Change History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
28.10 Setting up Change-History-Based Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Enabling Change-History-Based Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Configuring History-Dependent Key Figure Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Activation of a Planning Area Configured for Change-History-Based Calculations. . . . . . . . . . . . 411
28.11 Configuring Period-to-Period Comparison with Time Profile Attributes. . . . . . . . . . . . . . . . . . . . . . 412

29 Naming Conventions of Model Entities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414


29.1 Reserved Names and Naming Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .415

30 Monitoring and Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418


30.1 Where-Used Graphs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
30.2 Filter Blocks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Example: Time Attribute Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Example: Master Data Attribute Transformation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Example: Cumulative Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429

Model Configuration Guide


6 PUBLIC Content
1 Document History

 Note

Until three months after the publication of a new release of SAP Integrated Business Planning for Supply
Chain, we publish regular documentation updates on the SAP Help Portal. If you use a local PDF copy or a
paper printout of this document, make sure that you have the latest version. You can find it at http://
help.sap.com/ibp2102.

The following table provides an overview of the most important document changes.

Version Date Description

1.3 2021-04-01 The following enhancements have been


implemented:

● A correction has been made to the


Comparing Planning Areas section.
● Information about the global con­
figuration parameter
MAX_RESULT_CELL_SIZE_PLEVE
L has been added in the Global
Configuration Parameters section.

1.2 2021-03-19 The recommendation in the Export and


Import of Extension Items section has
been corrected and enhanced.

Model Configuration Guide


Document History PUBLIC 7
Version Date Description

1.1 2021-02-19 The Creating Time Periods with an Ap­


plication Job section has been en­
hanced with the information that the
option can only be used for time pro­
files that only contain time profile levels
with a period type specified.

A Note that cross-period calculations


cause filter blocks has been added to
the following sections:

● Cumulative Aggregation
● Last Period Aggregation
● Rolling Aggregation
● Dynamic Rolling Aggregation
● Period Shift
● Coverage
● Cross-Period Calculations
● Cumulative Sum, Cumulative Aver­
age, Minimum or Maximum
● Year-To-Date and Year-To-Go Calcu­
lations
● Projected Stock Calculations

Enhancements and corrections have


been made to the following sections:

● Deleting Planning Areas with De­


pendencies
● Creating Time Profiles
● Assigning Attributes to a Planning
Area
● Assigning Attributes to Planning
Levels
● What is the Difference Between a
Version and a Scenario?
● Defining an Attribute as a Key Fig­
ure

The Coverage section has been en­


hanced with a reference to the Config­
uring Aggregation and Disaggregation
section.

1.0 2021-02-03 Initial version for SAP Integrated Busi­


ness Planning for Supply Chain 2102

Model Configuration Guide


8 PUBLIC Document History
2 About This Guide

SAP Integrated Business Planning provides extensive functions for creating, updating, and capturing
information in a plan, which is configured using a planning model.

This model configuration guide is aimed at expert business users, consultants, and others who are creating,
changing, or extending a company planning model. Based on the Web user interface that is used to configure
the planning model, the guide provides task-based information to help you carry out common modeling tasks,
such as:

● Creating master data types and attributes, time profiles, planning areas, planning levels, key figures
(including calculations), versions, and planning operators
● Activating, copying, and depending on your configuration, transporting a planning model or exporting and
importing a planning model
● Managing reason codes and global configuration parameters
● Setting up multilanguage support for the supported modeling object types

The guide also introduces some advanced modeling concepts, such as modeling for currency conversion and
for unit of measure conversion and for attribute transformations.

 Note

The guide contains many examples to illustrate modeling tasks and concepts. To make it easier for you to
follow the examples, they have been based, wherever possible, on the SAPIBP1 sample planning area,
which is delivered with SAP Integrated Business Planning.

Based on your planning model, you can create planning views and work on your data using the SAP Integrated
Business Planning, add-in for Microsoft Excel. For more information, see the SAP Help Portal at http://
help.sap.com/ibp , under Application Help User Interface Planning with Microsoft Excel .

Model Configuration Guide


About This Guide PUBLIC 9
3 Planning Models in SAP Integrated
Business Planning

A planning model describes the structure of your plan in terms of data and calculations. It defines how data is
stored, calculated, and aggregated in the system. From a technical perspective, a planning model is a collection
of master data and time series data that is organized in dimensions and enhanced with specific calculations. All
models are based on the following entities:

● Attributes
● Master data types
● Time profiles
● Planning areas
● Planning levels
● Key figures (including snapshots)
● Versions
● Calculations
● Miscellaneous additional entities such as global configuration parameters, planning operators, and reason
codes.

The figure below illustrates the relationship between the main configuration entities.

Model Configuration Guide


10 PUBLIC Planning Models in SAP Integrated Business Planning
The entities shown in the figure are explained in the following table:

Main Configuration Entities

Entity Explanation

Common entities Attributes, master data types , and time profiles must be de­
fined in SAP IBP. They are available for use in any planning
area.

Attributes Attributes describe an individual field and data type that is


used in the planning model. The product ID is an example for
an attribute.

Master data types Master data types are groupings of attributes. For example, a
master data type could group all attributes belonging to the
product, such as product ID, product group, and so on. A
master data type can be assigned to multiple planning areas,
and a planning area has multiple master data types as­
signed.

Time profiles The time periods in which planning data can be managed
(for example, weekly, monthly, and so on) and the hierarchy
of these time periods make up a time profile. A time profile
can be assigned to multiple planning areas. A planning area
has exactly one time profile assigned.

Planning areas Planning areas are structures consuming the elements re­
quired in the planning process (attributes, master data
types, time profiles). The elements are selected specifically,
for example, for demand planning. (At this stage, the plan­
ning area is still lacking planning levels and key figures.)

Planning levels For each planning area, one or more planning levels are de­
fined. A planning level is a combination of attributes option­
ally plus a time period. For example, a planning level may
consist of customer ID, location ID, and product ID with an
associated time period, for example, weekly.

Key figures On each planning level, key figures are configured. For exam­
ple, the key figure consensus demand could be configured
on the level of customer ID, location ID, product ID, and a
weekly time period. It represents the consensus demand
quantity of a specific product, delivered to a specific cus­
tomer, from a specific location, in a specific calendar week.

Baseline version After the key figure configuration, the planning area is com­
pletely configured and a baseline version is automatically
generated.

Model Configuration Guide


Planning Models in SAP Integrated Business Planning PUBLIC 11
Entity Explanation

Versions Apart from the baseline version, a planning area can have
other versions. These can include only a subset of key fig­
ures, for example, because you do not want all users to see
all the data. Versions can also be used to represent optimis­
tic or pessimistic plans by using more optimistic or more
pessimistic key figure values.

Planning operators are functions that are associated with a planning area. An important example of a planning
operator is the COPY operator, which you can use to copy values of source key figures to target key figures in
the same version (base or other) of a planning area.

SAP Integrated Business Planning allows you to configure and customize your own planning models to address
your unique business requirements. The following apps, which you can access from the launchpad, include all
features that enable you to configure a model from scratch, and activate it:

● Attributes
● Master Data Types
● Time Profiles
● Reason Codes
● Time Profiles
● Sample Model Entities
● Planning Areas
● Planning Operators

Many model entities (planning areas, master data types, and time profiles) can also be copied and modified.
(You cannot, however, copy attributes or planning operators.)

Model Configuration Guide


12 PUBLIC Planning Models in SAP Integrated Business Planning
4 Attributes

Attributes are characteristics of master data types, for example, an attribute of the customer master data type
might be country or region. Attributes can be either numeric or non-numeric.

The following data types are supported for attributes:

● nvarchar
● decimal
● integer
● timestamp

 Note

You can only use decimal attributes as key figures in the planning area, and not as planning area dimension
attributes.

To support the planning calendar function of SAP Integrated Business Planning, special attribute types are
available with fixed properties as follows:

● Calendar attribute:
○ Data type: NVARCHAR
○ Length: 32
● Time zone attribute:
○ Data type: NVARCHAR
○ Length: 6

4.1 Creating Attributes

Use the Attributes app to create attributes.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Model Configuration Guide


Attributes PUBLIC 13
Procedure

1. In the Attributes app, choose New. To create special attribute types (calendar or time zone attributes),
select the attribute type from the dropdown next to the New button.

You can also create the attributes in the Master Data Types app. You can display, edit, and delete the
attributes in the Attributes app, regardless of where you created them.
2. In the New Attribute dialog provide the details for the attribute.

To create the product ID attribute, you could enter the following:


○ Attribute ID: S2PRDID

 Caution

To run the inventory operators and time-series-based planning algorithms, you have to use specific
technical IDs defined by SAP for the relevant master data types and attributes, and also for key
figures. For demand sensing, the same applies to certain master data attributes and key figures for
which a business meaning has not been specified. For more information, see the documentation of
the relevant planning operator in this guide and the respective chapter of the application help.

○ Name: Product ID
○ Description: Product Identifier
○ Data Type: NVARCHAR
○ Length: 40

 Caution

Make sure that the ID you specify for the attribute does not exist in any of the SAP sample planning
areas. An attribute with the same ID as an attribute in an SAP sample planning area can be overwritten
if you copy the SAP sample planning area.

 Note

The length of an attribute cannot exceed 100 characters. Attributes longer than that should be
modelled as description attributes (e.g. Product Description as a description attribute of Product ID).

3. Save your entries.

Related Information

Attribute Configurations [page 15]


Creating Simple Master Data Types [page 23]
Creating Compound Master Data Types [page 26]
Creating Reference Master Data Types [page 29]
Attributes [page 13]

Model Configuration Guide


14 PUBLIC Attributes
4.2 Attribute Configurations

Specific settings for creating attributes.

Attribute Configurations

ID Description Data Type Length

S2CURRID Currency ID NVARCHAR 5

S2CURRDESC Currency Description NVARCHAR 60

S2CURRTOID Currency To ID NVARCHAR 5

S2CURRTODESC Currency To Description NVARCHAR 60

S2CUSTDESC Customer Description NVARCHAR 60

S2CUSTID Customer ID NVARCHAR 20

S2DISCTCHANNEL Distribution Channel NVARCHAR 2

S2LOCDESC Location Description NVARCHAR 60

S2LOCID Location ID NVARCHAR 20

S2LOCTYPE Location Type NVARCHAR 10

S2ORDERQTY Cumulative Order Quantity in DECIMAL(18,6) -


Sales Units

S2PRDDESC Product Description NVARCHAR 60

S2PRDFAMILY Product Family ID NVARCHAR 40

S2PRDFAMILYDESCR Product Family Description NVARCHAR 60

S2PRDID Product ID NVARCHAR 40

S2SALESDOC Sales Order NVARCHAR 10

S2SALESITEM Sales Order Item NVARCHAR 10

Related Information

Creating Attributes [page 13]


Attributes [page 13]

Model Configuration Guide


Attributes PUBLIC 15
4.3 Extending the Length of an Attribute

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You can extend the length of an attribute up to 100 characters. If you extend the length of an attribute, you
must make sure that all model entities that use the attribute are updated with the new length. You must
activate the relevant master data types, time profiles, and planning areas again for the changes to take effect,
to keep the database consistent, and to prevent runtime errors.

 Note

If you use an attribute, which is used in an SAP sample planning area, in any of your planning areas, and the
length of this attribute has been changed in the SAP sample planning area, an advanced copy of the SAP
sample planning area overwrites the attribute length in your planning areas. You must activate the time
profiles, master data types, and planning areas that use this attribute again. After activation, the attribute
will have the new length consistently for all model entities where it is used.

 Note

Calendar attributes and time zone attributes have a fixed length, which cannot be changed.

Procedure

1. In the Attributes app, change the length of the attribute.


2. Find the time profiles, master data types, and planning areas that use the attribute you have changed.

To do this, click the numbers in the corresponding cells in the Attributes app.
3. Activate the time profiles that use the attribute you have changed.
4. Activate the master data types that use the attribute you have changed.
5. Activate the planning areas that use the attribute you have changed.

Model Configuration Guide


16 PUBLIC Attributes
Related Information

Activating Time Profiles [page 253]


Activating Master Data Types [page 255]
Activating Planning Areas [page 259]
Copy Options for Planning Models [page 293]

4.4 Editing Attributes

You may want to change an attribute. However, you’ll find that not all fields of an attribute are available for
editing. The changes you can do depend on the following factors:

● If the status of the attribute is active or inactive


● If the attribute is used in higher-level entities, for example, in master data types, and planning areas
● If master data records exists for one or more master data types that use the attribute

You can change any field of an attribute that you have never activated (that is, only an inactive instance of the
attribute exists). You can also delete the attribute.

If an attribute has already been activated with a master data type (even if the attribute currently has an inactive
instance), certain rules apply for which fields or parameters you can change or delete.

 Note

Calendar attributes and time zone attributes are special attribute types with some fixed properties. You can
change their name and description but not their length or data type.

Changes to an Attribute

Name and Description


You can change the name of an attribute any time. Changing the name changes the status of the attribute from
active to inactive.

You can change the description of an attribute any time. Changing the description will not change the status of
the attribute from active to inactive.

Data Type
You can change the data type of an attribute only if the attribute has never been activated, and it is not used
anywhere.

You can't change the data type of an attribute in the following cases:

● If the attribute has already been activated (by activating a time profile, a master data type, or a planning
area that use the attribute)
● If the attribute is specified as a referenced attribute in a reference or in a virtual master data type

Model Configuration Guide


Attributes PUBLIC 17
● You cannot change the data type to decimal for an attribute that is assigned to a planning area or to a time
profile.
● You cannot change the data type from decimal for an attribute that is used in a planning area as an
attribute as key figure.

Length

You can specify the length of an attribute only if its data type is NVARCHAR. All other data types have fixed
length.

You can't reduce the length of an attribute if the attribute has already been activated.

You can extend the length of an attribute. In this case, you must activate all master data types, time profiles,
and planning areas that use the attribute again for the changes to take effect, to keep the database consistent,
and to prevent runtime errors.

Related Information

Extending the Length of an Attribute [page 16]

4.5 Deleting an Attribute

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You want to delete an attribute that is used in one or more planning areas, master data types, or time profiles.

If the attribute is used in higher-level entities, you must work top down to remove the attribute from each
model entity that uses the attribute before you can delete the attribute.

 Note

If an attribute is not used in any other model entity, you can simply delete it.

Model Configuration Guide


18 PUBLIC Attributes
Procedure

1. Remove the attribute from the planning area by active deletion.

Mark the attribute for deletion, save your changes, then activate the planning area.

Repeat this for all planning areas where the attribute is used.
2. Remove the attribute from the master data type by active deletion.

Mark the attribute for deletion, save your changes, then activate the master data type.

Repeat this for all master data types where the attribute is used.

 Caution

If you remove an attribute from a master data type, the already existing data for this attribute is deleted
from the master data.

Other master data types that use the same attribute are not affected.

3. Remove the attribute from the time profile, then activate the time profile.

Repeat this for all time profiles where the attribute is used.
4. Delete the attribute.

Related Information

Deleting Active Objects (Active Deletion) [page 266]


Example: Deleting an Attribute from an Active Master Data Type and Active Planning Area [page 250]

Model Configuration Guide


Attributes PUBLIC 19
5 Master Data Types

Master data types represent categories of information, for example, customer, location, product, or resource.
You use master data types to segment planning data. A typical example of their use would be a consumer
goods company that wants to understand sales data based on the product, customer, and location master data
types.

Every master data type has one or more attributes, for example, the S2CUSTOMER master data type has
S2CUSTID as an attribute.

In the Types of Master Data Types table you can find a description of the types of master data types available in
the system.

 Note

You cannot change the type of an active master data type.

Types of Master Data Types

Type of Master Data Type Description

Simple master data type For example, product, customer or location.

Compound master data type Combines two or more master data types to represent a
valid combination of the component master data types.

For example, you use the product and the customer master
data types. As not all products are sold to all customers, to
represent the valid combinations of products and custom­
ers, you create the customer product compound master
data type. When a key figure data containing the keys prod­
uct ID and customer ID is loaded, the system checks against
the compound master data type for valid combinations, and
stores data only for those.

Reference master data type References another master data type so that you do not
have to upload the same data more than once. For example,
you can create the currency master data type as a reference
master data type that uses the currency to master data type.

 Note
You cannot load data into a reference master data type.

Model Configuration Guide


20 PUBLIC Master Data Types
Type of Master Data Type Description

External master data type Makes it possible for SAP Integrated Business Planning to
handle and integrate master data when the content comes
from an external database. Before you can use the external
master data types, the database tables they retrieve their
content from have to be integrated from SAP ERP to SAP
HANA database tables inside SAP Integrated Business Plan­
ning. When you set up your planning model, you define an
external master data type referring to a table that contains
the predefined content. The integration runs in batch mode,
so the external master data entries are updated on a regular
basis from SAP ERP according to your set preferences.
There is no need for manual data upload.

 Note
You cannot load data into an external master data type.

Virtual master data type Is used to create joins between two (or more) master data
types that otherwise have no connection to each other. It al­
lows you to make the attributes of a master data type availa­
ble for another by using a common attribute of the refer­
enced master data types as a join condition.

By combining master data types this way, you can avoid the
duplication of data in your database, since you only need to
upload data for the attributes thus shared once.

 Note
You cannot load data into a virtual master data type.
Make sure you load data into the referenced master data
types that the virtual master data type is based on.

Related Information

Creating Simple Master Data Types [page 23]


Creating Compound Master Data Types [page 26]
Creating External Master Data Types [page 28]
Creating Reference Master Data Types [page 29]
Creating Virtual Master Data Types [page 30]

Model Configuration Guide


Master Data Types PUBLIC 21
5.1 Description Attributes

When you define a master data type, you can link a description attribute to its corresponding ID attribute. This
can be beneficial for the performance of the IBP Excel add-in. When you link the description and ID attributes,
during logon, the IBP Excel add-in downloads the master data of one attribute for both the ID and the
description, instead of two separate attributes. This reduces the data volume in the IBP Excel add-in. After you
have linked them in configuration, both the description and ID attributes are displayed in the IBP Excel add-in,
but not in all other apps in SAP Integrated Business Planning.

 Caution

If you have linked the description and ID attributes in configuration, you will not be able to use the dynamic
selection logic for master data attribute values in the IBP Excel add-in. For more information about the
dynamic selection of master data attribute values, see SAP Help Portal at https://help.sap.com/ibp, under
Application Help User Interface Planning with Microsoft Excel Information for Administrators
Planning Views Dynamic Selection of Values of Master Data Attributes .

5.2 Copy Options for Master Data Types

Copy options enable you to create an exact copy of a master data type, combine two master data types, or
overwrite a master data type with a different one.

You can copy sample master data types and non-sample master data types with the copy options available in
the system. When you copy the sample master data types, their attributes are automatically copied if they
haven't been copied yet. If the attributes already exist, you can update them using the Update Attributes
option. When the system updates the attributes in the target master data type based on the attributes in the
source master data type, the rules for changing an attribute are applied. For more information about changing
attributes, see Editing Attributes [page 17].

The system does not copy the attributes assigned to the master data type when you copy non-sample master
data types.

The following three options are available to copy master data types:

● Create New
You can create a master data type that contains exactly the same configuration as the source with a new
ID.
● Merge with Existing
You can create a combination of the configuration available in two master data types, that is, keep all the
configuration in the target master data type and add everything new from the source master data type.
The resulting master data type has the ID of the target master data type and the name and description of
the source master data type. The source and the target master data types must be of the same type and
the target master data type must be active.
● Replace Existing
You can create an exact copy of the source master data type in an existing target master data type, that is,
delete configuration in the target master data type that is not included in the source master data type, add
new configuration from the source master data type, and update existing configuration in the target

Model Configuration Guide


22 PUBLIC Master Data Types
master data type based on the source master data type. The resulting master data type has the ID of the
target master data type and the name and description of the source master data type. The source and the
target master data types must be of the same type and the target master data type must be active.

When you copy a sample or a non-sample master data type, checks are run on the target master data type.
These checks are the same as the ones that you can run on any master data type using the Check button in the
Master Data Types app. If all checks are successful or end with warning messages, the target master data type
is created. You are notified if the checks fail, but you can still continue and copy the master data type. The
enhanced log tells you what went wrong during the checks.

5.3 Creating Simple Master Data Types

Use the Master Data Types app to create simple master data types.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Procedure

1. In the Master Data Types app, choose New and then Simple.
2. On the New Simple Master Data Type screen, provide the details for the simple master data type.

 Recommendation

SAP recommends that you define a two-letter or three-letter prefix for the IDs of the master data types;
for example, ABC or XYZ (as in ABCPRODUCT or XYZPRODUCT). One suggestion could be to use your
company's ticker symbol as a prefix. The sample planning areas delivered with SAP Integrated
Business Planning use the IBP prefix in the master data type IDs.

To create the product master data type, you could enter the following:
○ ID: S2PRODUCT
○ Name: Product
○ Description: Product
3. In the Assigned Attributes screen area, add at least one attribute to your master data type.

 Note

If you haven't already created the attributes, you can do so here by clicking New.

Model Configuration Guide


Master Data Types PUBLIC 23
You could add attributes like product ID (S2PRDID) and product description (S2PRDDESC).

 Caution

To run the inventory operators and time-series-based supply planning algorithms, you have to use
specific technical IDs defined by SAP for the relevant master data types and also for attributes and key
figures. For demand sensing, the same applies to certain master data attributes and key figures for
which a business meaning has not been specified. For more information, see the documentation of the
relevant planning operator in this guide and the respective chapter of the application help.

4. Specify at least one key attribute for the master data type.

Select the Key checkbox for S2PRDID.


5. Optional: Specify attributes as personal data by selecting the corresponding Personal Data checkbox.

 Caution

Do not use this feature to track general changes to master data because this may lead to performance
problems.

6. Optional: Link the description attribute to the corresponding ID attribute using the Description Attribute
field.

Select S2PRDDESC as description attribute for S2PRDID.


7. Optional: Define an attribute check for the master data type.
8. Save your entries.

Next Steps

Activate your master data type.

Related Information

Creating Attributes [page 13]


Master Data Type Configurations [page 33]
Creating Attribute Checks [page 25]
Master Data Types [page 20]
Description Attributes [page 22]
Tracking Changes to Personal Master Data [page 38]

Model Configuration Guide


24 PUBLIC Master Data Types
5.4 Creating Attribute Checks

Use the Master Data Types app to create attribute checks.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

To use the example described in this section, make sure you have created the S2PRODUCT and
S2PRODUCTFAMILY master data types in your system. You can also work with your own master data types.

Context

You want to make sure that the master data that you upload to your system belongs to a specific set.

Procedure

1. Open the Master Data Types app.


2. Find the master data type that you want to define the attribute check for and open it for editing.

Open the S2PRODUCT master data type.


3. Go to the Attribute Checks screen area and turn on attribute checks.
4. Define a new attribute check.

Define the attribute check as follows:


○ Check Master Data Type: S2PRODUCTFAMILY
○ Check Attribute: S2PRDFAMILY
○ Assigned Attribute: S2PRDFAMILY

You can define one or more attribute checks for a particular master data type using several attributes from
the same check master data type or attributes from different check master data types.
5. Save the attribute check.
6. Save the master data type.

Model Configuration Guide


Master Data Types PUBLIC 25
Results

Now you have an attribute check that checks whether the values of the S2PRDFAMILY attribute in the
S2PRODUCT master data type match the values of the S2PRDFAMILY attribute in the S2PRODUCTFAMILY
master data type. When you upload data for the S2PRODUCT master data type, the system will reject any data
records that do not meet this requirement.

Next Steps

Activate the master data type and upload data for it.

Related Information

Creating Simple Master Data Types [page 23]


Master Data Type Configurations [page 33]

5.5 Creating Compound Master Data Types

Use the Master Data Types app to create compound master data types.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Make sure you have created the master data types you want to add as components.

Procedure

1. In the Master Data Types app, choose New and then Compound.
2. On the New Compound Master Data Type screen, enter the details for the compound master data type.

To create the customer product master data type, you could enter the following:

Model Configuration Guide


26 PUBLIC Master Data Types
○ ID: S2CUSTOMERPRODUCT
○ Name: Customer Product
○ Description: Customer Product
3. Add at least two master data types as components.

You can specify simple, compound, reference, and external master data types as component master data
types. Also, make sure that the status of the master data type you select is active or inactive.

For the S2CUSTOMERPRODUCT compound master data type, add S2CUSTOMER and S2PRODUCT.

The key attributes of the component master data types you selected are automatically added as key
attributes under Assigned Attributes.

 Note

A decimal attribute cannot be a key attribute in a compound master data type. If a decimal attribute is
added, the Key checkbox will be automatically deselected and inactive.

4. Optional: Assign more attributes to the compound master data type.

Add S2CUSTDESC and S2PRODDESC.


5. Optional: Specify attributes as personal data by selecting the corresponding Personal Data checkbox.

 Caution

Do not use this feature to track general changes to master data because this may lead to performance
problems.

6. Optional: Link the description attribute to the corresponding ID attribute using the Description Attribute
field.

Select S2PRDDESC as description attribute for S2PRDID.


7. Optional: Define an attribute check for the master data type.
8. Save your entries.

Next Steps

Activate your master data type.

Related Information

Creating Attributes [page 13]


Creating Simple Master Data Types [page 23]
Creating Attribute Checks [page 25]
Description Attributes [page 22]
Master Data Types [page 20]
Tracking Changes to Personal Master Data [page 38]

Model Configuration Guide


Master Data Types PUBLIC 27
5.6 Creating External Master Data Types

Use the Master Data Types app to create external master data types.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Make sure your SAP Integrated Business Planning system has been integrated with the system you would like
to provide master data for your external master data types, for example, SAP ERP.

Procedure

1. In the Master Data Types app, choose New and then External.
2. On the New External Master Data Type screen, provide the details for the external master data type.

To create the location external master data type, you could enter the following:
○ ID: S2LOCATIONEXT
○ Name: Location External
○ Description: Location External
3. Specify an external data source.

Select SMD_LOC from the External Data Sources list.


4. Specify an integration profile for the master data type.

Use the default integration profile that SAP delivers.


5. Add at least one attribute to your master data type.

Add the following attributes:


○ Location ID (S2LOCID)
○ Location Description (S2LOCDESC)
○ Location Type (S2LOCTYPE)
6. Assign the attributes to the corresponding data source columns using the Referenced Column.

Make sure to use all key columns of the external data source as referenced column. The data type of the
assigned attribute and the column of the external data source you specify as referenced column for this
assigned attribute must be compatible with each other.

Specify LOCATION_NUMBER as referenced column for the S2LOCID assigned attribute. For S2LOCTYPE
specify LOCATION_TYPE_CODE as referenced column. For S2LOCDESC add LOCATION_DESCRIPTION.

The Key checkbox is automatically selected for S2LOCID and S2LOCTYPE.

Model Configuration Guide


28 PUBLIC Master Data Types
7. Optional: Link the description attribute to the corresponding ID attribute using the Description Attribute
field.

Select S2LOCDESC as a description attribute for S2LOCID.


8. Save your entries.

Related Information

Creating Attributes [page 13]


Master Data Types [page 20]
Description Attributes [page 22]
Separation of Data with Integration Profiles

5.7 Creating Reference Master Data Types

Use the Master Data Types app to create reference master data types.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Make sure you have created the master data type you want to use in your reference master data type.

Procedure

1. In the Master Data Types app, choose New and then Reference.
2. On the New Reference Master Data Type screen, provide the details for the reference master data type.

To create the currency to master data type, you could enter the following:
○ ID: S2CURRENCYTO
○ Name: Currency To
○ Description: Currency To
3. Specify a referenced master data type.

You can specify a simple, a compound or an external master data type as a referenced master data type.
Also, make sure that the status of the master data type you select is active or inactive.

Model Configuration Guide


Master Data Types PUBLIC 29
You could create and select the S2CURRENCY master data type here.

The attributes of the selected referenced master data type are automatically listed in the Referenced
Attributes section.
4. Select the attributes you want to assign to the master data type.

Add the Currency To ID (S2CURRTOID) and Currency To Description (S2CURRTODESC) attributes.


5. Specify a referenced attribute for each assigned attribute.

Make sure that the assigned attribute and the referenced attribute have the same data type, and that the
length of the assigned attribute is greater than or equal to the length of the referenced attribute.

Specify S2CURRID as a referenced attribute of S2CURRTOID and S2CURRDESC as a referenced attribute of


S2CURRTODESC.
6. Optional: Link the description attribute to the corresponding ID attribute using the Description Attribute
field.

Select S2CURRTODESC as a description attribute for S2CURRTOID.


7. Save your entries.

Related Information

Creating Attributes [page 13]


Creating Simple Master Data Types [page 23]
Master Data Types [page 20]
Description Attributes [page 22]

5.8 Creating Virtual Master Data Types

Use the Master Data Types app to create virtual master data types.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Make sure you have created the master data types you want to use in your virtual master data type.

Model Configuration Guide


30 PUBLIC Master Data Types
Context

Virtual master data types don’t store data themselves but create joins between two (or more) master data
types that otherwise have no connection to each other. They allow you to make the attributes of a master data
type available for another by using a common attribute of the referenced master data types as a join condition.

Procedure

1. In the Master Data Types app, choose New and then Virtual.
2. On the New Virtual Master Data Type screen, provide the details for the virtual master data type.

To create the S2SALESHDRITEMPRODLOC master data type, you could enter the following:
○ ID: S2SALESHDRITEMPRODLOC
○ Name: Virtual Sales Order Item
○ Description: Virtual Sales Order Item
3. Add at least two referenced master data types.

You can specify simple, compound, reference, and external master data types as referenced master data
types. Also make sure that the status of the master data type you select is active or inactive.

The system automatically adds the key attributes of the master data types you added as referenced
master data types in the Assigned Attributes section.
4. In the Add Join Condition dialog, define at least one join condition as shown in the example below.

Master Data Types Attributes Master Data Types Attributes

S2SALESORDERITEM S2SALESDOC Equals S2SALESORDERHDR S2SALESDOC

Make sure to use every referenced master data type in a join condition and make sure that the join
conditions form a chain. You need at least two referenced master data types and one join condition.

5. Optional: Under Assigned Attributes, you may change the values of the Referenced Attribute and
Referenced Master Data Type fields or assign more attributes and define the referenced attribute and
referenced master data type for the attributes you added.
6. Save your entries.

Example

The following example, based on sample master data types, illustrates the use of virtual master data types.

SAP delivers sample master data types including the following:

● IBPSALESORDER (Sales Order)


● IBPSALESORDERITEM (Sales Order Item)
● IBPSALESORDERHEADER (Sales Order Header)

Model Configuration Guide


Master Data Types PUBLIC 31
● IBPPRODUCT (Product)
● IBPLOCATION (Location)

These master data types include the following attributes:

● SALESITEM (Sales Order Item)


● SALESDOC (Sales Order)
● PRODID (Product ID)
● LOCID (Location ID)

These are the attributes that you require for a key figure calculation at schedule line level. Without using a
virtual master data type, you would have to upload data for each of these attributes of the IBPSCHEDULELINES
master data type one by one.

However, as seen above, the set of data required is in fact available through upload for other master data types.
The data is defined by the key attributes of the IBPSCHEDULELINES master data type along with the other
master data types listed above, as follows:

SALESDOC and SALESITEM within the IBPSCHEDULELINES master data type are also key attributes of the
IBPSALESORDERITEM master data type (while SALESDOC is also a key attribute of IBPSALESORDERHEADER).

The IBPSALESORDERITEM master data type in turn contains the LOCID and PRODID attributes as non-key
attributes, which are available in the IBPLOCATION and the IBPPRODUCT master data types as key attributes.

The virtual master data types IBPVSALESHDRITEMSCHLPRODLOC (Virtual Schedule Lines) and
IBPVSALESHDRITEMPRODLOC (Virtual Sales Order Item) set up the very references described above in the
form of join conditions as shown in the tables below:

IBPVSALESHDRITEMSCHLPRODLOC (Virtual Schedule Lines)

Master Data Types Attributes Master Data Types Attributes

IBPSALESORDERITEM LOCID Equals IBPLOCATION LOCID

PRODID PRODID
IBPSALESORDERITEM Equals IBPPRODUCT

SALESDOC SALESDOC
IBPSALESORDERITEM Equals IBPSALESORDERHDR

SALESDOC SALESDOC
IBPSCHEDULELINES Equals IBPSALESORDERITEM

SALESITEM SALESITEM
IBPSCHEDULELINES Equals IBPSALESORDERITEM

IBPVSALESHDRITEMPRODLOC (Virtual Sales Order Item)

Master Data Types Attributes Master Data Types Attributes

IBPSALESORDERITEM LOCID Equals IBPLOCATION LOCID

PRODID PRODID
IBPSALESORDERITEM Equals IBPPRODUCT

SALESDOC SALESDOC
IBPSALESORDERITEM Equals IBPSALESORDERHDR

By using these virtual master data types, you can avoid the need for uploading data that is already available
into the IBPSCHEDULELINES master data type, and thus the duplication of data in your database.

Model Configuration Guide


32 PUBLIC Master Data Types
Related Information

Creating Attributes [page 13]


Creating Simple Master Data Types [page 23]
Master Data Types [page 20]

5.9 Master Data Type Configurations

Specific settings for creating simple master data types.

Simple Master Data Type Configurations

ID Name Assigned Attributes Key

S2CURRENCY Currency S2CURRID S2CURRID

S2CURRDESC

S2CUSTOMER Customer S2CUSTID S2CUSTID

S2CUSTDESC

S2LOCATION Location S2LOCID S2LOCID

S2LOCDESC

S2PRODUCT Product S2PRDID S2PRDID

S2PRDDESC

S2PRDFAMILY

S2PRODUCTFAMILY Product Family S2PRDFAMILY S2PRDFAMILY

S2PRDFAMILYDESCR

S2SALESORDERITEM Sales Order Item S2SALESDOC S2SALESDOC

S2SALESITEM S2SALESITEM

S2LOCID

S2PRDID

S2ORDERQTY

S2SALESORDERHDR Sales Order Header S2SALESDOC S2SALESDOC

S2DISCTCHANNEL

Model Configuration Guide


Master Data Types PUBLIC 33
Related Information

Creating Simple Master Data Types [page 23]


Master Data Types [page 20]

5.10 Change of a Master Data Type

You may want to change a master data type. However, you'll find that not all fields of a master data type are
available for editing. The changes you can do depend on the following factors:

● If the status of the master data type is active or inactive


● If the master data type is assigned to planning areas, or used in other master data types, or not
● If data has already been uploaded for the master data type

 Note

You can change any parameter (except for its ID) of a master data type that you have never activated (that
is, only an inactive instance of the master data type exists). You can also delete the master data type.

If a master data type has already been activated (even if it currently has an inactive instance), certain rules
apply for what changes you can make.

General Data

You can change the name and the description of a master data type any time.

Once you activated a reference master data type, you can’t change the master data type your reference
master data type is built on.

Once you activated an external master data type, or used it in a planning area, you can’t change its external
data source.

Type

You can change the type of an inactive master data type as follows:

● Change the type of a simple or compound master data type to external


● Change the type of an external master data type to simple or compound

Once you have activated the master data type, you can no longer change its type.

Model Configuration Guide


34 PUBLIC Master Data Types
Component and Referenced Master Data Types

A compound master data type must have at least two components. A virtual master data type must have at
least two referenced master data types.

If you add or remove components, you must reflect the changes in the set of the key attributes of the
compound master data type as well.

In case master data records exists for a compound master data type, you can’t add or remove components.
You can add referenced master data types to or remove them from a virtual master data type even if data exists
for the components.

Assignment of Attributes to Master Data Types

Adding Additional Attributes to a Master Data Type


You can add additional attributes to a master data type. If you want to use the newly added attribute in a
planning area or in a master data type built on the master data type you changed, you must select it explicitly
for the planning area, or for the master data type. Given they were already active, you must activate the master
data type and all other entities that use the changed master data type (planning areas, other master data
types) for the changes to take effect.

If master data records already existed for the master data type you added an attribute to, the already existing
records of the changed master data type will have an empty value for the new attribute. You can decide to
upload the master data, enriched with the new attribute, again.

Removing Attributes from a Master Data Type


You can’t remove all attributes from a master data type. A master data type must have at least one attribute
assigned.

You can’t remove an attribute from a master data type if the attribute is used in a planning area, or in a master
data type that is built on the master data type you want to change.

 Caution

If you remove an attribute from a master data type, the already existing data for this attribute is deleted
from the master data records.

Other master data types that use the same attribute are not affected.

Key Attributes
In case of a simple master data type, you can specify additional attributes as key attributes. However, if
master data records already existed for the master data type before you set an additional attribute to key, the
attribute cannot be empty in any of the master data records.

The master data type must have at least one key attribute. You can change a key attribute to a non-key
attribute if the remaining key combination still has only unique values for all existing master data records.

Compound master data types contain all key attributes of the component master data types, and cannot have
any other key attributes. The component master data types cannot have the same key attributes. If you change

Model Configuration Guide


Master Data Types PUBLIC 35
the key attributes in a component of a compound master data type, you must update the keys of the
compound master data type as well.

A virtual master data type doesn’t have key attributes.

Reference master data types must use all key attributes of the referenced master data type as key. Each key
attribute of the referenced master data type must be used as a referenced attribute in the reference master
data type that is built on it.

If you change the key attribute of the master data type the reference master data type is built on, you must
update the key of the reference master data type as well.

An external master data type must contain all the keys of the external data source.

You must activate the master data type and all other entities that use the master data type (planning areas,
other master data types) for the changes to take effect.

Required Attributes
Each key attribute of a master data type is a required attribute. You can specify additional attributes as
required, or you can change a non-key required attribute to not required at any time. However, if master data
records already existed for the master data type when you set an additional attribute to required, make sure
that the master data records for this attribute do not contain empty or null values.

When creating master data, you need to provide values for the required attributes, but you don’t need to
provide them when you update or delete master data.

You must activate the master data type for the changes to take effect.

Personal Data
You can define attributes of simple and compound master data types as personal data. To do this, you need to
select the Personal Data checkbox for the corresponding attribute. After that, you must activate the master
data type so that the changes take effect.

 Caution

Do not use this feature to track general changes to a master data type because this may lead to
performance problems.

Related Information

Tracking Changes to Personal Master Data [page 38]

5.11 Deleting a Master Data Type

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the

Model Configuration Guide


36 PUBLIC Master Data Types
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

If a master data type is not assigned to any other model entity, and has never been activated, you can delete it.

You must work top down to remove the master data type you want to delete from each model entity that uses it
if any of the following applies:

● The master data type is assigned to a planning area.


● The master data type is used as a component in a compound master data type, or in a virtual master data
type.
● The master data type is used as a reference in a reference master data type.

Procedure

1. If a master data type to be deleted is used in a planning area, delete the master data type from the planning
area by marking it for deletion, then activate the planning area.

Repeat this for all planning areas where the master data type is used.
2. If a master data type to be deleted is used in a compound master data type, delete it from the compound
master data type. Activate the compound master data type.

 Note

You can delete a component from a compound master data type only if no data exists for the
compound master data type.

Repeat this for all compound master data types where the master data type to be deleted is used.
3. If a master data type to be deleted is used in a virtual master data type, delete it from the virtual master
data type. Activate the virtual master data type.

Repeat this for all virtual master data types where the master data type to be deleted is used.
4. If a master data type to be deleted is used in a reference master data type, delete the reference master
data type by using active deletion.

 Note

You can delete a reference master data type only if it is not used in any higher-level entities, such as a
planning area, or other master data types. Before deletion, you must delete it from all planning areas
and master data types.

5. Now use active deletion to delete the master data type you originally wanted to delete.

Model Configuration Guide


Master Data Types PUBLIC 37
5.12 Tracking Changes to Personal Master Data

If your company stores master data records that contain personal data, changes to this data can be tracked,
viewed, and downloaded if required.

To use this feature, you first need to define the corresponding attributes as personal data in the Master Data
Types app. You can define this setting for both simple and compound master data types. To do this, you need to
select the Personal Data checkbox and activate the master data type. You can change this setting at any time.

The changes will be stored in the system for 90 days. You can change this retention time using the
PERSONAL_DATA_CHANGE_LOG_AGE global configuration parameter.

 Caution

Do not use this feature to track general changes to master data because this may lead to performance
problems.

You can view and download changes to personal data in the View Personal Master Data Changes app.

Related Information

Creating Simple Master Data Types [page 23]


Creating Compound Master Data Types [page 26]
Change of a Master Data Type [page 34]

Model Configuration Guide


38 PUBLIC Master Data Types
6 Time Profiles and Time Periods

Time Profiles define a time interval used for managing planning data.

A time profile is made up of time profile levels (for example, months, quarters, or years). Each level is made up
of periods, which are identified by a number, and describe the start and end time of the time period in question.

If you want to perform aggregation or disaggregation along time, then the periods on different levels need to
form a hierarchy. In this hierarchy, time profile levels can have multiple parents, and there can be time profile
levels without a parent level. For more information about setting up your planning model for aggregating and
disaggregating data across different time levels, see Configuring Aggregation and Disaggregation of Data
Across Different Time Profile Levels [page 47].

 Example

Time Periods for a Time Profile with 6 Time Levels

The sample models delivered with IBP also provide time profile definitions. Launch the Sample Model Entities
app to see the time profiles delivered with SAP Integrated Business Planning. You can either copy one of these
time profiles or create one from scratch in the Time Profiles app.

After creating and activating a time profile, you must load a time profile data file, or schedule an application job
to create the time periods.

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 39
6.1 PERIODID and PERIODID(n) Attributes in Time Profile
Levels

The PERIODID and PERIODID(n) attributes are technical attributes. The PERIODID(n) attribute is the
hierarchy level ID for the time period. The PERIODID attribute identifies a specific time period, and not a time
profile level. For example, 25503 is the PERIODID for May 2016 as a time period, and 25504 for June 2016. You
won't find these attributes in the Time Profiles app, but you may need them when defining calculations for key
figures or attribute transformations.

The assignment of PERIODID(n) attributes varies according to the time profile ID and levels that have been
defined. PERIODID0 represents the lowest time profile level. If the time profile has multiple time profile levels,
then PERIODID1 represents the highest level. The next PERIODID(n) value represents the next highest time
profile level.

For example, if a time profile is defined with the levels "Day", "Technical Week", "Week", "Month", and "Year", the
assignment is as follows:

● PERIODID0: Daily periods


● PERIODID1: Yearly periods
● PERIODID2: Monthly periods
● PERIODID3: Weekly periods
● PERIODID4: Technical weekly periods

6.2 Creating Time Profiles

Use the Time Profiles app to create time profiles.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Procedure

1. In the Time Profiles app, choose New.


2. In the Select Time Profile Levels dialog, choose the time profile levels for your time profile. For example,
select all the available levels and choose OK.

Model Configuration Guide


40 PUBLIC Time Profiles and Time Periods
The time profile levels that you selected are created and prefilled. If you don't want the system to
automatically create time profile levels for your time profile, choose OK without selecting any levels.

 Note

If you select the time profile levels, that is, they are created automatically from a template, you can't
change the base level of any time profile level, you can only extend the time profile with a less granular
time profile level. If you want to use a custom structure for the time profile, create one from scratch.

3. On the New Time Profile screen, provide the details for the time profile.

Enter a positive integer as ID.

Make sure that the time profile levels form a sequence based on the period type. For example, a time profile
level that has the period type “day” must come before the one that has “month”, and “month” must come
before “quarter”.

 Note

Day and calendar week refer to the Gregorian calendar.

The default display horizon that you set for a time profile level determines the default time period that is
preselected for the relevant time profile level on the Time Settingstab of the Create New Planning View
screen of the SAP Integrated Business Planning, add-in for Microsoft Excel (SAP IBP, add-in for Microsoft
Excel). The values in the default display horizon fields are relative to the current period. For example, if the
current period is May 2020, and you set 0 for Default Display Horizon in the Past, and 6 for Default Display
Horizon in the Future, then the preselected values for monthly periods are May 2020 in the From field and
November 2020 in the To field of the Time Settings section.
4. Optional: Assign attributes to the time profile levels.

 Note

You can assign any attribute to a time profile level, except for attributes with decimal data type.

If the External Time Series checkbox is selected for your planning area, do not assign an attribute that
has DATE as an ID to a time profile level because it will not be propagated to the calculation scenarios.

5. Save your entries.

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 41
6.3 Options for Creating Time Periods

A time period is a specific instance of a time profile level, which is identified by a number and has a start date
and an end date.

Time periods are generated for days, (technical) weeks, months, quarters, and years. The start and end dates
for the time periods are taken from the selected time profile. The following figure illustrates how technical
weeks work:

Grouping of Days into Technical Weeks

You have three options to create time periods once you have an active time profile:

● You can generate time periods using an application job in the Application Jobs app.
● You can download a template with time periods in the Data Integration Jobs app and then upload them
from the comma-separated values (CSV) file.
● You can upload time periods from SAP Cloud Integration for data services.

 Recommendation

Use the data integration jobs and SAP Cloud Integration for data services options if you are working with
complex time profiles, that is, time profiles that contain time profile levels of the custom period type, or if
you have assigned attributes to time profile levels.

Related Information

Creating Time Periods with an Application Job [page 44]


Creating Time Periods from a Template [page 43]

Model Configuration Guide


42 PUBLIC Time Profiles and Time Periods
6.4 Creating Time Periods from a Template

You can create time periods from templates in the Data Integration Jobs app.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

We recommend that you use this option because in the comma-separated values (CSV) file, you can modify the
period description if needed, and if you use time profile attributes, you can fill the attributes with data before
loading the time periods for the time profile into the system.

Procedure

1. In the Data Integration Jobs app, click Download Template.


2. Select Time Periods as the data type.
3. Select the time profile from the dropdown list and specify whether you want to prefill the template with
new or existing time periods.
○ If you leave the Prefill Template dropdown blank, the template doesn’t contain any time profiles.
○ If you select With New Time Periods, the template contains the time periods in accordance with the
value in the Time Profile field. Note that if periods already exist, this option is grayed out.
○ If you select With Existing Time Periods, the template contains time periods that already exist in the
system for the time profile, for example, because they have been uploaded at a previous point in time.
4. Click Download.

Results

A file is generated for you to use as a template with the correct, comma separated headers for your data type.
You can now fill out the template with the correct values, save it, and use it to upload data to the system.

 Note

Before uploading time periods using a template that is prefilled with existing time periods, make sure that
the numbering in time period descriptions of weeks and technical weeks are correct. For more information,

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 43
see the SAP Help Portal at http://help.sap.com/ibp under Data Integration Scenarios Data Integration
Jobs Uploading Data from a CSV File Uploading Time Periods .

Next Steps

Upload the time periods.

6.5 Creating Time Periods with an Application Job

Use the Application Jobs app to generate time periods for the selected time profile.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

You have activated the time profile for which you want to create time periods.

Context

You can use this option for time profiles that only contain time profile levels with a period type specified. For
time profiles with custom time profile levels (with no period type defined), please use the Data Integration Jobs
app or upload time periods from SAP Cloud Platform Integration for data services. For more information see
Options for Creating Time Periods [page 42].

Procedure

1. Open the Application Jobs app.


2. Create a new application job.
3. Select the Create Time Periods for Time Profile template.
4. Optional: Set the scheduling options for your job.
5. Provide the Time Profile ID for which you want to create the time periods.

Model Configuration Guide


44 PUBLIC Time Profiles and Time Periods
Please note that you can only use this application job for time profiles with a specific period type defined
for each time profile level.
6. Choose Schedule.

Next Steps

Find your job in the list of application jobs to check the status of your job. When your job has finished, you can
also see the related log messages.

 Tip

Application jobs create generated descriptions for time periods. You can modify time period descriptions
using the Data Integration Jobs app by downloading the template for time profiles prefilled with existing
time periods, editing the descriptions, and uploading the data. For more information, see the SAP Help
Portal at http://help.sap.com/ibp under Data Integration Scenarios Data Integration Jobs Uploading
Data from a CSV File Uploading Time Periods .

Related Information

Options for Creating Time Periods [page 42]


Creating Time Periods from a Template [page 43]

6.6 Change and Deletion of Time Profiles

You may want to change a time profile. However, you’ll find that not all fields on the time profile screen are
available for editing. The changes you can do depend on the following factors:

● If the status of the time profile is active or inactive


● If the time profile is assigned to planning areas or not
● If time periods have already been created for the time profile

 Note

If you have created and saved a time profile, but have not activated it yet (that is, only an inactive instance
of the time profile exists), you can change any parameters of the time profile. You can also delete the time
profile.

If a time profile has already been activated (even if it currently has an inactive instance), certain rules apply
regarding the fields or parameters that you can change or delete.

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 45
Changing a Time Profile

Description
You can change the description of a time profile at any time.

Start Date and End Date


If the time profile is not used in any planning area, you can change its start date and end date at any time.

You have to activate the time profile for the changes to take effect.

 Note

If changing the start and end date of the time profile extends its entire validity period, in other words, if the
new start date is earlier than the old start date or the new end date is later than the old end date, no time
periods will exist for these parts of the time profile. In this case, create the missing time periods by
uploading them or by using the application job for creating time periods.

 Caution

If the time profile is already used in a planning area and transactional data exists, changing the time profile
dates is not recommended as it may cause issues.

 Recommendation

We recommend that you define the start and end date of the time profile in such a way that no changes to
the dates are needed. For example, define the end date many years in the future.

Time Profile Levels


You can’t delete time profile levels.

You can change the base level, the period type, and the default display horizon of time profile levels.

If time periods already exist for the time profile, even if the time profile isn’t assigned to any planning areas, and
you add a new time profile level, you’ll have to upload the time periods again.

If the time profile is already assigned to a planning area, you can’t add new time profile levels.

You have to activate the time profile for the changes to take effect.

Attributes Assigned to Time Profile Levels


You can assign additional attributes to a time profile level at any time. You can assign an attribute to one time
profile level only. If you have assigned an attribute to a planning area, you can't assign the same attribute to a
time profile level.

To set an attribute to required, you must have data uploaded for the attribute for each time period. You can
activate the time profile only if all time periods are uploaded with a value for this attribute (empty values are not
allowed).

If time periods already exist for a time profile, you can add a new required attribute in two steps. First, assign
the attribute to the time profile level without setting it to required. Activate the time profile, then upload the
time periods with this attribute filled out. Make sure that you don’t change any other data for the already
existing time periods. As the last step, in the time profile definition, mark the attribute as required.

Model Configuration Guide


46 PUBLIC Time Profiles and Time Periods
You can remove an assigned attribute from a time profile level only if the given attribute is not used in any
planning levels.

You have to activate the time profile for the changes to take effect.

Deleting a Time Profile

You can delete a time profile only if it is not assigned to any planning areas. You delete an active time profile in
two steps. First, when you delete the active time profile, the system creates a new instance of the time profile,
which has the pending deletion status. When you activate the time profile, the system carries out the deletion:
both instances (active and pending deletion) are deleted.

If you delete a time profile, the time periods that belong to the given time profile are deleted as well.

6.7 Configuring Aggregation and Disaggregation of Data


Across Different Time Profile Levels

Several applications of SAP Integrated Business Planning, which work with different time profile levels and time
horizons, may use the same planning area. Therefore, the values of the common key figures must be
aggregated and disaggregated across different time levels.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Your time profile includes a time profile level with technical week period type. This time profile level is the base
level of the time profile levels with week and month period type.

Context

The aggregation and disaggregation of data across different time levels can be realized by a specific modeling
concept, which is built on the modeling of time profile levels with multiple parents and that of intermediate
levels without parents. If you apply this “week-to-months split” modeling concept after weeks and months have
been aggregated, you can aggregate and disaggregate key figure values across different time levels.

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 47
 Note

You can also apply this modeling concept for aggregation and disaggregation between custom overlapping
periods. Use the custom (empty value) period type to define such a time profile. Make sure to model the
relationships between the time profile levels using the Base Level field.

Procedure

1. Define the period weight factor attribute.

In the Attributes app, define one or more attributes that represent the period weight factor. Typically, the
number of workdays or calendar days is used as the period weight.

Specify INTEGER as the data type of the attribute.


2. Assign the period weight factor attribute you created to the technical week level of the selected time
profile.

You can assign an attribute to the time profile level of the selected time profile in the Time Profiles app.
3. Activate your time profile.

You can activate your time profile in the Time Profiles app.
4. Upload time periods with period weight factors into the time profile.

Use the Data Integration app to get a CSV file template for the time profile. Fill out the template with the
data of the time periods, including the period weight factors, then upload the file to create the time periods.

 Note

If you apply the week-to-months split modeling concept, you have to use either the Data Integration
app or the SAP Cloud Platform Integration for data services to create the time periods. If you create the
time periods by scheduling an application job, they will lack the period weight factors. This can result in
inaccurate aggregation and disaggregation between different time profile levels.

5. Assign the period weight factor attribute to the relevant planning levels.

If you want to read and write key figure values in both (calendar) weeks and months, select the technical
week time profile level as the root in the base planning levels used in the given key figures. Also assign the
period weight factor to the base planning level of the key figure. You do this on the Planning Levels tab in
the Planning Areas app.
6. Assign the period weight factor attribute to the relevant key figures.

You must specify the period weight factor for each key figure whose values you would like to access in both
weeks and months. To do this, go to the Key Figures tab in the Planning Areas app, and select the attribute
you created for the period weight factor.

 Note

You can assign a period weight factor to a key figure only if the disaggregation mode of the key figure is
Equal with or without proportional disaggregation defined.

If you store key figures at technical week level, but you want to run forecast at calendar week level, then you
must have at least one stored key figure at calendar week level.

Model Configuration Guide


48 PUBLIC Time Profiles and Time Periods
7. Activate the planning area for your changes to take effect.

Model Configuration Guide


Time Profiles and Time Periods PUBLIC 49
7 Planning Areas

A planning area is a model entity that defines the structure and forms the backbone of the planning process. A
planning area consists of its assigned time profile, attributes of master data types, planning levels, key figures,
and versions. You could compare this to SAP APO or SAP ERP, where tables, table values, and configuration are
defined to support the planning process.

Planning areas can contain multiple planning data sets, that is, a base version data set and additional version
data sets. The versions are for alternative plans for all or part of what is in the base version and need to be
configured and activated. Versions can share master data with the base version or can be based on
independent sets of version­specific master data. Scenarios defined by users also exist, which lie on top of the
versions (including the base version).

A company can have multiple planning areas to enable the processes of SAP Integrated Business Planning in
different business units.

 Note

As you can use the SAP Integrated Business Planning, add-in for Microsoft Excel for only one planning area
at a time, there are limitations to this use case.

Separate planning areas are also used for configuration work to separate on-going configuration activities from
end-user testing, for example, or to separate the work from different project phases. See Best Practices for
Transporting Planning Models [page 329].

A planning area consists of the following settings and model entities:

● Name, for example, ABC


● Description, for example,: ABC’s planning area
● Time Profile: time profile ID (160)
● Storage Time Profile Level (for example, weekly or monthly)
● Planning horizon
● List of selected attributes, and the master data types they originate from, for example:

Attribute Master Data Type

CUSTTYPE CUSTOMER

LOCTYPE LOCATION

PRDID PRODUCT

PRDDESC PRODUCT

MKTSGMNT CUSTOMERPRODUCT

CMPNTID COMPONENT

● Planning levels

Model Configuration Guide


50 PUBLIC Planning Areas
● Key figures
● Versions (optional)
● Assigned planning operators (optional)
● Additional parameters, such as the enablement of the planning area for supply planning or for change
history

7.1 Creating a Planning Area

Use the Planning Areas app to create planning areas.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .
Make sure you have already carried out the following tasks:

● You have created a time profile.


● You have created attributes and assigned them to master data types.

Context

You create a planning area to group and structure your model entities, and to configure which processes of SAP
Integrated Business Planning are enabled.

Procedure

1. In the Planning Areas app, choose New.


2. On the Planning Area screen, under General, enter an ID and a description for the planning area.

The planning area ID can:


○ be up to 10 characters long
○ contain numbers and letters
○ only start with a letter
3. Under Planning Area Settings, specify settings for the planning area.

The following settings are available for the planning area:

Model Configuration Guide


Planning Areas PUBLIC 51
Planning Area Setting Description

Enable Supply Planning Enables the use of advanced supply planning functions,
such as heuristics and optimizers.

Enable External Time Series Enables the configuration for the usage of external key fig­
ures.

Integration Profile This option is available for planning areas that are enabled
for external time series. Enables you to select an integra­
tion profile.

Enable Change History Enables change history for the planning area.

 Caution
If you select the Enable Change History checkbox, and
later decide to deselect it, the previously recorded
change history of the planning area will be deleted
upon the next activation of the planning area.

Enable Change-History-Based Key Figure Calculations Enables operations on historical key figure values that
were captured using the change history, or the shared
data tracking feature in business network collaboration.

4. Under Time Settings, select a time profile for the planning area.

The settings for Planning Horizons define the possible period ranges that you can use for your planning
view in the SAP Integrated Business Planning, add-in for Microsoft Excel (SAP IBP, add-in for Microsoft
Excel). The values for the Periods in the Past and the Periods in the Future fields determine the range of
values that you can select for the From and To fields on the Time Settings tab of the Create New Planning
View screen.

The values for the Periods in the Past and Periods in the Future fields are filled automatically based on the
selected time profile. You can change the values, but you should always make sure that the values do no
exceed the start and end dates of the time profile and that you define a broader horizon than the default
display horizon for the time profile level. The values in the Periods in the Past and Periods in the Future
fields are relative to the current period. For example, if the current period is May 2020, and you set 12
periods in the past and 6 periods in the future, the user can choose to view data from the periods between
May 2019 and November 2020 in the Excel add-in. The user will not be able to view data from periods
before or after this horizon, even though this data might exist in the system.
5. Under Time Settings, change the value of the Current Period Offset.

The current period offset allows you to shift your planning period. For example, -1 means the current
period starts from the previous period of the lowest time profile level. This means, if, for example, the
lowest time profile is month, the planning period starts from the previous month.
6. Save the planning area.

Model Configuration Guide


52 PUBLIC Planning Areas
Next Steps

Assign attributes to the planning area.

Assign planning operators to the planning area.

Related Information

Creating Attributes [page 13]


Assigning Attributes to a Planning Area [page 60]
Setting up Change-History-Based Calculations [page 406]
Creating Planning Levels [page 74]
Creating Key Figures [page 99]
Creating Versions [page 188]
Creating a Planning Operator [page 193]
Configuring Original Snapshots [page 238]
Separation of Data with Integration Profiles

7.2 Sample Planning Areas

The SAP Integrated Business Planning web client provides display access to sample SAP planning areas, which
are shipped with SAP Integrated Business Planning. You can use sample planning areas as a basis for creating
your own planning areas. You can copy one of the planning areas and extend it as necessary to meet your
particular business needs. You can add your own master data types, key figures, calculations, and attributes.
The following table lists the planning areas that are available:

Sample Planning Area Applications Represented

SAP3 Inventory

SAP4 Supply (time-series-based supply planning algorithms)

SAP4C Business network collaboration

SAP4S Time-series-based shelf life planning heuristic only

SAP5 SAP Supply Chain Control Tower

SAP6 Demand

Model Configuration Guide


Planning Areas PUBLIC 53
Sample Planning Area Applications Represented

SAP7 Order-based planning

 Note
To use the SAP7 sample planning area, you need to make assignments
in the Settings for Order-Based Planning app. In this app, you map at­
tributes and select key figures, for example. For more information, see
Settings for Order-Based Planning and Setting Up Order-Based Plan­
ning.

 Note
If you need a planning area for order-based planning and time-series-
based supply planning, we recommend that you use a combination of
the SAP7 and SAP4 sample planning areas, or SAPIBP1 as described in
SAP Best Practices for SAP Integrated Business Planning. For more in­
formation, see http://rapid.sap.com/bp/rds_ibp .

SAP8 Demand-driven replenishment

Model Configuration Guide


54 PUBLIC Planning Areas
Sample Planning Area Applications Represented

SAPIBP1 The unified planning area is a comprehensive sample planning area that
supports an integrated planning process covering all of the following:

● Demand planning
● Demand sensing
● Inventory optimization
● Supply planning (time-series-based supply planning algorithms)
● Sales and operations planning
● SAP Supply Chain Control Tower

You can use the unified planning area SAPIBP1 to jump-start the imple­
mentation in case your business process requires integration across dif­
ferent IBP applications. Just like any other sample planning area, this
planning area delivers a pre-built integration scenario which you can cus­
tomize to fit your unique requirements. You can also use the unified plan­
ning area for the separate IBP applications by copying only the part of the
planning area that you need for that specific application. To copy parts of
the unified planning area, use the partial copy option. For more information
about partial copy see the Create New with Dependencies [page 297] and
the Replace Existing Including Dependencies [page 301] sections.

 Note
For more information about an integrated planning process using the
unified planning area, see the application help on the SAP Help Portal

at http://help.sap.com/ibp under SAP Integrated Business Planning

Example: Integrated Planning Process with Unified Planning Area .

For the integrated planning process based on the unified planning area,
the SAP Best Practices for SAP Integrated Business Planning pro­
vides sample data, planning view templates, predefined dashboards,
configuration guides, test scripts and more. Customer test tenants and
IBP Starter Edition instances include an activated copy of the unified
planning area with the sample content.

You can also download the content at http://rapid.sap.com/bp/rds_ibp


.

The following table shows the scope of the sample planning areas:

Model SAP3 SAP4 SAP5 SAP6 SAP7 SAPIBP1


contents SAP4C SAP4S SAP8

Complete No No No No No Yes No No Yes


demand
model ex­
ample

Model Configuration Guide


Planning Areas PUBLIC 55
Model SAP3 SAP4 SAP5 SAP6 SAP7 SAPIBP1
contents SAP4C SAP4S SAP8

Statistical No No No No No Yes No No Yes


forecast­
ing

Supply No Yes Yes No No No No No Yes


planning
optimiza­
tion (time-
series-
based
supply
planning
optimizer)

Multi-level Yes Yes No No Yes No No No Yes


supply
planning
(time-ser­
ies-based
supply
planning
heuristic
and time-
series-
based
supply
propaga­
tion heu­
ristic)

Multi-level No No No Yes No No No No No
supply
planning
(time-ser­
ies-based
shelf life
planning
heuristic)

Financial No No (only No (only No No No No No Limited


and sales optimizer optimizer
planning costs) costs)

Model Configuration Guide


56 PUBLIC Planning Areas
Model SAP3 SAP4 SAP5 SAP6 SAP7 SAPIBP1
contents SAP4C SAP4S SAP8

Inventory Yes (only No No No No No No Yes (Buf­ Yes


planning optimize fer levels)
and opti­ inventory
mization targets)

Order- No No No No No No Yes No No
Based
Planning

SAP Sup­ No No No No Yes No No No Yes


ply Chain
Control
Tower

Business No No Yes No No No No No Yes


network
collabora­
tion

To access these planning areas, launch the Sample Model Entities app.

As well as these planning areas, small sample planning areas with examples of advanced configuration to meet
different business requirements are provided in SAP Notes, together with information on how to request L-code
if configuration can't meet your requirements. The SAP Notes are listed in the following table:

SAP Note Title

2347105 Master Note for the Configuration of Sample Models

2240170 Rolling Sum of the Last Three Periods

2240173 Calculation of Average and Weighted Value of Price Key Figures (Including Unit of
Measure and Currency Conversion)

2240178 View Monthly Key Figures at Weekly Level Based on Number of Weeks in the Month

2286684 Last Period Aggregation for Key Figures

2288329 Time as a Dimension (Year-To-Date and Quarter-To-Date Aggregations)

2289248 Time-Independent Unit of Measure Conversion

2289617 Aggregation of Last n Periods in Current and Future Periods

2289651 Last Period Aggregation with Unit of Measure Conversion

2298382 Requesting L-Code from SAP

Model Configuration Guide


Planning Areas PUBLIC 57
SAP Note Title

2319165 Triggering an Alert on First Occurrence

2586250 Bill of Material for Demand Planning

SAP provides multilanguage support for the sample planning areas. Translations in all languages supported by
SAP IBP are available for following sample content:

● Key figure names and descriptions


● Attribute names and descriptions
● Planning area attribute descriptions

If you enable multilanguage support in the Multilanguage Support app, you can handle these properties in the
logon language of your application. For more information, see Setting Up Multilanguage Support for Modeling
Objects [page 311].

7.3 Creating a Planning Area Based on a Sample Planning


Area

A planning area describes the structure of a plan in terms of data and calculations. It defines how data is
stored, calculated, and aggregated in the system. You can create your own planning area by copying a sample
planning area that suits your business requirements.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Before configuring your planning area, SAP recommends that you create a blueprint based on the customer
requirements to map the business processes to a planning area. This blueprint describes the business
processes as they are and also as they are to be. A blueprint outlines the key business functions and the
required scope and identifies the master data types, attributes, data integration, key figures, and calculations
that need to be modeled in the system.

Model Configuration Guide


58 PUBLIC Planning Areas
Procedure

1. Select a sample planning area based on your business requirements and create a copy of it using the
Create New with Dependencies option.

Use the Sample Model Entities app to view the available sample content.

If you want to use SAP Integrated Business Planning for demand sensing, for example, copy the SAP6
planning area. If you want to use more than one process, for example, demand and inventory, you could
create a partial copy of the SAPIBP1 planning area.
2. Adjust your planning area as needed.

 Caution

To run the inventory operators and time-series-based supply planning algorithms, you have to use
specific technical IDs defined by SAP for the relevant master data types, attributes, and key figures. For
demand sensing, the same applies to key figures for which a business meaning has not been specified
and certain master data attributes. For more information, see the documentation of the relevant
planning operator in this guide and the respective chapter of the application help.

 Recommendation

SAP recommends that you try out any changes to your planning area in a test environment (including
activating the planning area and testing the results) before you transport or export and import changes
to the production system.

a. Create new attributes or change the existing ones.


b. Create new master data types or change the existing ones.
c. Adjust the time profile.

 Caution

If you replace the time profile in a planning area, you need to adjust the planning area configuration
extensively to ensure its consistency.

d. Adjust the planning area settings as required.


e. Create new planning levels or change the existing ones.
f. Create new key figures or change the existing ones.
g. Add planning operators, if needed.
h. Create snapshots and versions, if needed.
3. Activate the planning area.

Check the integrity of the planning area and activate it. This generates the underlying database artifacts.
You can activate the planning area with its dependent time profile and master data types, or you can
activate the time profile and the master data types first and then activate the planning area.

 Recommendation

 Note

If you want to change your planning area later, SAP recommends that you create a new entity (for
example, an attribute or a time profile), and use it in your planning area, instead of changing the
existing entity that has already been in use in an active planning area.

Model Configuration Guide


Planning Areas PUBLIC 59
4. Load data into the planning area.

Use the Data Integration app to import time profile data, master data, and key figure data into the planning
area.

Related Information

Copying an SAP Sample Planning Area with Create New with Dependencies [page 300]
Creating Attributes [page 13]
Creating Simple Master Data Types [page 23]
Creating Compound Master Data Types [page 26]
Creating External Master Data Types [page 28]
Creating Reference Master Data Types [page 29]
Creating Virtual Master Data Types [page 30]
Replacing the Time Profile in a Planning Area [page 65]
Creating a Planning Area [page 51]
Creating Planning Levels [page 74]
Creating Key Figures [page 99]
Creating Versions [page 188]
Configuring Original Snapshots [page 238]
Activating Planning Models [page 242]
Data Integration Scenarios
Uploading Time Periods
Uploading Master Data
Uploading Key Figure Values

7.4 Assigning Attributes to a Planning Area

Use the Planning Areas app to assign attributes to a planning area.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

You have created a planning area and attributes.

Model Configuration Guide


60 PUBLIC Planning Areas
Procedure

1. In the Planning Areas app, find the planning area you want to assign attributes to and open it.
2. On the Attributes tab, choose Add.
3. Select the attributes you want to add to the planning area and click the Add button on the dialog screen.
When adding a single new attribute to your planning area, you can also assign the attribute to planning
levels in a single step using the Add and Assign to Planning Levels function. This option is not available
when adding multiple attributes to the planning area.

In SAP Integrated Business Planning, add-in for Microsoft Excel, you can use the attributes you assigned to
a planning area when you create a planning view.

Keep in mind the following:


○ If you select an attribute in a master data type, you also select and assign the master data type to the
planning area. If you select a master data type, the system automatically selects all attributes that are
assigned to that master data type.
○ If an attribute is assigned to multiple master data types, you can assign the attribute to the planning
area only once from one of the master data types.
○ If an attribute is assigned to a time profile level of a time profile that is assigned to the planning area,
the attribute cannot be assigned to the planning area.
○ If you assign a compound master data type to a planning area, make sure you also assign its
component master data types. Similarly, if you assign a reference master data type or a virtual master
data type to a planning area, assign their referenced master data types as well.
○ Make sure you do not select the key attributes of a compound master data type. Select the key
attributes from its component master data types instead.
○ If the ID attribute of a master data type is linked to its description attribute, you only need to include
the ID in the planning area. The description is then included through the link. For more information
about linking ID and description attributes, see Description Attributes [page 22].
○ You cannot assign a decimal attribute to a planning area but you can create an attribute as key figure
based on the attribute, which you can assign to the planning area.

 Remember

Make sure you only add attributes to the planning area that you want to use in planning levels.

4. Make settings for the attributes you added to the planning area.

The following settings are available:

Settings for Planning Area Attributes Description

Planning Area Attribute Description The system fills this field automatically with the descrip­
tion of the attribute. The user can change the description
in the planning area. The new value is only available for the
attribute in the planning area in which it was changed. This
description is visible in the IBP Excel add-in.

Model Configuration Guide


Planning Areas PUBLIC 61
Settings for Planning Area Attributes Description

Business Meaning Provides a semantic connection between the attribute ID


that you specify and the code, letting the system know for
what purpose you want to use a certain attribute.

Attribute Category See Assigning an Attribute Category to a Planning Area


Attribute [page 62].

Planning Level Independent Attributes that are assigned to the planning area but are
not relevant to planning levels are marked as planning
level independent.

Related Information

Creating Attributes [page 13]


Creating a Planning Area [page 51]
Assigning an Attribute Category to a Planning Area Attribute [page 62]
Creating Planning Levels [page 74]
Creating Key Figures [page 99]
Creating Versions [page 188]
Creating a Planning Operator [page 193]
Configuring Original Snapshots [page 238]

7.5 Assigning an Attribute Category to a Planning Area


Attribute

In the Planning Areas app, on the Attributes tab of the planning area, you can assign an attribute category to a
planning area attribute.

The attribute category specifies whether master data has to exist for the attribute when new planning objects
are added in the SAP IBP, Add in for Microsoft Excel or during data integration. By default, all attributes have
the category NULL (optional).

Model Configuration Guide


62 PUBLIC Planning Areas
Attribute Category Explanation Relevant for Data Integra­ Relevant for New Planning
tion Objects

Mandatory The attribute value must be Yes Yes


found, although the value it­
Key figure records for which If no attribute value is found
self might be NULL. That is,
no attribute value is found (that is, the master data re­
master data records must ex­
(that is, where the master cords are missing), the plan­
ist.
data records are missing) are ning object is omitted from
rejected. the new set of planning ob­
jects.

Optional (default value) An attribute value does not Yes Yes


have to be found. That is,
No attribute value is found Irrespective of whether an at­
master data records don't
(master data records are tribute value is found (mas­
necessarily have to exist.
missing). The planning level ter data records are missing
attribute value is set to or available), that planning
NULL, and the key figure re­ object stays in the set of new
cord(s) are processed for planning objects, and attrib­
that planning object. ute value is set to found
value or NULL respectively.
Attribute value is found
(master data records are
available) The planning level
attribute value is set to
fetched value, and the
key figure record(s) are proc­
essed for that planning ob­
ject.

Calculated The attribute value must be No No


found, although the value it­
self might be NULL. That is,
master data records must ex­
ist.

As this indicator is not rele­


vant for either data integra­
tion or for new planning ob­
jects, select value NULL in
both cases. Values for such
attributes will be calculated
using an operator of some
description and must not be
overwritten by data integra­
tion.

 Example

The key figures KF1 and KF2 are stored at the MTHLOCPRD (Month-Location-Product) planning level. Month,
PRDID, and LOCID are root attributes of the MTHLOCPRD (Month-Location-Product) planning level. ATTR1 is

Model Configuration Guide


Planning Areas PUBLIC 63
a non-root attribute of the MTHLOCPRD (Month-Location-Product) planning level. The planning area
contains data for the key figures KF1 and KF2.

The LOCATIONPRODUCT (Location Product) master data type contains the following data:

LOCID PRDID ATTR1

L1 P1

L2 P2

The planning area contains the following attributes:

Attribute Attribute Category Source Master Data Type

PRDID Optional LOCATIONPRODUCT

LOCID Optional LOCATIONPRODUCT

ATTR1 Optional LOCATIONPRODUCT

The MTHPRDLOC (Month-Product-Location) planning level is defined as follows:

Attribute Root Source Master Data Type

Month Yes -

PRDID Yes LOCATIONPRODUCT

LOCID Yes LOCATIONPRODUCT

ATTR1 No LOCATIONPRODUCT

The planning area contains data for key figures KF1 and KF2 for location-product combinations (L1-P1),
(L2-P1), and (L2-P2):

LOCID PRDID Month KF1 KF2

L1 P1 2017 AUG 100 200

L1 P1 2017 SEP 110 210

L2 P1 2017 AUG 300 400

L2 P1 2017 SEP 310 410

L2 P2 2017 AUG 500 600

L2 P2 2017 SEP 510 610

Model Configuration Guide


64 PUBLIC Planning Areas
As long as locations L1 and L2 and products P1 and P2 exist individually in the LOCATIONPRODUCT
(Location Product) source master data type, any combination of them is valid for the MTHLOCPRD (Month-
Location-Product) planning level and allowed to exist in the planning area.

Then, the planning area configuration is changed such that ATTR1 is set as a mandatory attribute in the
planning area. Now only those location-product combinations are allowed to exist for the MTHLOCPRD
(Month-Location-Product) planning level that are also present as location-product combinations in the
LOCATIONPRODUCT (Location Product) master data type. As a result of this change, location-product
combination (L2-P1), and the associated key figure data are no longer valid in the planning area:

● Any attempt to load key figure data for location-product combinations of the MTHLOCPRD (Month-
Location-Product) planning level that are not present as location-product combinations in the
LOCATIONPRODUCT (Location Product) master data type results in the rejection of such key figure data
records.
● Deleting any location-product combinations from the LOCATIONPRODUCT (Location Product) master
data type also deletes the corresponding location-product combinations from the MTHLOCPRD (Month-
Location-Product) planning level, and the associated key figure data from the planning area.
● To delete the location-product combinations that are not present as location-product combinations in
the LOCATIONPRODUCT (Location Product) master data type from the MTHLOCPRD (Month-Location-
Product) planning level, and the associated key figure data from the planning area, run the Purge Non-
Conforming Planning Area Data application job.

7.6 Replacing the Time Profile in a Planning Area

Choose a different time profile for a planning area, and perform additional required configuration steps and
data integration tasks.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

To adhere to business requirements, you want to change the time granularity at which planning data is stored
and aggregated in your planning model, so you assign a different time profile to the planning area.

You have to perform additional configuration steps and data integration tasks - including the deletion and
reupload of key figure values if key figure values already exist in the planning area - to keep the planning model
consistent and be able to activate the planning area after you have replaced the time profile.

Model Configuration Guide


Planning Areas PUBLIC 65
 Caution

Replacing the time profile in a planning area that has already been activated is a critical configuration task
that cannot be standardized, and may result in invalid planning data.

SAP recommends that you do a thorough test – including all the additional configuration and data
integration tasks described below – in a test environment before you make this change in the productive
environment.

SAP recommends that you consider creating a new planning area instead of replacing the time profile in a
planning area that is already in use, and contains key figure values.

 Note

You don’t need to replace the time profile if the only change you want to make is assigning an attribute to
one of its levels. You can assign an attribute to a level of an active time profile that is used in a planning area
in the Time Profiles app.

Procedure

1. Replace the time profile in the planning area.

You can do this in the Planning Areas app.


2. Specify the planning horizons for each time profile level.

If the Planning Horizons table is filled out, overwrite the values in the From and To columns.
3. Check, and if needed, update the planning levels.

A planning level is a combination of attributes. As for time, the system uses the PERIODIDn attribute, but
displays the name of the time profile level that belongs to a specific PERIODIDn attribute. For more
information, see PERIODID and PERIODID(n) Attributes in Time Profile Levels [page 40].

The assigned PERIODIDn attribute to a time profile level may be different for each time profile.

For example, both the old and new time profiles have month as a time profile level, but in the old time
profile, month was assigned PERIODID2, and in the new time profile, PERIODID1. When using the old time
profile, PERIODID2 corresponded to month, but in the new time profile, it represents the technical week.

Check each planning level if they have to be updated because a time profile level is not available in the new
time profile, or because the assignment of the PERIODIDn attribute is different.
4. If an attribute is assigned to one or more time profile levels of the old time profile, make sure that you carry
over the attribute if it’s used in the new profile as well, or remove its usage, if it’s not needed anymore
before you activate the planning area.

 Caution

Replacing the time profile in an active planning area marks the assignment of an attribute to a time
profile level for deletion.

If the same attribute is assigned to a time profile level in the new time profile, revoke the pending deletion
of the assignment of the attribute for each planning level that uses the attribute.

Model Configuration Guide


66 PUBLIC Planning Areas
If the attribute is not assigned to any time profile levels of the new time profile, make sure that the attribute
is not used anywhere in the planning area. With the next activation of the planning area, the attribute is
removed from the affected planning levels. If necessary, on the Key Figures screen, update the definitions
of key figures that use the attribute from old time profile as the period weight factor, or in the
disaggregation expression so that this attribute isn't referenced anymore.
5. For key figures using planning levels that have been changed: Update the base planning level and the
affected calculations to reflect these changes.
6. Update attribute transformations, if any is used in the planning area, so that the time offset remains
correct, and no attributes are used that were assigned to a time profile level in the old time profile only.
7. If you use L-code in key figure calculations, create a customer incident to request the update of the L
script.
8. Create periods for the new time profile, if they don't exist yet.
9. If key figure values already exist in the planning area, delete them.

Key figure values are stored per time period (per the ID of a unique time period, such as April 2018). In a
different time profile, the same period ID may point to a different period, which would make the data
inconsistent.
10. Activate the planning area.
11. Upload the key figure values.
12. If the planning area includes an attribute as a key figure, upload the master data records for the master
data type that contains the attribute used as key figure.

Related Information

Creating a Planning Area [page 51]


Change and Deletion of Planning Levels [page 79]
Attribute Transformations [page 385]
PERIODID and PERIODID(n) Attributes in Time Profile Levels [page 40]
Options for Creating Time Periods [page 42]
Activating Planning Areas in the Planning Areas App [page 259]
Data Lifecycle Management
Data Integration Jobs
SAP Note 2298382

7.7 Using Multiple Planning Areas

Planning areas are used to model the complete planning process in a company. Considering the different
business scenarios and processes, a company might decide to have several planning areas to care for the
various needs and requirements they have. Multiple planning areas can be used for the different business
processes, with the possibility of copying data among them to ensure consistent planning throughout the
whole company.

Model Configuration Guide


Planning Areas PUBLIC 67
Let's see a couple of uses cases where the usage of multiple planning areas might prove to be beneficial.

Regional Demand Planning Processes

In case you have different regional requirements that would be difficult to model and maintain in a single
planning area, you can model the regional demand planning processes in different planning areas. In addition to
that, create a global planning area with demand copied from all regional planning areas. This way, you can use
the global planning area to carry out consensus and supply planning for the entire company.

You might want to create different planning areas for the different regional demand planning process in the
following cases:

● Different regions have different planning requirements, planning levels, and calculations.
● Some regions require a large number of key figures, and have several hundreds of users; while other
regions have a small number of key figures, low data volume, and very few users.

Piloting a New Business Process

In this case, you have an existing productive planning area. However, you would like to extend your business
processes to a new area, for example, demand sensing, without disrupting your productive processes. To do so,
you create a separate planning area for your demand sensing processes, and copy the planning data back to
the original planning area regularly. The volume of data required for short term planning in demand sensing is
very large. By managing demand sensing processes in a separate planning area, the performance of the
already existing productive planning area will not be affected.

Strategic Long- and Mid-Term Planning

Strategic long-term planning is usually carried out at quarterly or yearly at aggregated levels of the planning
hierarchy. The consumers of these plans and planning areas are typically senior management teams who are
responsible for long-term strategic goals. These strategic long-term plans are then broken down to tactical
mid-term plans.

These planning processes and plans can be very different in terms of complexity, user management,
consumers and legal requirements. These differences can be easily handled by using separate planning areas
for the different planning processes.

If you want to create management reports and what-if analyses, you can merge the most critical key figures
from the different planning areas into a consolidated, global planning area and run the required reports.

Complexity and Performance

To manage the growing complexity of a unified planning area that has several hundreds of key figures and deals
with large volumes of data, you might want to split planning processes into separate planning areas. Also, your

Model Configuration Guide


68 PUBLIC Planning Areas
planning processes might be very different; some of them might require only a small set of data and key
figures, whereas, others might deal with large volumes of data.

To manage complexity and improve performance, you can split such a complex planning area into separate
planning areas.

Also, you can evaluate new features in a separate planning area without disrupting the planning areas that are
used in a productive environment.

Order-Based Planning

You might want to use one planning area for order-based planning processes, and another one for long- and
mid-term time-series-based planning processes.

 Note

Multiple planning areas can share the same master data types; however, it might increase integration time
as data is uploaded to several planning areas.

To copy data between planning areas, use the advanced copy operator. For more information, see Copy
Operator (Advanced) [page 198].

7.8 Downloading a Planning Area

You can download the details of a planning area into comma-separated values (CSV) files.

To download the content of a planning area and its entities, go to the Planning Areas app, select the planning
area and choose Download. The content of the planning area and its entities is downloaded into 10 comma-
separated values (CSV) files.

 Note

Make sure you check your browser settings, especially those related to file download and enable the
download of multiple files.

A separate file is downloaded with the details of each of the following entities and settings of the planning area:

● Key figures
● Master data types
● Versions
● Planning operators
● Planning horizons
● Attributes
● General info
● Attributes as key figures
● Planning levels

Model Configuration Guide


Planning Areas PUBLIC 69
● Time profile

7.9 Comparing Planning Areas

You can compare the configuration details of any two planning areas. You can specify which state of each
planning area you want to include in your comparison, and you can also compare two different states of the
same planning area.

In SAP Integrated Business Planning, historical states of sample and custom planning areas are available for
comparison. For sample planning areas, the state of each release is automatically saved, while for custom
planning areas, the state of the planning area is saved after each upgrade, before each copy and transport, and
after each activation. For custom planning areas, deltas are also automatically saved each time a change has
been made to the object.

Comparing planning areas can support your processes in several ways. Comparing two different states of a
sample planning area allows you to keep track of enhancements in the sample content. Comparing your
planning area with the latest state of the sample planning area that you have copied to create yours helps you
to decide which of the new enhancements you would like to implement on your own planning area. Comparing
two different states of your planning area allows you to verify that the right changes have been made to the
configuration.

 Note

Each of the planning areas that you compare may only contain one kind of master data prefix. If a planning
area contains master data types with different prefixes, you can’t include it in your comparison.

You have the following options for comparing planning areas:

Comparing Planning Areas in CSV Format

You can use this option to compare any combination of two sample and custom planning areas or two different
states of the same planning area, downloading the differences in CSV files.

Before running the comparison, you need to specify the following:

● Which planning areas and which state of each planning area should be included in the comparison.

 Note

You may want to compare two different states of the same planning area. In that case enter the same ID
in both planning area fields.

● Whether the output should list differences between items with the same ID or items that are only available
in either planning area but not in the other.

The function is available in the Planning Areas app as well as the Sample Model Entities app.

Model Configuration Guide


70 PUBLIC Planning Areas
Compare Planning Areas App

For a detailed comparison of two planning areas or two different states of the same planning area, you can use
the Compare Planning Areas app. You can access the app from the launchpad or navigate to it from the
Planning Areas app or the Sample Model Entities app.

To perform a comparison, proceed as follows:

1. In the Compare Planning Areas dialog, specify the two planning areas that you want to compare, or enter
the same ID in both planning area fields if you want to compare two different states of the same planning
area.
2. Specify which state of each planning area (or which two states of the same planning area) should be
included in the comparison.
Besides the latest state, you may also choose to include any of the historical states saved for the planning
area. You can select one of the states (versions saved after major operations such as a copy, activation, or
an upgrade) or deltas (versions saved after a change has been made to the planning area) for each of the
planning areas. Once you have found the item that your are interested in, click the table row containing it.
3. Click Compare to run the comparison.
4. On the Compare Planning Areas screen, select one of the options for viewing the comparison results. You
have the following options:
○ View the differences between objects that share the same ID and exist in both planning areas.
○ View the differences between objects with the same ID and also view objects that only exist in one or
the other planning area. You can choose to view extra objects that only exist in Planning Area A or
those that only exist in Planning Area B.
○ View differences between objects with the same ID and view all the extra objects (all the objects that
only exist in one of the planning areas).
○ List all the objects in the two planning areas and view them side by side.
5. After filtering the comparison results, you have the following options:
○ You can export the filtered data to CSV files.
○ You can drill down to a detailed comparison of objects (key figures, planning levels or versions)
contained in both of the planning areas.
In the case of objects included in only one of the planning areas compared, you can view the details of the
object by clicking on the object ID hyperlink where one is available.

7.10 Deleting a Planning Area

You can delete a planning area with or without its dependent objects in the Planning Areas app.

If you want to delete a planning area, you have the following options:

● To delete the planning area only, select it in the planning area worklist and choose Delete without
Dependencies in the dropdown menu of the Delete button.
● To delete the planning area with its dependencies, select the planning area and click Delete or select Delete
with Dependencies from the dropdown. This deletes the planning area together with all its dependent
master data types and time profile, unless the objects are used in other objects.
If any of the dependencies are used in other objects, you have to delete those assignments in the relevant
app (Master Data Types or Time Profiles) and then you can delete the planning area with dependencies.

Model Configuration Guide


Planning Areas PUBLIC 71
Statuses

If all objects (the planning area and its dependencies) are inactive, you can delete them in one step, while active
objects are first set to Pending Deletion and you need to activate them in the relevant app to complete the
deletion. In the case of inactive objects with an active instance existing in the system, the inactive instances are
deleted and the active instances are set to Pending Deletion.

Once activation is complete, the planning area (and the dependencies) that you have deleted no longer appear
in the relevant lists.

Model Configuration Guide


72 PUBLIC Planning Areas
8 Planning Levels

A planning level is a set of attributes that identify and label key figure values, and forms part of the definition of
a planning area. The attributes you have assigned to the planning area are available to form planning levels, as
well as the time profile levels, and the attributes assigned to the time profile levels.

A planning level enables you to analyze and plan at a specific aggregation level, for example, at the planning
level period-product-customer.

Key figures in SAP Integrated Business Planning are calculated or stored at specific planning levels, and their
values can be queried at these planning levels. Depending on the planning level – that is, the specific set of
attributes that is used in a key figure query – different calculation and/or aggregation steps are performed to
compute the key figure numbers at that level. These calculation/aggregation steps are specified in the
calculation definitions of the key figure.

A planning level can be used as the base planning level of a key figure. The base planning level specifies the
most granular level at which the value of the key figure is defined. If a planning level is used as a base planning
level of a key figure, specific rules regarding the attributes used in the base planning levels and regarding the
assignment of these planning levels to key figures must be fulfilled. For more information, see Planning Areas
[page 274].

We differentiate between “root attributes” and “non-root attributes” of a planning level:

● Root attributes are necessary as keys to identify (find) individual key figure values. They define the
independent dimensions in which the key figure values exist. The root attributes are often also the keys of
master data types but this is not a necessary condition.
● Non-root attributes are also associated with the key figure values but don’t on their own uniquely identify
what the key figure value is for. They can be thought of as labels (sometimes hierarchies) to aggregate key
figure values.

Planning levels are used in the calculation definitions of key figures. The system has a special, built-in planning
level, the REQUEST level, which represents the planning level at which the user queries the key figure data. A
key figure can be queried at any combination of attributes that are available in the REQUEST-level calculation,
and come from the planning levels of the input key figures.

In addition, there are also planning levels used for aggregation, for example to support demand fair share, to
which no key figures are assigned.

 Example

A key figure SALESFORECAST might depend on the following attributes:

Attribute Description Root Attribute (X)

PRDID Product ID X

CUSTID Customer ID X

REGION Sales Region

Model Configuration Guide


Planning Levels PUBLIC 73
Attribute Description Root Attribute (X)

PRDGRP Product Group

PRDFAM Product Family

MARKET Market Segment

PERIODID0 Month X

Let’s assume that the attributes PRDID, CUSTID, and PERIODID0 are the root attributes. Let’s call this set
of attributes the planning level PRDCUST. (You could choose any name for the planning level.)

The implication is that every stored key figure value for SALESFORECAST depends on a value for PRDID,
CUSTID, and PERIOIDID, that is, on a value for a Product ID, a Customer ID and a Month. For example,
the forecast for sales (SALESFORECAST) of product P1 to customer C1 in 2018/12 might be “100”.

The key figure value also depends on the other attributes. For example, you could ask about the
SALESFORECAST for the market segment “M1”. MARKET might, for example, be an attribute of customer or
customer product: You specify the origin of the attributes in the planning area.

When key figure data is loaded, the system determines all attribute values based on the given root
attributes of the planning level. If these values cannot be uniquely determined, the data set contains an
error.

Related Information

Creating a Planning Area [page 51]


Creating Key Figures [page 99]
Key Figure Calculations [page 119]

8.1 Creating Planning Levels

Use the Planning Areas app to create planning levels.

Prerequisites

Make sure you have created a planning area and assigned a time profile and attributes to it.

Model Configuration Guide


74 PUBLIC Planning Levels
Context

A planning level is a set of attributes that enables you to store and analyze planning data at a specific
granularity. You use the planning level you create here for defining key figures and their calculations, and for
querying key figure values.

Procedure

1. In the Planning Areas app, find the planning area you want to create planning levels for and open its details.
2. Choose New on the Planning Levels tab of the Planning Area (details) screen or on the Planning Levels tab
of Focus Mode.

The Select Time Profile Level dialog appears.


3. On the Select Time Profile Level dialog, select the lowest time profile level for the planning level and click
OK.

You can select one of the time profile levels or none. If you select one of the time profile levels, the system
automatically fills the Time Attributes table.

The New Planning Level screen is displayed.


4. On the New Planning Level screen, enter an ID and description for the planning level.

The planning level ID can:


○ be up to 30 characters long
○ contain numbers and letters
○ only start with a letter

ID: PERPRODCUST

Description: Period/Product/Customer

 Note

You can use special characters in the description of the planning level. These special characters might
not be shown in, for example, the names of worksheets in the IBP Excel add-in due to restrictions on
special characters in Microsoft Excel.

5. Select time attributes or change the automatically provided assignments.


6. Optional: Select the lowest time profile level as root for the planning level.

You can only set one time profile level as a root attribute of a planning level.
7. Add attributes and master data types to the planning level.
You can select the attributes and master data types that you have previously assigned to the planning area
on the Attributes tab. Make sure that you use all attributes you assigned to the planning area in one or more
planning levels.

 Note

If the ID attribute of a master data type is linked to the description attribute, you only need to include
the ID in the planning level. The description is then included via the link.

Model Configuration Guide


Planning Levels PUBLIC 75
Add all attributes of the S2PRODUCT and S2CUSTOMER master data types.
8. Select the root attributes, as in the table below.

A planning level can include root attributes that are not keys of a master data type, but you always have to
make sure that the key attribute of the same master data type is not assigned to the planning level in such
a case.

If you want to use multiple planning levels as base planning levels of stored key figures, and these planning
levels have identical root attributes (not taking the time attribute into consideration), ensure to set
identical non-root attributes as well.

Planning Level Description Master Data Root Attribute

PERPRODCUST Period/Product/Customer S2PRODUCT PRDID

S2CUSTOMER CUSTID

9. Optional: Select the Conversion Source or Conversion Target checkbox for the attribute.

Property Description

Conversion Source Indicates that an attribute is used as a source unit for con­
version purposes.

Conversion Target Indicates that an attribute is used as a target unit for con­
version purposes.

10. Optional: Add history attributes and data sharing attributes to the planning level.

Define such attributes to use change-history-based calculations.

 Note

You can only add history and data sharing attributes to the planning level if you have enabled the
planning area for change-history-based key figure calculations.

11. Save your entries.

Results

An inactive planning level is created.

Next Steps

You can use the planning level as a base planning level of a key figure, or in calculation definitions of a key
figure.

Model Configuration Guide


76 PUBLIC Planning Levels
Activate the planning area to activate the planning level you created. You cannot activate a planning level
directly.

Related Information

Creating Key Figures [page 99]


Planning Areas [page 274]
Creating Attributes [page 13]
Description Attributes [page 22]

8.2 Assigning Attributes to Planning Levels

Use the Planning Areas app to assign the attributes in your planning area to planning levels.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Each attribute in your planning area needs to be assigned to one or more planning levels except for those that
are marked as planning level independent.

Steps

1. Open your planning area.


2. On the Attributes tab of the Planning Area (details) screen, select the attribute that you want to assign to
planning levels and choose Assign to Planning Levels.
3. On the Assign Attribute to Planning Levels screen, select all the planning levels that you want to assign your
attribute to. To assign the attribute to all planning levels of the planning area or all planning levels of a
specific group of planning levels at once, select the checkbox in the table header or the one in the relevant
table group header.

Model Configuration Guide


Planning Levels PUBLIC 77
4. Click Assign.

 Note

When you add a single new attribute to your planning area, you can at the same time also assign it to
planning levels using the Add and Assign to Planning Levels function. For more information, see Assigning
Attributes to a Planning Area [page 60].

Fulfilling Attribute Sourcing Requirements

When assigning your attribute to planning levels, you need to ensure that sourcing requirements are fulfilled for
the attribute. On the Assign Attribute to Planning Levels screen, the following information is available to help
you find the relevant planning levels:

● If you select a planning level in the list, values for the Input PLs and Output PLs columns are displayed. The
values are clickable and of the format X/Y, where X and Y have the following meanings:
○ Y in the Input PLs column shows the total number of input planning levels in key figure calculations
where the planning level selected is in the output (that is, all the planning levels that the planning level
selected depends on).
○ Y in the Output PLs column shows the total number of planning levels that depend on the selected
planning level in a similar way.
○ The X values show the number of input/output planning levels where the attribute being added to the
planning level selected is already added.
● If you click on the values or the row containing them, a list of all input and output planning levels (for the
relevant planning level) will be displayed in a new dialog. In the dialogue, the planning levels currently
selected (or already assigned to the attribute) are marked in the checkboxes next to the items. You can
deselect any of the planning levels marked but you can also select any further ones to ensure that attribute
sourcing requirements are fulfilled. When you go back to the previous dialog, the list will be updated
accordingly.
● Whether the input planning levels fulfil the sourcing requirements for the attribute is shown in the Fully
Sourced column next to the Input PLs column ("yes" or empty).

Watch a Video

Model Configuration Guide


78 PUBLIC Planning Levels
8.3 Change and Deletion of Planning Levels

The changes you can make to a planning level depends on if the planning level is used in key figures, and if
values exist for those key figures. For certain changes, and for the deletion of a planning level, you must
perform several configuration steps in a given order.

You create the planning levels to use them in key figure definitions (as the base planning level of a key figure)
and in key figure calculations.

Whether you can change a planning level or not depends on if the planning level is used in key figures, and if
data (key figure values) already exists for the key figures that use the given planning level. The Used in Key
Figures field shows you if the selected planning level is already used in key figure definitions or calculations.

Description

You can change the description of a planning level any time.

 Note

You cannot change the ID of a planning level.

Attributes

You can add an additional non-root attribute to a planning level.

You can remove a non-root attribute from a planning level only if the attribute is not used in any key figure
calculations.

To remove a non-root attribute that is used in key figure calculations, first edit the key figure calculations so
that none of them includes the attribute. Only then can you remove the attribute from the planning level.

 Note

A planning level must have at least one attribute.

Root Attributes

 Caution

Changing the root attribute of a planning model may result in inconsistency between the planning model
and the already existing data.

Model Configuration Guide


Planning Levels PUBLIC 79
SAP Integrated Business Planning is designed to preserve the consistency of the planning model and the
planning data. If such a change is made that would break the consistency, IBP keeps the planning data
intact, and rejects the change of the model by making the next activation of the planning model fail.

You can set an additional attribute to root if the planning level is not used in any key figures, or if the key
figures that use the given planning level as their base planning level do not have key figure values.

If the planning level is not used, or if the key figures that use a given planning level as their base planning level
do not have key figure values, you can set a root attribute to non-root.

If key figure values exist (by upload or by manual edit of data in the planning view), you must follow this
procedure if you want to set a root attribute to non-root:

1. Delete the values of the stored key figures that use the planning level.
To do this, in the IBP Excel add-in, delete all values of all stored key figures that use the planning level. The
cells of key figure values must be empty. Then delete the planning objects by choosing Delete Planning
Objects.
2. In the Planning Areas app, set the root attribute to non-root.

 Note

A planning level must have at least one root attribute.

Deletion of a Planning Level

You can delete a planning level if it is not used in any key figures.

To delete a planning level that is in use, to keep your data consistent, you must follow this procedure:

1. Delete the values of the stored key figures that use the planning level.
To do this, in the IBP Excel add-in, delete all values of all stored key figures that use the planning level. The
cells of key figure values must be empty. Then delete the planning objects by choosing Delete Planning
Objects.
2. In the Planning Areas app, delete all key figures (definitions) that use the planning level to be deleted.
3. In the Planning Areas app, delete the planning level.

 Caution

If you delete all stored key figure definitions that use a given base planning level, you must delete their key
figure values first to keep your data consistent.

Model Configuration Guide


80 PUBLIC Planning Levels
9 Attributes as Key Figures

An attribute as key figure is a specially configured master data attribute. It can be used to create planning data
such as planning objects or key figure values for specific use cases. The planning data is created when master
data is created or updated for the master data type.

The configuration as an attribute as key figure is an optional configuration that can be used for attributes of
data type DECIMAL. Depending on how this attribute as key figure is configured, either planning objects only or
planning objects and key figure data are created when master data is created or updated for the master data
type. For a list of the tools you can use to create or update the master data, see section Attributes as Key
Figures [page 81].

The following table provides more information about the different types of planning data:

Type of Planning Data Details

Planning Objects Planning objects are typically created when key figure data is loaded into the system using data
integration. This is the most common way to create large numbers of planning objects. Planners
can also create smaller numbers of planning objects manually using the master data section in
the SAP Integrated Business Planning, add-in for Microsoft Excel (SAP IBP, add-in for Microsoft
Excel).

When you work with order-based planning, the time series content for external key figures comes
from an order data store. IBP needs to provide the planning objects so the system can connect
the values of the external key figures to them. Because you would typically need to create a large
number of planning objects, creating them using the add-in for Microsoft Excel would be a time-
consuming manual task. Instead, you can use an attribute as key figure to create planning objects
without key figure data.

You can configure an attribute as key figure in such a way that only planning objects are created.
When master data is loaded to the master data type that the attribute as key figure belongs to, a
planning object is created for each master data record that was loaded.

Model Configuration Guide


Attributes as Key Figures PUBLIC 81
Type of Planning Data Details

Key Figure Data To fill a key figure with values, you would typically load the key figure data directly using data inte­
gration. With an attribute as key figure, you can also fill a key figure with values by copying the
value of an attribute to the key figure. This can be used for creating key figure data or updating
existing key figure data.

When you configure an attribute as key figure to create or update key figure data, a key figure with
the same ID as the attribute is created in the system. If an active key figure with the same ID as
the attribute already exists, the system doesn’t create a new key figure, but matches the attribute
and the existing active key figure automatically. The attribute and the key figure are connected,
which creates a channel to fill the time series of the key figure. When master data is loaded for the
master data type that the attribute as key figure belongs to, the attribute value is copied to the
key figure.

The configuration of the attribute as key figure determines how the attribute value is copied to the
key figure. If the attribute as key figure is time-independent, the attribute value is copied only
once. If the attribute as key figure is time-dependent, the attribute value is copied either to a spe­
cific period, to a range of periods, or to all periods that are available in the time profile of the plan­
ning area where the attribute as key figure is used.

In normalized planning areas, the number of time series entries that can be created or updated is
limited per attribute as key figure for performance reasons. For more information, see Defining an
Attribute as Key Figure [page 86] below.

 Note

Loading master data to an attribute with this configuration prolongs the master data load. This is
irrespective of whether you use the attribute as key figure to create planning objects or whether you use it
to create or update key figure data. Loading the master data takes longer because the system doesn't just
need to save the master data to the database, it also needs to carry out the following additional steps:

1. Create the planning objects


2. If you use the attribute to create or update key figure data: Create key figure data by copying the
attribute value to the time series for the key figure

Because of the prolonged loading time, the master data load can interfere with other processes or jobs that
run concurrently, resulting in an even longer runtime and higher memory consumption. If you want to avoid
this, the most efficient way to fill the time series of a key figure with values is to load the values directly in a
key figure data load.

Please carefully consider whether the use of an attribute as key figure is the right option for you, and also
take into account what is mentioned under Defining an Attribute as Key Figure below.

Use Cases

The principle of creating planning data using a master data attribute can be used for a variety of purposes
throughout IBP.

Model Configuration Guide


82 PUBLIC Attributes as Key Figures
Conversion Factor in Unit of Measure Conversion

In a unit of measure conversion, the conversion factor typically remains the same and does not change from
period to period. For example, the conversion factor from grams to kilograms always remains 0.001.

In such cases, you can model the conversion factor as a time-independent key figure. Using the value of this
key figure, a key figure can be converted from the base unit of measure to the target unit of measure.

For more information about unit of measure conversions, see Configuring Currency Conversion [page 381].

Key Figure in Key Figure Calculations

An attribute as key figure can also be used to introduce a time dimension for a time-independent key figure or if
you want to introduce missing periods. You can introduce the time dimension or the missing periods by using
the associated key figure in a key figure calculation.

Introducing a Time Dimension for a Time-Independent Key Figure

You can find an example of how to introduce a time dimension for a time-independent key figure in SAP Note
2922453 .

Introducing Missing Periods

There are cases where you know that there may be gaps in your data. For example, if you have sales orders,
there may be no demand for a certain planning object on some days. Therefore, no data is created for the
periods in which there is no demand, which means that the period is not included in the time series of the key
figure. This can cause problems in calculations that require the time series to be complete. For example, if you
want to calculate moving averages. If you calculate a moving average based on the periods of a key figure for
which periods are missing, the calculation returns incorrect values.

To create the missing periods, you typically use the Copy Operator . The copy operator creates time series data
that is permanently stored on the database. In some cases, this can result in a large amount of data to be
stored. For example, if you have 1.5 million customer-location-product combinations, for which you create time
series data for two years in daily periods, this would result in 1.095 billion time series entries to be stored.

If you don’t want the system to create data that is stored permanently, you can also create the missing periods
on the fly by using key figure calculations. To do this, you add a time-dependent key figure that has all the
periods for the planning horizon as an additional input for the calculation of the key figure for which periods
may be missing. This way, the missing periods are added in the output of the key figure that has gaps in its time
series.

 Example

You have a key figure KF1. This key figure is stored in daily periods. You have another key figure KF1 3-
day moving average that you use to calculate the average of the KF1 key figure from the current period
to two periods in the future.

The calculation of KF1 looks like this:

KF1@DAYPRODLOCZID = KF1@DAYPRODLOCZID

Inputs:

KF1@DAYPRODLOCZID (calculated values)

Because the data for the KF1 key figure is complete, the moving average can be calculated correctly for the
KF1 3-day moving average key figure, as the following table shows:

Model Configuration Guide


Attributes as Key Figures PUBLIC 83
Number of pe­ 1 2 3 4 5 6
riod

Period May 16, 2020 May 17, 2020 May 18, 2020 May 19, 2020 May 20, 2020 May 21, 2020

KF1 200 300 400 500 600 700

KF1 3-day 300 400 500 600 (no value) (no value)
moving
average

Now let’s assume your data for key figure KF1 has a gap for the period May 17, 2020. Because there is no
data for this period, the period is skipped by the system and not added to the time series of the key figure.

For the KF1 3-day moving average key figure, this means that the three-day average cannot be
calculated correctly for the period May 16, 2020. Instead of calculating the three-day average for the
periods May 16, 2020, May 17, 2020, and May 18, 2020, the system calculates the three-day average for the
periods May 16, 2020, May 18, 2020, and May 19, 2020. This is shown in the following table:

Number of pe­ 1 (missing pe­ 3 4 5 6


riod riod)

Period May 16, 2020 missing pe­ May 18, 2020 May 19, 2020 May 20, 2020 May 21, 2020
riod)

KF1 200 (no value) 400 500 600 700

KF1 3-day 366,67 (no value) 500 600 (no value) (no value)
moving
average

To help avoid this, you can extend the calculation of key figure KF1 with the additional input of a key figure
whose time series is complete and has no gaps. Let’s assume this key figure is the stored key figure ZAAKF
(for an example of how to configure this key figure, see SAP Note 2922453 ). It is modeled as an attribute
as key figure, and its sole purpose is to provide the missing periods for KF1 for the required time period
range. Your extended calculation lookslike this:

KF1@DAYPRODLOCZID = KF1@DAYPRODLOCZID

Inputs:

KF1@DAYPRODLOCZID (calculated values)

ZAAKF@DAYZID (stored values) [additional input]

Because key figure ZAAKF provides all the required periods without any gaps, the missing period May 17,
2020 is added in the output of key figure KF1. The value for both key figure ZAAKF and key figure KF1 in this
period is null. With this data in place, the system can calculate the three-day average for the KF1 3-day
moving average key figure based on the values of the periods May 16, 2020, May 17, 2020, and May 18,
2020. This is shown in the following table:

Number of pe­ 1 (missing pe­ 3 4 5 6


riod riod)

Period May 16, 2020 (missing pe­ May 18, 2020 May 19, 2020 May 20, 2020 May 21, 2020
riod)

Model Configuration Guide


84 PUBLIC Attributes as Key Figures
KF1 200 (no value) 400 500 600 700

KF1 3-day 366,67 (no value) 500 600 (no value) (no value)
moving
average

Number of pe­ 1 2 3 4 5 6
riod

Period May 16, 2020 May 16, 2020 May 18, 2020 May 19, 2020 May 20, 2020 May 21, 2020

KF1 200 (null) 400 500 600 700

KF1 3-day 300 450 500 600 (no value) (no value)
moving
average

Note that calculating the missing periods on the fly may have an impact on performance.

Decimal Values in Key Figure Calculations

If your goal is to use the value of a decimal attribute in a key figure calculation, for example, as a ratio, you can
use an attribute as key figure.

Attributes can be used in key figure calculations. However, you can only use integer attributes as planning area
attributes. If you want to use a decimal value in a calculation, this means that you need to divide one integer
attribute (numerator) by another integer attribute (denominator) to express that decimal value.

 Example

You want to multiply key figure KF1 by the value 1.5. You create the following key figure calculation:

KF1 * (numerator attribute ATTR1 / denominator attribute ATTR2)

Let’s say your attribute ATTR 1 has the value 3 and attribute ATTR 2 has the value 2. With these values in
place, the system will calculate the following:

KF1 * (3 / 2)

With this, you can express the decimal value 1.5 as a fraction of 3 / 2.

As an alternative, you can use an attribute as key figure. When used as a key figure, an attribute of type decimal
can be used in the planning area for key figure calculations.

 Example

You want to multiply key figure KF1 by the value 1.5.

You have a master data type MDT1 with an attribute ATTR1 to which you will load the value 1.5. You use this
master data attribute in your planning area to fill the associated key figure by configuring it as an attribute
as key figure.

You create the following key figure calculation:

KF1 * ATTR1

Model Configuration Guide


Attributes as Key Figures PUBLIC 85
For the master data attribute ATTR1, you load the value 1.5. By doing this, the attribute value 1.5 is copied
to the key figure ATTR1. With this value in place, the system calculates the following:

KF1 * 1.5

Because you typically need the decimal value only once, you can define the associated key figure as a time-
independent key figure.

For more information about attributes in key figure calculations, see Using Attributes in Key Figure Calculations
[page 182].

Defining an Attribute as Key Figure

You can use this configuration for attributes that are assigned to a simple, a compound, or an external master
data type, that is, to a master data type that you can load data into.

If you define an attribute as key figure in a planning area, the definition for the attribute is specific to that
planning area. It does not make the attribute an attribute as key figure in other planning areas. This also gives
you the option to define an attribute as key figure differently in every planning area.

Irrespective of the kind of planning data you want to create, you need to specify a base planning level. The
planning data is then created on that base planning level.

 Note

The non-time root attributes of the key figure’s base planning level and the key attributes of the master
data type for this configuration must be exactly the same. If you select a base planning level that has only a
subset of the attributes, the system may generate inconsistent data.

For example, if the master data type for the attribute as key figure has the required attributes PRDID,
LOCID, and CUSTID, the base planning level of the key figure needs to have the non-time root attributes
PRDID, LOCID, and CUSTID. If you select a base planning level that only has PRDID and LOCID as non-time
root attributes, this will lead to inconsistent data.

For step-by-step instructions, see chapter Defining an Attribute as a Key Figure [page 91].

Planning Objects
To create planning objects, you need to select the Value by Reference checkbox when you define the attribute
as key figure. This checkbox is only visible in the definition dialog if the planning area is enabled for external
time series and the attribute is assigned to an external master data type. If you choose this option, the system
creates only planning objects when data is loaded into the master data type that this attribute belongs to.

Key Figures
You can configure attributes as key figures to be time-independent or time-dependent.

Time-independent

In this case, time-independent means that the base planning level you select for the associated key figure does
not have a time attribute, for example, PRODUMTO. When data is loaded to the master data type, only one record
is added to the key figure’s time series.

Model Configuration Guide


86 PUBLIC Attributes as Key Figures
We recommend that you use this kind of configuration for cases where the key figure value does not vary over
time and does not have to be maintained in a planning view like a regular key figure. For example, for
configuring a unit of measure conversion. An attribute as key figure configured this way provides much better
performance than a time-dependent attribute as key figure for which the key figure values are stored for
multiple periods.

Time-dependent

Depending on your use case, you can specify the attribute value to be copied to a specific period or to a range
of periods.

If you want the attribute value to be copied to a specific period, for example, in the context of sales orders, you
need to specify a time reference attribute. The time reference attribute determines the time period to which
the value of the attribute is copied for the associated key figure. This is needed if you want to correctly maintain
key figure data for specific sales orders. You need to include the time reference attribute in the same master
data type as the attribute for which you’re doing the configuration. The time reference attribute must be of the
data type TIMESTAMP.

If you want the attribute value to be copied to a range of time periods, you need to specify the first and the last
time period for which the attribute value is to be stored in the time series of the key figure.

 Caution

We recommend that you specify the time periods for which you want to store attribute values and keep the
time period range as small as possible. If you do not specify the time periods, the attribute value is stored in
the database for all the periods that are available based on the time profile of the planning area. If you use
the same attribute as key figure in several planning areas, the attribute values are stored for the other
planning areas, too, thus multiplying the volume of entries that need to be created. The high volume of time
series entries to be stored can have a detrimental impact on system performance when you load data for
the master data type.

 Example

You have configured an attribute as key figure without specifying a period range. You use this attribute
in 2 planning areas. The time profile of each of those planning areas contains 13 periods. In each of the
planning areas where the attribute is used, each of these 13 periods is filled when a single master data
record is loaded for the master data type that the attribute belongs to.

If you now upload 500,000 records for the master data type, the system needs to copy the attribute
value into 6.5 million time series entries for the corresponding key figure. Because you’re using this
attribute in 2 planning areas, the number of time series entries that need to be filled is doubled, which
makes 13 million time series entries in total.

This effect increases with each attribute as key figure that you assign to a master data type. Let’s
assume you have configured two attributes as key figures in the example above. In this case, if you
upload 500,000 records for the master data type, the system needs to copy the attribute value into 6.5
million time series entries twice, which makes 13 million time series entries. For the 2 planning areas in
which these two attributes are used, this makes 26 million time series entries in total.

For more information and examples of how you can load data if you can't avoid having to create or update a
large volume of key figure data, see Troubleshooting for Attributes as Key Figures [page 94].

Normalized Planning Areas

Model Configuration Guide


Attributes as Key Figures PUBLIC 87
To prevent the system from running out of memory, the number of time series entries that can be created or
updated is limited per attribute as key figure in normalized planning areas. If this limit is exceeded, the system
does not create or update the time series entries. For details, see 2986360 .

You can calculate the number of time series entries that you create or update with a master data load in the
following way: number of master data records that you upload x number of periods to be filled <= the
maximum number of entries.

 Example

You have a master data type LOCATIONPRODUCT that has a LOTSIZE attribute. This attribute is defined as
time-dependent key figure on WKPRODLOC level. Let’s assume you plan to fill 30 periods with the value of
the LOTSIZE attribute for each LOCATIONPRODUCT record. This means that for each record that you
upload for the LOCATIONPRODUCT master data type, 30 time series entries are to be created or updated in
total. Let's assume that the maximum number of entries is 10 million. If you divide 10 million by 30 periods,
the result is 333,333.33. If you upload 333,333 records for the corresponding master data type, the system
creates or updates 9,999,990 time series entries.

Note that the limit on time series entries that can be created or updated per attribute as key figure might
change over time. You can check the current limit in the SAP Note referenced above.

Defining Time Periods


You can define the time periods relative to the current time period. You enter the current period as 0. You define
past or future time periods by specifying a negative or a positive value respectively.

 Example

In the following example, month is used as the period in the base planning level of the attribute as key
figure. The current period is October 2016. The time profile assigned to the planning area spans from
January 2015 to December 2018.

Value Entered in Value Entered in To Key Figure Values Key Figure Values Comment
From Period Period Stored From Stored Until

-6 24 February 2016 October 2018 Key figure values are


stored from the 6th
period in the past to
the 24th period in the
future.

0 0 October 2018 October 2018 Key figure values are


stored for the current
period only.

Model Configuration Guide


88 PUBLIC Attributes as Key Figures
Value Entered in Value Entered in To Key Figure Values Key Figure Values Comment
From Period Period Stored From Stored Until

0 (empty) October 2016 December 2018 Key figure values are


stored from the cur­
rent period to the last
period.

 Note
For performance
reasons, we rec­
ommend that you
specify exact pe­
riods in the From
Period and To
Period fields.

(empty) 24 January 2015 October 2018 Key figure values are


stored from the 1st
period of the time pro­
file to the 24th period
in the future.

 Note
For performance
reasons, we rec­
ommend that you
specify exact pe­
riods in the From
Period and To
Period fields.

Model Configuration Guide


Attributes as Key Figures PUBLIC 89
Value Entered in Value Entered in To Key Figure Values Key Figure Values Comment
From Period Period Stored From Stored Until

(empty) (empty) January 2015 December 2018 Key figure values are
stored for all the peri­
ods that are available
based on the time
profile of the planning
area.

 Caution
This kind of con­
figuration can im­
pact perform­
ance. We recom­
mend that you
specify exact pe­
riods in the From
Period and To
Period fields.

Deleting an Attribute as Key Figure

The definition of an attribute as key figure can be removed at any time.

If you decide to delete the attribute as key figure, you have the option to delete the attribute as key figure
definition only or to delete it together with the related key figure. If the key figure is left behind after the deletion
of the definition, the key figure gets unmarked as an attribute as key figure.

If you delete a key figure that is marked as an attribute as key figure, the attribute as key figure definition is
deleted as well.

Creating and Updating Data

Data for the attribute can be loaded using data integration tools (Data Integration Jobs app, SAP Cloud
Integration for data services, inbound integration for order-based planning), using the master data workbook in
the add-in for Microsoft Excel, the Driver-Based Planning app, or by copying master data using the Copy Version
operator.

The stored key figure that is assigned to the attribute as key figure can also be loaded with key figure values like
any other stored key figure, for example, using data integration tools (Data Integration Jobs app, SAP Cloud
Platform Integration for data services).

Model Configuration Guide


90 PUBLIC Attributes as Key Figures
Related Information

Defining an Attribute as a Key Figure [page 91]


Troubleshooting for Attributes as Key Figures [page 93]

9.1 Defining an Attribute as a Key Figure

Use the Planning Areas app to define an attribute as a key figure.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

When the value of an attribute of a master data type remains the same over time (for example, the attribute
Product Price of master data type Product), you can define the attribute as a key figure. When such an attribute
is loaded as a key figure, it should have the same value for all time periods.

Procedure

1. In the Planning Areas app, find the planning area in which you want to define an attribute as key figure and
open it.
2. On the Attributes as Key Figures tab, choose New. Alternatively, on the Key Figures tab, select Attribute as
Key Figure from the dropdown next to the New button.

The New Attribute as Key Figure dialog appears.


3. On the New Attribute as Key Figure dialog, select the attribute you want to define as a key figure.

You can select an attribute that is assigned to a simple, a compound, or an external master data type, that
is, to a master data type which you can load data into.
4. Specify the base planning level for the key figure.

Model Configuration Guide


Attributes as Key Figures PUBLIC 91
 Note

The non-time root attributes of the key figure’s base planning level that you select here and the key
attributes of the master data type for this configuration must be exactly the same. For more
information, see chapter Attributes as Key Figures [page 86].

5. Specify time periods for the attribute as key figure.

○ If you want to upload the key figure value for a single period, select a time reference attribute.

 Note

The time reference attribute is an attribute of the timestamp data type and comes from the same
master data type as the attribute as key figure.

○ If you want to upload the key figure value for a range of periods, enter values relative to the current
period in the From Period and To Period fields to indicate the time periods for which the attribute value
is to be stored in the time series for the key figure.
If you make an entry for From Period and leave To Period empty, the attribute value will be stored from
the value you entered for From Period for all future periods determined by the time profile assigned.
If you enter 0 in the From Period or To Period fields, the system takes the current period for the From
Period or To Period.
The time period is updated for each time bucket when you upload a value for that time bucket, so the
from period and to period values are relative to that point in time and are not automatically adjusted as
time goes by. To ensure that data is updated on a rolling basis, you need to upload key figure values
regularly.
For an example of how you can define the time periods, see chapter Attributes as Key Figures [page
86].

 Caution

For time-dependent attributes as key figures, SAP recommends that you use the From Period and
To Period fields to specify the time period for which you want to store attribute values. If you leave
these fields blank, the attribute value is stored in the database for all the time periods that are
available based on the time profile of the planning area. If you use the same attribute as key figure
in several planning areas, the attribute values are stored for the other planning areas, too, thus
multiplying the volume of data. The high volume of time series entries to be stored can affect
system performance, therefore the attribute as key figure might be skipped during data
integration. For more information see Troubleshooting for Attributes as Key Figures [page 93].
In the case of attributes as key figures created from attributes of external master data types, you
should specify a time period too. If you leave the From Period and To Period fields empty, the full
planning horizon for your planning area is used for the attribute as key figure, which can lead to
performance issues in the case of a large volume of data to be read. To improve performance, we
recommend that you specify an exact period in the From Period and To Period fields.

○ If you want to create planning objects without key figure data, select the Value by Reference checkbox.

 Note

This option is available if the planning area is enabled for external time series and the attribute is
assigned to an external master data type.

6. Save your entries.

Model Configuration Guide


92 PUBLIC Attributes as Key Figures
Results

A key figure with the same ID as the attribute is now available in the list of key figures.

 Note

If a key figure with the same ID has already existed in the system, the key figure is automatically marked as
an Attribute as Key Figure. However, you can’t save a configuration that involves an attribute as key figure
and a key figure with the same ID if any of the following applies:

● The key figure isn’t stored.


● The key figure is an alert, generated, helper or attribute transformation key figure.

If there is a key figure with the same ID in pending deletion status, you cannot use the ID for defining the
attribute as key figure unless you restore the key figure first.

Next Steps

To define the key figure properties for the attribute that you have defined as a key figure, go to the Key Figures
tab of the planning area in the Planning Areas app.

9.2 Troubleshooting for Attributes as Key Figures

If you experience performance issues when you load or update master data for an attribute as key figure, or if
you exceed the limit of time series entries that can be created or updated, here are some options that can help
you remedy the situation.

When you load master data for an attribute as key figure, you may experience one of the following situations:

● In a non-normalized planning area, the master data load takes a long time and consumes a lot of memory,
which slows down the performance.
● In a normalized planning area, the system does not copy the attribute value to the corresponding key
figure.

Why Is This Happening?


This can have one of the following reasons:

● The configured time period range for which time series entries should be created or updated is too big.
● No time period range has been configured at all.
● You tried to load too many master data records at once.

If you load or update master data for a master data type that has an attribute as key figure, the attribute value
is copied to each time period of the key figure that is specified in the definition of the attribute as key figure. If
you haven’t specified a time period range, the attribute value is copied to each period that is available in the
time profile of the planning area.

Model Configuration Guide


Attributes as Key Figures PUBLIC 93
The number of time series entries that need to be created or updated by the master data load depends on the
following factors:

● How many time periods you have specified in the definition of the attribute as key figure
● How many time periods the time profile covers
● How many planning areas the attribute as key figure is used in
● How many records you load for the master data type that the attribute belongs to
● How many attributes as key figures belong to this master data type in total

The interplay of the above factors might result in hundreds of millions of time series entries that need to be
created or updated. This can cause long runtimes and high memory consumption. For an example, see the
note for time-dependent attributes as key figures in section Defining an Attribute as Key Figure [page 86].

In a normalized planning area, the number of time series entries that the system can create or update for the
associated key figure is limited. If you exceed this limit, the system does not create or update the time series
entries for the key figure. For details, see 2986360 .

What Can I Do Now?

To help prevent issues caused by long-running master data loads, check the definition of the attributes as key
figures that you use. If possible, we recommend that you either change the definition, or consider using an
alternative way to create or update time series entries.

The following graphic shows you what you can do if you’re experiencing issues when you load master data:

A proposal for an alternative way to model the attribute as key figure as mentioned in the graphic can be found
in SAP Note 2922453 .

 Caution

You may be using an attribute as key figure in several planning areas unintentionally by making copies of
your planning area. We therefore recommend that you check the configuration in all the planning areas
where the same attribute as key figure is used.

Model Configuration Guide


94 PUBLIC Attributes as Key Figures
For more information about how to define an attribute as key figure, see Attributes as Key Figures [page
81].

Model Configuration Guide


Attributes as Key Figures PUBLIC 95
10 Key Figures

Key figures are series of numbers over time, where each number corresponds to a particular time period value.

Key figures have a business context: In SAP Integrated Business Planning, end users view and use key figures in
the planning views or in Analytics. Every key figure has a base planning level.

Key figures are associated with a key, which is a combination of attributes from one or more master data
objects.

Key figures represent variables that are associated with attributes (master data types), and can be imported
into the SAP Integrated Business Planning system, calculated, and/or manually edited.

 Example

Examples of key figures are Sales Forecast, Marketing Forecast, Consensus Demand Plan, Projected
Inventory, Capacity Plans or actual data such as Sales Orders and Shipment History.

Once you have created your attributes, master data types, time profiles, and planning areas and levels, you
define the key figures you want to include in your planning model.

For more information, see Creating Key Figures [page 99].

 Caution

To run the inventory operators and time-series-based supply planning algorithms, you have to use specific
technical IDs defined by SAP for the relevant key figures and also for master data types and attributes. For
demand sensing, the same applies to key figures for which a business meaning has not been specified and
certain master data attributes. For more information, see the documentation of the relevant planning
operator in this guide and the respective chapter of the application help.

10.1 Types of Key Figures

You can create the following types of key figures:

Type Explanation

Key figure The key figures that end users view in the planning views or
in Analytics.

Model Configuration Guide


96 PUBLIC Key Figures
Type Explanation

Helper key figure Helper key figures are typically used for intermediate calcu­
lation results in a regular key figure or in another helper key
figure. For example, they can be used to break down a large
calculation into manageable subcalculations.

Helper key figures are not visible to the end user and do not
have a base planning level. They can be used at request level
or at any other planning level. They are used in calculations
that have more than 3 inputs at different planning levels.

Helper key figures are primarily used in ratio calculations,


last period aggregation, and in cost calculations. You can
also use them in cases where the same key figure would oth­
erwise occur twice in a single calculation. (You can't use the
same key figure name twice in one calculation.)

As they are used only in calculations, helper key figures do


not have key figure properties such as “stored”, “editable”,
“aggregation”, and “disaggregation”.

For ease of identification, helper key figures are usually pre­


fixed “H”.

Attribute Transformations Attributes that are assigned to a planning level can be trans­
formed to a different value based on certain conditions. For
example, Period ID can be transformed to calculate lead time
offset.

For more information, see Example: Attribute Transforma­


tions [page 385].

Attributes as key figures You can define attributes of master data types as key figures
in the planning area.

For more information about attributes as key figures see At­


tributes as Key Figures [page 81].

For more information on how to configure an attribute as a


key figure, see Defining an Attribute as a Key Figure [page
91].

Alert key figure Key figures that monitor and manage the execution of busi­
ness plans based on user­defined criteria. Alert key figures
are always calculated. They can't be stored or edited.

Alert key figures can only have the values" 0" or "1", meaning
that the alert itself is either ON or OFF. Alerts typically check
conditions on other key figures, such as TargetRev vs. Con­
sensusRev > 10%.

Model Configuration Guide


Key Figures PUBLIC 97
Type Explanation

Snapshot key figure To check how key figure values have evolved over time, you
can set up an application job to take snapshots of the se­
lected key figure at regular intervals. The values captured in
this way are stored in a snapshot key figure. You can display
the values of the snapshot key figure in your planning view,
which allows you to create a time-lapse view of your data.

Depending on your use case, you can either use original


snapshots or lag-based snapshots. For more information,
see Snapshots.

Snapshot key figures are system generated and always


stored.

 Note

Note the following guidelines with respect to key figures:

Key Figures Affected Guideline

Supply Planning input and output key figures Must be stored key figures.

Input key figures added via data integration Mark as Stored. If you need to edit such a key figure, mark it
as Editable.

Quantity and value key figures Typically set to aggregation mode SUM, MIN, or MAX. If such
key figures are defined as Editable, Disaggregation Mode is
set to Equal.

Ratio, price, cost, and percentage key figures Typically set to aggregation mode Custom, Min, Max, or Avg.
If Editable, typically set to Copy.

Such key figures generally have request level calculations.

Related Information

Creating Key Figures [page 99]


Attributes as Key Figures [page 81]
Defining an Attribute as a Key Figure [page 91]

Model Configuration Guide


98 PUBLIC Key Figures
10.2 Creating Key Figures

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Once you have created your attributes, master data types, time profiles, and planning areas and levels, you
define the key figures you want to include in your planning model.

Steps

1. Go to the Key Figures tab of the planning area in the Planning Areas app.
Alternatively, enter focus mode using the Focus Mode button available from any tab of the Planning Area
(details) screen.
2. Choose New, and select the type of key figure you want to create from the dropdown list.
3. Enter an ID for the key figure, for example, SALESFORECASTQTY.
4. Select the desired base planning level from the drop-drown menu (for example, PERPRODCUST).
The base planning level specifies the most granular level at which the value of the key figure is defined.

 Note

Different key figures may have different base planning levels. However, if multiple planning levels that
are used as the base planning level of stored key figures have identical root attributes (not taking the
time attribute into consideration), ensure to set identical non-root attributes as well.

A calculation can be specified for a key figure at a planning level other than its base planning level. Key
figure values are calculated or stored at the base planning level and at each planning level for which a
calculation is specified.

As a result, the system creates a REQUEST level calculation by default. Later on, if you modify the planning
level or the aggregation mode, the REQUEST level calculation is updated automatically up until you edit the
calculation manually.

Model Configuration Guide


Key Figures PUBLIC 99
5. Fill out the characteristics as required:

Field Label Explanation

Display Settings Determines how the key figure is displayed in analytics and
how decimals are displayed in the Web-Based Planning
app, the Driver-Based Planning app, and the Copy Operator
(Advanced) app.

Decimals: Specify the number of decimal places required.


The default setting is 6 decimal places. This setting also
controls rounding in disaggregation for those key figures
that have SUM or AVG aggregation mode.

Display as Percentage: Select to display the key figure as a


percentage. Note that key figures can only be displayed as
a percentage in analytics.

 Note
In the SAP Integrated Business Planning, add-in for
Microsoft Excel, the EPM formatting sheet controls
how numbers are displayed.

Base Planning Level Shows the planning level you selected earlier.

Model Configuration Guide


100 PUBLIC Key Figures
Field Label Explanation

Aggregation Mode SUM (default value), MIN, MAX, AVG, COUNT, CUSTOM

You use aggregation mode CUSTOM in the following cases


(only relevant for stored key figures):

○ When a key figure has a complex calculation at re­


quest level, for example, Unit Price, which has inputs
at request level.
○ When the planning level used in the request level cal­
culation is different from both the base planning level
of the key figure and from the planning level that is
used in unit of measure or currency conversions.

The aggregation mode is relevant for stored key figures


only. Together with the disaggregation mode and optionally
the proportionality it determines how values for stored key
figures are disaggregated.

 Example
A value of 100 for Q1 of 2020 is to be disaggregated to
the three monthly planning combinations JAN 2020,
FEB 2020, and MAR 2020. The values should have a
proportionality of 2:3:5.

Depending on the selected aggregation mode, the dis­


tribution of the values to the individual buckets leads
to the following result:

Example: Results of Aggregation

JAN FEB MAR Values


2020 2020 2020 for Q1

Propor­ 2 3 5
tionality
Factor

Result 20 30 50 20+30+
with Ag­ 50=100
grega­
tion
Mode
SUM

Result 60 90 150 (60+90+


with Ag­ 150)/
grega­ 3=100
tion

Model Configuration Guide


Key Figures PUBLIC 101
Field Label Explanation

JAN FEB MAR Values


2020 2020 2020 for Q1

Mode
AVG

Disaggregation Mode Disaggregation mode is available only for key figures for
which Edit Allowed is selected. There are two options:

○ Copy Value
○ Equal Distribution

Proportionality After specifying the disaggregation mode, you can define


the proportionality for disaggregation. For more informa­
tion see Configuration of Proportional Disaggregation
[page 111].

Period Weight Factor Used to enable a proportional distribution according to the


period weight factor. This option can only be used for the
Equal Distribution disaggregation mode and if the time pro­
file contains the relevant attribute of the data type INTE­
GER.

For more information on the period weight factor, see Con­


figuring Aggregation and Disaggregation of Data Across
Different Time Profile Levels [page 47].

Model Configuration Guide


102 PUBLIC Key Figures
Field Label Explanation

Disaggregation Expression Used to enter a disaggregation expression, that is, a math­


ematical expression that disaggregates the values entered
for the key figure that is defined using other attributes and
key figures. The following conditions apply to disaggrega­
tion expressions:

○ All the key figures in the expression must be stored


and must have the same base planning level as the
key figure for which the expression is defined. To dis­
aggregate key figure values proportional to a calcu­
lated key figure, use the Advance Simulation operator
or copy the calculated values to a stored key figure
that can be used in the disaggregation expression.
If the reference key figure is calculated and stored, the
stored value will be used in the disaggregation expres­
sion.
○ All the attributes must be from the base planning level
of the key figure for which the expression is defined

You can enter a disaggregation expression only when Edit


Allowed has been selected.

You can call input help for the Disaggegation Expression


field by entering a double quotation mark.

Examples of values in Disaggregation Expression:

○ "KEYFIGURE1"
○ "KEYFIGURE1" + "KEYFIGURE2"
○ "KEYFIGURE1" + "ATTRIBUTE"
○ (IF(ISNULL("ADJUSTEDACTUALSQTY"),"ACTUALS
QTY","ADJUSTEDACTUALSQTY"))

Consideration of the disaggregation expression during dis­


aggregation:
○ The disaggregation expression is only evaluated if pro­
portionality is defined.
○ If the disaggregation expression has a value <> 0 on
aggregated level, it is calculated for all child nodes and
used as the proportional factor by disaggregation.
○ If the disaggregation expression has a value of 0 on
aggregated level, the period weight factor is used as
proportional factor (if defined).
○ If neither the disaggregation expression nor the period
weight factor can be used as proportional factor, the
disaggregation is done equally/ by copy as defined in
the disaggregation mode.

Model Configuration Guide


Key Figures PUBLIC 103
Field Label Explanation

 Note
You must enter key figure IDs and attribute IDs in up­
percase, and place them in double quotation marks.

 Example
A demand planner has a product family PF1 with only
two products, P1 and P2. These products have the fol­
lowing values at the base planning level:

Product Cus­ Month Market­ Actuals


tomer ing Fore­ Qty 12
cast Qty Months
Offset

P1 C1 Jan 100

P2 C1 Jan 200

At the aggregated level, the values for the product


family are as follows:

Product Cus­ Month Market­ Actuals


Family tomer ing Fore­ Qty 12
cast Qty Months
Offset

PF1 C1 Jan 300

The demand planner would now like to disaggregate


the marketing forecast quantity to individual products
in the product family proportionally based on the key
figure Actuals Qty 12 Months Offset.

If, at the aggregated level, the demand planner enters


330 for Marketing Forecast Qty without the expression
in the Disaggregate Expression box, the quantity would
be distributed equally between the two lower levels as
165 and 165. Now, with the disaggregation expression,
the values are disaggregated based on values in refer­

Model Configuration Guide


104 PUBLIC Key Figures
Field Label Explanation

ence key figure Actuals Qty 12 Months Offset as fol­


lows:

Product Cus­ Month Market­ Actuals


tomer ing Fore­ Qty 12
cast Qty Months
Offset

P1 C1 Jan 110 100

P2 C1 Jan 220 200

Stored Indicates a key figure in which data is stored at a defined


base planning level.

Note that all edited key figures are designated as Stored.


However, an imported key figure can be designated Not
editable. (For example, Actuals Qty must not be changed.)

 Note
Select both Stored and Calculated only for key figures
that are configured to default to another key figure.
See Defaulting to Another Key Figure.

Model Configuration Guide


Key Figures PUBLIC 105
Field Label Explanation

Edit Allowed If a key figure is only calculated, its values can’t be edited.
The values of stored key figures and key figures that are
both stored and calculated can be changed.

The value of a key figure can change in the following ways:


○ in the SAP IBP, add-in for Microsoft Excel, the Web-
Based Planning app, or the Driver-Based Planning app
by the user
○ during data integration
○ through planning algorithms and planning operators
by the system
The Edit Allowed field controls by which of the above
means a key figure value can be changed in the system.
The following options are available:

○ Not Editable: you can't edit the key figure in the SAP
IBP, add-in for Microsoft Excel
○ System Editable: any kind of planning algorithm, for
example, the forecasting algorithm, can change the
key figure for the complete time horizon
○ Editable in the Current or Future Period: system users
and planning algorithms can both change the key fig­
ure, but only in the current period or for future periods
○ Editable in the Past: system users and planning algo­
rithms can both change the key figure, but only in the
past periods
○ All Editable: any of the above changes are possible

Calculated Key figures in which values are always calculated based on


user­defined formulae (for example, Revenue = Qty *
Price).

This type of key figure is usually not editable. However, to


support use cases such as defaulting, a key figure can be
both editable and stored. For more information about de­
faulting, see Defaulting to Another Key Figure [page 134].

Key figure calculations (calculated key figures) are made at


a defined planning level, which can be different from the
level on which a user requests to view the key figure. An
IBP planning area typically includes key figures from multi­
ple planning levels, which can be linked with calculations
that often result in key figures at additional planning levels.

Enable Fixing Select this checkbox if you want to use the fixing of key fig­
ure values for a specific key figure. For more information
about the configuration of key figure fixing, see Configura­
tion of Key Figure Fixing [page 109].

Model Configuration Guide


106 PUBLIC Key Figures
Field Label Explanation

Enable Planning Notes Select this checkbox if you want to use planning notes for a
specific key figure.

For more information about planning notes see the SAP


Help Portal at http://help.sap.com/ibp, under

Application Help for SAP Integrated Business Planning

Cross-Application Topics Planning Notes

Planning Level for Planning Notes By default, planning notes can be created or displayed on
any planning level that the key figure allows, down to the
base planning level of the key figure. You can restrict this
by defining the lowest level to which planning notes can be
created and displayed in this field. The planning level you
choose here must be a subset of the attributes of the key
figure’s base planning level.

For more information about planning notes see the SAP


Help Portal at http://help.sap.com/ibp, under

Application Help for SAP Integrated Business Planning

Cross-Application Topics Planning Notes

Input/Output for Supply Planning Indicates an input and/or output key figure for supply plan­
ning. If the planning area is enabled for supply planning,
this field determines whether the key figure is used as an
I/O for supply planning.

 Note
To enable a planning area for supply planning, go to
the General tab of the planning area in the Planning
Areas app and select Enable Supply Planning .

Input/Output for TS Forecast Consumption Indicates if the stored key figure is an input or output for
time-series-based forecast consumption.

For more information about planning notes see the SAP


Help Portal at http://help.sap.com/ibp, under

Application Help for SAP Integrated Business Planning

Business Applications Time-Series-Based Supply

Planning Time-Series-Based Forecast Consumption .

Model Configuration Guide


Key Figures PUBLIC 107
Field Label Explanation

Convert Using Used for disaggregation of conversion key figures. Re­


quired only for key figures that are editable. Select the key
figure that you want to use to convert the current key fig­
ure.

 Note
This key figure must be a stored key figure and not a
calculated one, as calculation rules are not executed.

Enable Change History Indicates that changes to the key figure will be tracked. For
more information, see Change History for Key Figures and
How to Enable Change History? [page 400].

Hashtags You can define your personal filtering criteria in the form of
hashtags. You can assign hashtags to any key figures for
which characteristics are available.

You can introduce a new hashtag or reuse existing ones


and you can assign several hashtags to the same key fig­
ure.

Hashtags are not case-sensitive, always start with the


hashtag symbol (#) and can only contain alphanumeric
characters and underscores. You can type your hashtag
with the hashtag symbol at the beginning or without it, in
which case the system will add it to your string.

 Note
The #IBP* and #SAP* namespaces are reserved by
SAP, so you cannot create any hashtags beginning
with these strings.

6. Save your key figure. If you choose Save and New, you can immediately proceed to create the next key
figure of the same type.

Related Information

Decimal Places in Key Figure Values [page 117]

Model Configuration Guide


108 PUBLIC Key Figures
10.2.1 Configuration of Key Figure Fixing

Before business users can fix and unfix key figure values, you must first enable fixing of key figures in the
configuration.

Key Figure Requirements

As well as the requirements described under Fixing of Key Figure Values, please consider the following:

● The Edit Allowed field of a key figure must be set to All Editable, Editable in the Current or Future, or Editable
in the Past.
● The key figure must have a specific combination of aggregation and disaggregation modes. It either needs
to have aggregation mode Sum and disaggregation mode Equal distribution, or it needs to have
aggregation mode Avg and disaggregation mode Copy value. Note that the proportionality No Proportional
Disaggregation is not supported.
● The key figure must not be time-independent. (A key figure is time independent if its base planning level
contains no time attributes as root attribute or if it has PERIODID as the only root time attribute.)
● The key figure must not use L script in its calculation definition.
● The key figure must not be marked as Output for Supply Planning or Input and Output for Supply Planning.
● The key figure must not be marked as Output for TS Forecast Consumption.
● The key figure must not have the business meaning Promotion Final, Promotion Total (Source), or
Promotion Uplift (Source) assigned to it.

How to Enable Fixing of Key Figures

You need to enable fixing of key figure values for each key figure that you want your business users to be able to
fix and unfix. To do this, you need to select the Enable Fixing checkbox in the Characteristics section when you
create or edit a key figure in the Planning Areas app.

Technical Key Figures for Fixing

After you have enabled fixing for a key figure, two technical key figures are generated. These technical key
figures are merely used for storing technical information about the key figure for which you have enabled fixing
and are therefore not visible in any planning app. For information purposes, they are displayed in read-only
mode in the Planning Areas app.

The technical key figures use the following prefixes:

Prefix Purpose of Technical Key Figure

DIS_FIXIND_<key figure name> Holds the information that the key figure is fixed

Model Configuration Guide


Key Figures PUBLIC 109
Prefix Purpose of Technical Key Figure

DIS_FIXQTY_<key figure name> Holds the fixed quantity

 Note

If necessary, the system may slightly adjust the name of the technical key figures to ensure that they are
unique.

Enabling Fixing Information to Be Displayed Correctly in the SAP Integrated


Business Planning, add-in for Microsoft Excel

If the planning view in the SAP IBP, add-in for Microsoft Excel contains fixable key figures but no EPM
formatting sheet, fixing formatting will always stay in the cells where it is added. Over time, fixed cells get
multiple fixing icons.

To make sure that fixing information is displayed correctly in the IBP Excel add-in, you need to include an EPM
formatting sheet in the planning view by choosing Edit View View Formats on the IBP tab. In the EPM
Formatting Sheet dialog, you can define specific formatting rules for fixable key figures.

Related Information

Fixing of Key Figure Values

10.2.2 Enabling Planning Notes for a Key Figure

You can enable planning notes for up to 20 stored key figures in a planning area.

Context

To allow business users to add planning notes to the values of a key figure in the planning view, you must enable
planning notes in the key figure configuration.

 Note

You can’t enable planning notes for helper, snapshot, technical, external, or alert key figures.

Model Configuration Guide


110 PUBLIC Key Figures
Procedure

1. In the Planning Areas app, select the planning area that contains the key figure for which you want to
enable planning notes.
2. Select this key figure in the Key Figures tab.
3. Choose Edit.
4. In the Characteristics section, choose the Enable Planning Notes checkbox.

This means that planning notes can be created and displayed on any aggregation level of the key figure
down to its base planning level.
5. Optional: If you want to restrict creation and display of planning notes to higher aggregation levels, you can
select a different planning level in the Planning Level for Planning Notes field.

 Caution

The planning level you choose here must be a subset of the attributes from the key figure’s base
planning level. If you select a planning level that does not fulfill this requirement, you won’t be able to
(re-)activate your planning area.

For more information about the various uses for planning notes, see Planning Notes and Setting Up
and Managing Planning Notes.

6. Reactivate your planning area.

Related Information

Planning Notes
Setting Up and Managing Planning Notes

10.2.3 Configuration of Proportional Disaggregation

In the Planning Areas app, the configuration of proportional disaggregation depends on the combination of
values for several fields.

The Disaggregation Mode field controls the base disaggregation mode, which is either Equal Distribution or
Copy Value.

The value specified in the Proportionality field describes the data source of the proportional factors that are
used as weighting factors during proportional disaggregation.

Proportional disaggregation is available for both the Equal Distribution and Copy Value disaggregation modes.
The Proportionality field can take the values described in the table below.

Model Configuration Guide


Key Figures PUBLIC 111
Values of Proportionality Field

Value Description

No Proportional Disaggregation Values are disaggregated according to the disaggregation


mode.

Same Key Figure – Stored Values If the stored values of the same key figure are not 0, the ag­
gregated values are disaggregated proportional to them,
otherwise according to the disaggregation mode.

Same Key Figure – Calculated Values If the calculated values of the same key figure are not 0, the
aggregated values are disaggregated proportional to them,
otherwise according to the disaggregation mode. In this
case, a disaggregation expression is generated based on the
calculation rules during activation.

Other Key Figure – Stored Values If the stored values of the other key figure are not 0, the ag­
gregated values are disaggregated proportional to them,
otherwise according to the disaggregation mode.

Disaggregation Expression If the resulting values of the disaggregation expression are


not 0, the aggregated values are disaggregated proportional
to them, otherwise, according to the disaggregation mode.

If Other Key Figure – Stored Values is selected in the Proportionality field, the key figure against which the
disaggregation is to be done is available in the Key Figure for Proportionality field.

Each combination of the above settings in the Planning Areas app corresponds to a combination of settings in
the Configuration app. The tables below show how the different configurations are represented in the Planning
Areas app and the Configuration app respectively.

Configuration of Proportional Disaggregation in the Planning Areas app

Disaggregation Ex­ Key Figure for Propor­


Variant Disaggregation Mode Proportionality pression tionality

1 Equal Distribution No Proportional Disag­ Empty Empty


gregation

2 Equal Distribution Same Key Figure – Empty Empty


Stored Values

3 Equal Distribution Same Key Figure – Empty Empty


Calculated Values

4 Equal Distribution Other Key Figure – Empty <Other Key Figure ID>
Stored Values

5 Equal Distribution Disaggregation Expres­ <Expression> Empty


sion

Model Configuration Guide


112 PUBLIC Key Figures
Disaggregation Ex­ Key Figure for Propor­
Variant Disaggregation Mode Proportionality pression tionality

6 Copy Value No Proportional Disag­ Empty Empty


gregation

7 Copy Value Same Key Figure – Empty Empty


Stored Values

8 Copy Value Same Key Figure – Empty Empty


Calculated Values

9 Copy Value Other Key Figure – Empty <Other Key Figure ID>
Stored Values

10 Copy Value Disaggregation Expres­ <Expression> Empty


sion

Configuration of Proportional Disaggregation in the Configuration app

Variant Disaggregation Mode Disaggregation Expression

1 Equal Distribution Empty

2 Proportional if aggregated value is not zero; otherwise, Empty


equal distribution

3 Proportional if aggregated value is not zero; otherwise, Empty


equal distribution

4 Proportional if aggregated value is not zero; otherwise, <Other Key Figure ID>
equal distribution

5 Proportional if aggregated value is not zero; otherwise, <Expression>


equal distribution

6 Proportional if aggregated value is not zero; otherwise, Empty


copy value to

7 Proportional if aggregated value is not zero; otherwise, Empty


copy value to

8 Proportional if aggregated value is not zero; otherwise, Empty


copy value to

9 Proportional if aggregated value is not zero; otherwise, <Other Key Figure ID>
copy value to

10 Proportional if aggregated value is not zero; otherwise, <Expression>


copy value to

Model Configuration Guide


Key Figures PUBLIC 113
10.2.4 Conversion Configuration

You can specify a conversion key figure in the Convert Using field.

You can specify a key figure in the Convert Using field of key figures that are editable. The key figure you specify
can be stored or calculated.

The calculated key figure that you specify in the Convert Using field can't contain any aggregation in its
calculations and must meet either of the following requirements:

● It is defined on the same time profile level as the key figure. This means that their base planning levels have
the same time profile level as root time attribute.

 Example

In the SAP6 sample planning area the Statistical Forecast Price (STATISTICALFCSTPRICE)
key figure is converted using the EXCHANGERATE_UOMCONVERSION (EXCHANGERATEUOMCONVERSION)
key figure. Both key figures are defined on technical week level.

● It is defined on a less granular time profile level as the key figure, that is, its base planning level has a time
profile level as root time attribute that is less granular as the one specified as root time attribute in the
base planning level of the key figure. The data on the less granular time profile level must be readable on
the other time profile level, so, for example, if the key figure is defined on technical week level, it can be
converted using a key figure defined on months, quarters and years. If the key figure is defined on calendar
week level, it can't be converted using a key figure defined on monthly level, as a calendar week can fall into
two months.

 Example

In the SAPIBP1 sample planning area, the Unit Cost (COSTPERUNIT) key figure is defined on
technical week level and converted using the Exchange Rate by UOM
(EXCHANGERATEUOMCONVERSION) key figure which is defined on monthly level.

Related Information

Configuring Currency Conversion [page 381]


Configuring Unit of Measure Conversion [page 383]

10.3 Copying Key Figures

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the

Model Configuration Guide


114 PUBLIC Key Figures
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Note the following with respect to copying key figures:

● The associated planning area must have the status Active or Inactive.
● You can copy key figures only within the same planning area.
● The planning area must be within the customer space.
● When you copy a key figure, the new key figure has the same type (for example, when you copy a helper
key figure, the new key figure is also a helper key figure).

Steps
1. In the Planning Areas app, go to the Key Figures tab of the planning area or enter focus mode.
2. Select the key figure that you want to copy.
3. Choose Copy.
4. Enter the ID for the new key figure.
5. Choose Copy.
The source key figure is copied to the new key figure.
6. Review the new key figure and adjust the properties as required, adapt calculations, and remove any
calculations that you do not need.

10.4 Editing Key Figures

Context

You can change all properties of a key figure except the key figure ID.

You can change the name, description, display settings, and hashtag assignments of an active key figure. For all
other changes, the key figure must be inactive.

Editing a Key Figure on the Key Figures Tab

You can make changes to individual key figures in the Planning Areas app as follows:

1. Go to the Key Figures tab of your planning area.


2. Select the key figure that you want to change from the key figure worklist. The details of the key figures will
be displayed in full-screen display mode.
3. Choose Edit and make your changes.

Model Configuration Guide


Key Figures PUBLIC 115
4. Save your changes.
If you want to edit further key figures, navigate back to the key figure worklist to select the next item.

Editing Key Figures in Focus Mode

To edit several key figures in quick succession you can use the focus mode available in the Planning Areas app
as follows:

1. Enter focus mode by choosing the Focus Mode button on the Planning Area (details) screen. If needed,
switch to the Key Figures tab of Focus Mode (if you have navigated from the Planning Levels tab of the
Planning Area details screen).
2. Select the key figure that you want to edit from the key figure worklist on the left. The details of the key
figure will immediately appear in edit mode on the right-hand side with the worklist still displayed on the
left.
3. Make your changes.
4. Save your changes and proceed by selecting the next key figure that you want to edit from the worklist on
the left.

10.5 Creating External Key Figures

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

External key figures enable SAP Integrated Business Planning to work with special stored key figures where the
actual time series content comes from an external database. To use external key figures, the application-
relevant orders, for example, sales orders or purchase orders, have to be aggregated and integrated from ERP
to an SAP HANA database table inside the Integrated Business Planning system using a near real-time
integration mechanism. When you set up your planning model, you have to define an external key figure or key
figures referring to this table. Since the integration is continuous, the reference key figure data always contains
the latest aggregated entries from SAP ERP. Therefore, there is no need for manual update.

Model Configuration Guide


116 PUBLIC Key Figures
Steps

To create external key figures you have to do the following:

1. Go to the Planning Areas app.


2. Select the planning area and open it.
3. Enable the planning area for external time series and select an integration profile for your planning area.

 Note

An integration profile for a planning area and a profile for all master data types in this planning area
must be the same.

4. Save your changes.


5. Go to the Planning Levels tab, find the planning level you want to use and select an entry from Data Source
for External Key Figure Definition.

 Note

Make sure that a value has been selected for Data Source for External Key Figure Definition. Otherwise,
the planning level does not support external key figures on this base level.

6. Assign a reference column to each root attribute of the planning level using the Reference Column.
7. Click Save.
8. Go to the Key Figures tab and find the key figure you want to define as external.
9. Select the Stored checkbox.
10. Choose a reference column in the External Key Figure Quantity drop down which contains the time series
data for this key figure.
11. Click Save.

10.6 Decimal Places in Key Figure Values

In the Planning Areas app, you can define the number of decimal places you want to be displayed in analytics,
the Web-Based Planning app, and the Driver-Based Planning app for each key figure. If the number of decimal
places is not specified, the maximum possible value is used, which is 6 decimal places.

 Note

In the IBP Excel add-in, the EPM formatting sheet controls the display of numbers. The number of decimal
places specified in the display settings on the Key Figure tab of the planning area doesn't have any effect on
how the IBP Excel add-in displays the numbers.

The setting for decimal numbers also affects disaggregation for key figures that have aggregation mode SUM or
AVG. The information provided here refers only to such key figures.

When a user enters a key figure value in a planning view, or executes a batch process that involves
disaggregation, the system manages the values as follows:

Model Configuration Guide


Key Figures PUBLIC 117
● The disaggregated key figure values at the base planning level are always rounded to the configured
number of decimal places.
Rounding is done in the planning unit of measure. If the planning unit of measure is different from the base
unit of measure, and a conversion to the base unit of measure is needed, the rounded key figure value may
have a different number of decimal places than the configured number.
● The aggregation of the base planning level values is a key figure value that is also always rounded to the
configured number of decimals (when not taking conversion into account).
● The aggregation of the base planning level values is the same as the number entered by the user (provided
the number entered does not exceed the number configured).

 Example

You entered 2 decimal places for a key figure Demand.

Product group PG has 3 products: A, B, and C.

You enter a value of 10 for Demand at the aggregated planning level PG.

Result: After disaggregation, the key figure values at the base planning level are 3.33, 3.33, and 3.34 for the
3 products A, B, and C. The system arbitrarily decides which product gets 3.34.

You enter 12.456 for Demand at the aggregated planning level PG.

Result: After disaggregation, the key figure values at the base planning level are 4.15, 4.15, and 4.16 for the
3 products A, B, and C. This aggregates to 12.46 according to the configuration setting of 2 decimal places
for the key figure.

 Example

You entered 4 decimal places for a key figure Supply.

Product group PG has 3 products: A, B, and C.

You enter a value of 12.456 for Supply at the aggregated planning level PG.

Result: After disaggregation, the key figure values at the base planning level are 4.152, 4.152, and 4.152 for
the 3 products A, B, and C.

 Note

In some circumstances, taking the number of decimal places into account during disaggregation can affect
performance. So if you do not need this feature for a particular key figure, you can deactivate it by setting
the number of decimal places for the key figure to null in the Planning Areas app.

Model Configuration Guide


118 PUBLIC Key Figures
11 Key Figure Calculations

Context

Once you have created a key figure, you can add calculations to it. Note the following:

● All key figures that an end user is able to query from the user interface must have a calculation at REQUEST
level, because the system determines how to calculate the key figure starting from this calculation
● You can additionally define calculations that aggregate the key figure data from a lower base planning level
using an operator such as SUM, MIN, or MAX.
● You can also define calculations across key figures, for example, KF1 plus KF2.
● All key figure calculations have calculation inputs, which can be marked as stored or non-stored. The
calculation chain (from REQUEST level to the bottom) for every key figure must end in a stored key figure.
● The calculation shouldn’t involve a division by zero for any actual key figure value. Division by zero causes a
numeric overflow condition in the system and therefore needs to be avoided. For example, the calculation
KF1@PL1 = KF2@PL1 / KF3@PL1 involves a division by zero if KF3@PL1 takes the value 0. You can avoid
that by including an if condition in your calculation as follows: KF1@PL1 = IF(KF3@PL1=0, 0, KF2@PL1 /
KF3@PL1).

 Example

KF1@PL1 = KF2@PL1 plus KF3@PL1 , Key figure 2 (KF2) is a stored input key figure and key figure
3 (KF3) is a calculated input key figure. The calculated chain for key figure 3 (KF3) must finish with
a stored key figure (such as KF3@PL1 = SUM(KF4@PL2), where KF4@PL2 is a stored key figure).

11.1 Adding Calculations to Key Figures

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

 Note

You can copy or delete key figures with L script, but for modification, please contact SAP. For more
information, see 2298382 .

1. Go to the Key Figures tab in the Planning Areas app.


2. Select the key figure to which you want to add a calculation and open it for editing.

Model Configuration Guide


Key Figure Calculations PUBLIC 119
3. Choose the Add Calculation Definition button.
4. Select the planning level for the left side of the calculation. This can be a planning level that does not have a
calculation yet.
5. Place the cursor on the expression editor and type your calculation expression. When you enter the "
character (double quotes), a dropdown menu appears, from which you can select the desired key figure.
For example, enter the following: SUM("SALESFORECASTQTY@PERPRODCUS")).
To add a simplified key figure calculation, start typing IBP and choose the function you want to use from
the dropdown. Then, enter the parameters according to your modeling requirements.

 Note

Each time you activate a planning area, the system generates a combined graph of all calculations of
the planning area. For this graph to be valid, and the activation be successful, certain requirements
apply for the calculations:
○ A calculation that has 1 or 2 input key figures is valid.
○ A calculation that has input key figures from 1 or 2 planning levels can be valid, depending on the
structure of the graph that is generated during activation.
If a calculation turns out to be an invalid calculation, activation will fail. Rework the calculation, and
activate the planning area again.
○ A calculation that includes 3 or more planning levels is invalid.
If one key figure is a stored input, and the other is a calculated input from the same planning level,
the system considers it two different planning levels.

If a calculation is invalid, break it down into calculations that have one or two input key figures only. You
can consider introducing helper key figures.

Each change you make in a calculation results in the graph being completely re-generated with the next
activation of the planning area. It may happen that a change in a calculation makes a calculation of a
different key figure invalid. Study the activation log of the planning area to find out if you should change
a calculation.

6. Once you have entered the expression, choose Validate, and verify that the correct inputs have been
selected by the system.
The system automatically marks the key figures @ planning level that are used in the expression as inputs
in the Input Key Figures dialog.
7. Click OK.
If your expression is correct, it will change color from black to green (planning level) and blue (key figure).
This indicates that it is validated. Otherwise, you receive a warning message.
8. Once your expressions are correct, save your changes.

 Example

This example illustrates how to create a calculation for SALESFORECASTQTY. At request level, the
calculation expression aggregates (SUMS) the stored SALESFORECASTQTY.

The system creates a request level calculation when a key figure is created. The following procedure
shows how to add the above calculation for SALESFORECASTQTY:
1. Click the Add Calculation Definition button.
2. Select the planning level for the left side of the calculation.

Model Configuration Guide


120 PUBLIC Key Figure Calculations
3. Place the cursor on the expression editor and type your calculation expression. When you enter the
" character (double quotes), a dropdown menu appears, from which you can select the desired key
figure. For example, enter the following: SUM("SALESFORECASTQTY@PERPRODCUST").
4. Once you have entered the expression, choose Validate and verify that the correct inputs have been
selected by the system.
The system automatically marks the key figures @ planning level that are used in the expression as
inputs in the Input Key Figures dialog.
5. Define the Input key figures as shown in the table below.

Input Key Figure Stored

SALESFORECASTQTY@PERPRODCUST X

6. Click OK.
If your expression is correct, it will change color from black to green (planning level) and blue (key
figure). This indicates that it is validated. Otherwise, you receive an error message.
7. Once your expressions are correct, save your changes.

Related Information

SAP Note 2298382

11.2 Calculation Graphs


A calculation graph represents a key figure's calculation definitions at different planning levels, and their input-
output relationships.

A key figure can have calculations at many planning levels. Calculations are the nodes of the graph, and their
input-output connections are the arcs. Visualizing a complex calculation graph helps when checking or
changing the calculations: their definitions, planning levels, or inputs.

Use the Key Figure Calculations app to display the complete calculation graph of one or more key figures in a
planning area. You can display either the inactive or the active instance of the calculation graph. The active
instance is a complete and consistent calculation graph, otherwise it couldn't have been activated. The inactive
instance includes the changes since the last activation (if there has been an activation), and may not be
complete and consistent.

After you have selected the planning area and the key figure, you can display the calculation graph, the where-
used graph or filter blocks within a calculation graph:

● Choose Calculation Graph Calculations to see the calculation definitions and how they are built on
each other.
● Choose Calculation Graph Root Attributes to see the input-output relationships, such as which root
attributes from the input planning levels are needed in the output planning level, which ones are the basis
for aggregation, or which attributes form the base of a join.

Model Configuration Guide


Key Figure Calculations PUBLIC 121
● Choose Where-Used Graph to display all the calculations that use the selected calculation as a direct or
indirect input. You can switch between displaying calculation definitions or root and join attributes here as
well.
For more information, see Where-Used Graphs [page 418].
● Choose Filter Blocks to see which attributes you can use for effective filtering and where filter blocks are
raised.
For more information, see Filter Blocks [page 420].

 Note

If you want to view the calculation graph of a specific key figure that you have selected in the Planning Areas
app, you can navigate directly to the Key Figure Calculations app using the Show Graph button available in
the Planning Areas app.

The Key Figure Calculations app also provides information about the type of the node. Depending on the type of
the node, the incoming arc arrow has a specific color:

● Light Blue: Aggregation


In this relationship between the input and output nodes, there is one input planning level.
The output data set is a subset of the input data set. It contains all records from the input data set that are
unique for a combination of values of the root attributes of the output. It also contains aggregated records
for those input records that are not unique: one record for each combination. The records are aggregated
using the function in the calculation definition (SUM, AVG, MIN, MAX, COUNT) resulting in one record in the
output data set.
● Medium Blue: Simplified Key Figure Calculations
In this relationship, there is a simplified key figure calculation between the input and output nodes. The
following simplified calculations are available:
○ Cumulative aggregation (IBP_CAGGR)
○ Rolling aggregation (IBP_RAGGR)
○ Dynamic rolling aggregation (IBP_DYNAMIC_RAGGR)
○ Last period aggregation (IBP_LPA)
○ Period shift (IBP_PERIODSHIFT)
○ Weighted average (IBP_WEIGHTEDAVG)
○ Coverage (IBP_COVERAGE)
○ Calendar (IBP_CALENDAR)
○ Generate missing time periods (IBP_GENERATE_MISSING_TP)
For more information, see Simplified Key Figure Calculations [page 136].
● Orange: Inner join
In this relationship between the input and output nodes, there are two input planning levels.
The output of the inner join is a set of records that combines records from the two input data sets. The
output records are the ones have the same combination of values for the join attributes in both data sets.
For more information about inner join, see Calculations Across Different Planning Levels [page 132].
● Teal: Projection
In this relationship between the input and output nodes, there can be two input planning levels involved,
provided they share the same set of root attributes.
The output of the projection is made by executing an operation on the input (KF2 = KF1 * 2), or with all
inputs (KF3 = KF1 - KF2) for each combination of values of the root attributes.
● Purple: Union
In this relationship between the input and output nodes, there is one input planning level.

Model Configuration Guide


122 PUBLIC Key Figure Calculations
The output data set contains all records from the input data sets. If there is no value for one of the input
key figures in the input data set for a given combination of values of the root attributes, NULL is stored in
the output data set for the given key figure.
● Pink: L Script
In this relationship between the input and output nodes, there is one input planning level.
The calculation of the output node is not a calculation expression, but an L script.

To display detailed information for a node (about the calculation definitions, planning levels, and key figures),
call up the Node Info.

To display and change the planing level of the calculation, the key figure, or the base planning level of the key
figure, you can navigate from this app directly to the corresponding model entity in the Planning Areas app.

11.3 Commonly Used Functions and Expressions

Operators

The following operators are available:

+, -, *, /, >, <, =, >=, <=, !=, **, %, AND, OR, NOT

Operator Details Example

% Modulus operator. Returns the remain­ KF1@PERPRODLOC %


der, for example, 17%5 = 2. KF2@PERPRODLOC

** Power operator KF@PERPRODLOC =


KF1@PERPRODLOC * ((1/
KF2@PERPRODLOC)**0.5 )

AND Boolean operator that returns a value of KF1@PERPRODLOC = 0 AND


TRUE if both its operands are true, and KF2@PERPRODLOC = 0
FALSE otherwise.

OR Boolean operator that returns a value of KF1@PERPRODLOC = 0 OR


TRUE if any of its operands are TRUE, KF2@PERPRODLOC = 0
and FALSE otherwise.

Aggregations

The following aggregation methods are available:

● SUM
● AVG

Model Configuration Guide


Key Figure Calculations PUBLIC 123
● COUNT
● MIN
● MAX

 Note

The same key figure must be the input key figure and the output key figure of the aggregations.

In case MIN and MAX have several input key figures, there is no aggregation; they are functions
returning the lowest and highest values of the input key figures. For more information, see the table
below and section MIN and MAX with Multiple Inputs [page 128].

Standard Functions

Syntax Details Example

IF(intarg , arg2, arg3) Return arg2 if intarg is considered CAPACITYOVERLOADS@PERLOCRE


true (not equal to zero), else return S =
arg3. IF(“CAPADEMANDUTILPCT@PERL
OCRES”> 1,1,0)

ISNULL(arg1) Return 1 (= true), if arg1 is set to null. MARKETINGFORECASTQTY@PERPR


ODCUST =
IF(ISNULL(MARKETINGFORECAS
TQTY@PERPRODCUST),
SALESFORECASTQTY@PERPRODCU
ST,
MARKETINGFORECASTQTY@PERPR
ODCUST)

CASE(arg1, default) Return value1 if arg1 == cmp1, CASE(SELECTEDOPTION@PERPRO


value2 if arg1 == cmp2, and so D, 1, KF1@PERPROD, 2,
CASE(arg1, cmp1, value1,
on, default if there is no match. KF2@PERRPROD,KF@PERPROD)
cmp2, value2, ...,
default)

ABS(arg) Returns arg, if arg is positive or zero, IF(ABS(SUPPLYREV@PERPRODFM


else –arg. L -
CONSENSUSDEMANDREV@PERPROD
FML)/
CONSENSUSDEMANDREV@PERPROD
FML > 0.2,1,0)

Model Configuration Guide


124 PUBLIC Key Figure Calculations
Syntax Details Example

ROUND(double, int) ROUND(123.456, 0) = 123 KF1@PERPRODLOCSRC =


ROUND(KF@ PERPRODLOCSRC,
ROUND(123.456, 1) = 123.5
0)
ROUND(-123.456, 1) =
-123.5

ROUND(123.456, -1) = 120

ROUNDDOWN(double, int) ROUNDDOWN(123.456, -1) = KF1@PERPRODLOCSRC =


120 ROUNDDOWN(KF@
PERPRODLOCSRC, 0)
ROUNDDOWN(-123.456, -1) =
-130

FLOOR(double) FLOOR(35.1) = 35 KF1@PERPRODLOC = FLOOR(KF@


PERPRODLOC)

CEIL(double) CEIL(35.1) = 36 KF1@PERPRODLOC = CEIL(KF@


PERPRODLOC)

LTRIM(string) Remove a whitespace prefix from a


string. The whitespace characters may
LTRIM(string,string)
be specified in an optional argument.

RTIM(string) Remove trailing whitespace from a


string. The whitespace characters may
RTIM(string,string)
be specified in an optional argument.

TRIM(string) Remove whitespace from the beginning


and end of a string.
TRIM(string,string)

UPPER(arg1) Returns arg1 in upper case KF1@PERPRODCUST =


IF(UPPER(''ATTR1'') =
''APPROVED'',
"KF2@PERPRODCUST", NULL)

MIN(arg1,arg2,...) In the case of several input key figures, MINCAPACITY@MTHPRODLOC =


there is no aggregation; it returns the MIN("CAPACITYMORNING@MTHPR
lowest value of the input key figures. ODLOC",
"CAPACITYAFTERNOON@MTHPROD
LOC",
"CAPACITYNIGHT@MTHPRODLOC"
)

Model Configuration Guide


Key Figure Calculations PUBLIC 125
Syntax Details Example

MAX(arg1,arg2,...) In the case of several input key figures, MAXCAPACITY@MTHPRODLOC =


there is no aggregation; it returns the MAX("CAPACITYMORNING@MTHPR
highest value of the input key figures. ODLOC",
"CAPACITYAFTERNOON@MTHPROD
LOC",
"CAPACITYNIGHT@MTHPRODLOC"
)

 Example

Sample configuration for aggregation of standard deviation

Take the sum of the squares; then calculate the square root of the total:

1. Calculate the squares:


1. Square the values:
HKF1@PL = PROPAGATEDDEMANDSTDEV@PL ** 2
2. Sum the squares:
HKF1@REQUEST = SUM(HKF1@PL)
2. Calculate the square root of the total:
PROPAGATEDDEMANDSTDEV@REQUEST= HKF1@REQUEST ** 0.5

 Example

ISNULL

The ISNULL condition works only when an underlying time series record exists for the planning object.

Imagine that Sales Forecast Quantity and Marketing Forecast Quantity are the stored key figures for
planning level PERPROD.

Planning Object Period Key Figure: Sales Forecast Key Figure: Marketing
Qty Forecast Qty

P1 Jan 2018 100

P1 Mar 2018 100

With the above data, IF(ISNULL(SALESFCSTQTY),1,0) exhibits the following behavior:

Period ISNULL Value Notes

Jan 2018 0 January 2018 has the value “100”.

Feb 2018 Not evaluated The planning object for the time pe­
riod February 2018 does not exist.

Model Configuration Guide


126 PUBLIC Key Figure Calculations
Period ISNULL Value Notes

Mar 2018 1 Though there is no value for Sales


Forecast Quantity, the Marketing
Forecast Quantity key figure (for the
same planning level) has a valid value.
Therefore, a record exists in the time
series for this planning object.

Sample Expressions

Key Figure Calculation Expression

Actuals Price ACTUALSPRICE@REQUEST =


IF(“ACTUALSQTY@REQUEST”=0,0,
“ACTUALSREV@REQUEST”/
“ACTUALSQTY@REQUEST”)

Capacity Overloads CAPACITYOVERLOADS@PERLOCRES =


IF(“CAPADEMANDUTILPCT@PERLOCRES”> 1,1,0)

Capacity Usage CAPAUSAGE@PERPRODLOCRES =


“CAPADEMAND@PERPRODLOCRES”*“(IF(CAPASUPP
LYPERDEMAND@PERLOCRES”>1,1,
“CAPASUPPLYPERDEMAND@PERLOCRES”))

Marketing Forecast Profit MARKETINGFORECASTPROFIT@PERPRODCUST =


“MARKETINGFORECASTREV@PERPRODCUST”-
“HMARKETINGFORECASTCOST@PERPRODCUST”

Marketing Forecast Quantity MARKETINGFORECASTQTY@PERPRODCUST =


IF(ISNULL("MARKETINGFORECASTQTY@PERPRODC
UST"), "SALESFORECASTQTY@PERPRODCUST",
"MARKETINGFORECASTQTY@PERPRODCUST")

Constrained Versus Consensus Demand Revenue CONSTRAINEDVSCONSENSUSREV@PERPRODFML =


IF(ISNULL("CONSENSUSDEMANDREV@PERPRODFML
")OR
"CONSENSUSDEMANDREV@PERPRODFML"=0,0,
IF(ABS("SUPPLYREV@PERPRODFML" -
"CONSENSUSDEMANDREV@PERPRODFML")/"CONSEN
SUSDEMANDREV@PERPRODFML" > 0,2,1,0))

Model Configuration Guide


Key Figure Calculations PUBLIC 127
Key Figure Calculation Expression

Supply Quantity SUPPLYQTY@PERPRODLOC =


IF("HPROJECTEDINVENTORYQTY@PERPRODLOC">=
0, "DEPENDENTDEMANDQTY@PERPRODLOC",
"DEPENDENTDEMANDQTY@PERPRODLOC"+
"HPROJECTEDINVENTORYQTY@PERPRODLOC")

Bill Cost per Area Demand Revenue BILL_COST_PER_AREA@BSCIRTRSCFRCTOUFRUTO2


L3AVG_A =
IF(isnull("ASSETAREA5@BSCIRTRSCFRCTOUFRU
TO2L3AVG_A") or
"ASSETAREA5@BSCIRTRSCFRCTOUFRUTO2L3AVG_A
"=0,0,"BILL_COST5@BSCIRTRSCFRCTOUFRUTO2L
3AVG_A"/"ASSETAREA5@BSCIRT

 Note

In key figure calculations, column engine expressions are used. For differences between the column engine
and the SQL engine, see 2780505 .

For more information about column engines, see Using Column Engine Functions in the SAP HANA
Modeling Guide.

Related Information

Simplified Key Figure Calculations [page 136]

11.4 MIN and MAX with Multiple Inputs


The MIN and MAX functions can have several input key figures.

In the case of several input key figures, there is no aggregation in the MIN and MAX functions; the output is
simply the lowest or highest value of the input key figures. If any of the key figure values is NULL, both the
minimum and maximum will be NULL as well.

The attributes of the output planning level must be the union of the attributes of the input planning levels.

Example

In this example, the MIN and MAX functions have three input key figures: CAPACITYMORNING,
CAPACITYAFTERNOON, and CAPACITYNIGHT. First, we calculate the minimum and maximum values on

Model Configuration Guide


128 PUBLIC Key Figure Calculations
machine/production line at plant level. At this step, there is no aggregation; it is a function with multiple
inputs. The output is simply the lowest and highest value of the input key figures.

MINCAPACITY@REQUEST = MIN("MINCAPACITY@MTHPRODLOC")

MINCAPACITY@MTHRESLOC = MIN("CAPACITYMORNING@MTHPRODLOC",
"CAPACITYAFTERNOON@MTHPRODLOC", "CAPACITYNIGHT@MTHPRODLOC")

MAXCAPACITY@REQUEST = MAX("MAXCAPACITY@MTHPRODLOC")

MAXCAPACITY@MTHRESLOC = MAX("CAPACITYMORNING@MTHPRODLOC",
"CAPACITYAFTERNOON@MTHPRODLOC", "CAPACITYNIGHT@MTHPRODLOC")

Then we aggregate to machine level. The output of the MIN and MAX functions will be the aggregation of the
minimum and maximum values calculated before.

11.5 COUNT

Use the COUNT aggregation to count how many planning object combinations have values for the given time
period.

To count the values of the input key figure, use the COUNT aggregation in the calculation definition of key figures
in the Planning Areas app: COUNT(<KEY FIGURE@PLANLEVEL>)

COUNT checks and counts how many planning object combinations have values for the given time period. If the
input key figure has data uploaded for a given time period at the base planning level, the result of the COUNT
aggregation is 1, otherwise it is 0.

The COUNT aggregation can be used at a planning level and REQUEST level as well.

Model Configuration Guide


Key Figure Calculations PUBLIC 129
Example

COUNTKF@REQUEST = COUNT("COUNTKF@MTHPRODLOC")

COUNTKF@MTHPRODLOC = "STOREDKF@MTHPRODLOC"

In the example, we calculate COUNT for each product/location combination. The count key figure can have the
following values:

● If the stored key figure has data uploaded for a time period, the value of the count key figure is 1.
● If the stored key figure doesn't have data uploaded, that is its value is NULL, the value of the count key
figure is 0.
● If a specific combination does not exist (for example, Shanghai/Phone X/Feb 2020), the count key figure is
not calculated for this combination.

Then, we remove the product from the planning view and aggregate to location level.

The value of the count key figure is aggregated as well.

You can use the COUNT aggregation as a parameter in the following simplified key figure calculations:

● Cumulative Aggregation [page 137]


● Rolling Aggregation [page 143]
● Dynamic Rolling Aggregation [page 146]

Modeling Requirements for the COUNT Aggregation

● The COUNT aggregation must have exactly one parameter, which is the input key figure.
● The output key figure of the COUNT aggregation cannot be stored.
● The COUNT aggregation cannot be embedded in another expression.
● In calculation definitions that only have a COUNT(<KEY FIGURE@PLANLEVEL>) expression on the input
side, the attributes of the output planning level must be the same as or a subset of the attributes of the
input planning level.

Model Configuration Guide


130 PUBLIC Key Figure Calculations
11.6 Stored Key Figure Calculation

Context

Stored key figures refer to key figures that are stored in the underlying database tables and that are either
imported from a source system or else are entered manually in a planning view in the IBP Excel add-in.

Examples include SALESFORECASTQTY and ACTUALSQTY.

The following apply to stored key figure calculations:

● The associated key figure is marked as Stored (and can also be set to Editable)
● The key figure has only one request level calculation, but can also have some other calculations.
● The input key figure for the calculation is the same key figure at base planning level.

Example: Calculation Definition for Actuals Qty from SAPIBP1 Sample Model

ACTUALSQTY@REQUEST = SUM( "ACTUALSQTY@WKPRODLOCCUSTUOMTO" )

Note that the inputs for this calculation have ACTUALSQTY as a stored value:

Key Figure Select as Input Stored Value

ACTUALSQTY@PERPRODCUST X X

11.7 Calculations at Request Level

Context

In request level calculations, the inputs for the calculation are also at request level. (“Request level”) is a built-in
planning level that represents the level at which a user looks at the data [in the Microsoft Excel client or in
Analytics].) When a key figure of this type is called at request level, the key figures in the calculation are first
calculated at request level. The results are then returned to the key figure calculation. Request level
calculations are typically used for calculation of ratios, prices, and cost. The following example shows the
calculation of sales forecast price, which is a weighted average calculation:

 Example

Request Level Calculation: Sales Forecast Price: SALESFORECASTPRICE@REQUEST =


IF(“SALESFORECASTQTY@REQUEST”=0,0,“SALESFORECASTREV@REQUEST”/
“SALESFORECASTQTY@REQUEST”)

Model Configuration Guide


Key Figure Calculations PUBLIC 131
Note the following:

● Request level calculations must have aggregation mode Custom.


● Aggregation methods such as SUM and MIN are not allowed for request level calculations. Only request level
inputs are allowed.
● The inputs for request level calculations are not stored.

Input Key Figures: Request Level Calculation Sales Forecast Price

Key Figure Select as Input Stored Value

SALESFORECASTREV@REQUEST √

SALESFORECASTQTY@REQEST √

11.8 Calculations Across Different Planning Levels

In SAP Integrated Business Planning, you can easily perform calculations across different planning levels.
Calculations are done in real time. For example, based on changes to the sales forecast or to consensus
demand, calculations are done for the complete supply side and for finance.

 Note

When a key figure contains calculations at different planning levels, the attributes of the output planning
level must match the union of all the attributes of the input planning levels. The calculation is going to be an
inner join, that is, the output records will be the ones that have the same combination of values for the join
attributes in both input planning levels. Join attributes are attributes that both input planning levels
contain, and they are root in at least one of them. All the other common attributes are defined by the join
attributes. This means that if you want to get a result for all possible attribute value combinations, you need
to ensure that both input key figures contain the same value combinations for the join attributes.

If two input planning levels do not have common attributes, the output records will be the cross join of the
two input data sets. We do not recommend this calculation type, as it might increase the data volume
significantly.

Model Configuration Guide


132 PUBLIC Key Figure Calculations
The following figure shows an example for the Total Demand Value key figure from the SAPIBP1 sample
planning area:

Calculation Graph of Total Demand Value

TOTALDEMANDVAL@WKPRODLOCCURR is calculated from DEPENDENTDEMAND@WKPRODLOC and


COSTPERUNIT@WKPRODLOCCURR.

For the calculation shown below, the same attributes must be defined for the planning level WKPRODLOCCURR
(root attributes: PERIODID5, PRDID, LOCID, and CURRID plus non-root attributes) as for the planning levels
WKPRODLOC (root attributes: PERIODID5, PRDID, and LOCID plus non-root attributes) and WKPRODLOCCURR
(root attributes: PERIODID5, PRDID, LOCID, and CURRID plus non-root attributes) combined.

Similarly, the WKPRODLOCCURRCURRTO output planning level must contain all the attributes (root attributes:
PERIODID5, PRDID, LOCID, CURRID, and CURRTOID, non-root attributes: PERIODID3 and others) from the
MTHCURRCURRTO (PERIODID3, CURRID, and CURRTOID plus non-root attributes) and the WKPRODLOCCURR
(PERIODID5, PRDID, LOCID, and CURRID plus non-root attributes) input planning levels.

Calculation of Total Demand Value

TOTALDEMANDVAL@REQUEST = SUM("TOTALDEMANDVAL@WKPRODLOCCURRCURRTO")

TOTALDEMANDVAL@WKPRODLOCCURR = "DEPENDENTDEMAND@WKPRODLOC" *
"COSTPERUNIT@WKPRODLOCCURR"

TOTALDEMANDVAL@WKPRODLOCCURRCURRTO = "EXCHANGERATE@MTHCURRCURRTO" *
"TOTALDEMANDVAL@WKPRODLOCCURR"

Model Configuration Guide


Key Figure Calculations PUBLIC 133
Input Key Figures for the Calculation of Total Demand Value

● Calculation to sum up the total demand value at request level:


TOTALDEMANDVAL@REQUEST = SUM("TOTALDEMANDVAL@WKPRODLOCCURRCURRTO")

Input Key Figures Use Stored Value

TOTALDEMANDVAL@WKPRODLOCCURRCURRTO

● Calculation of the total demand value in a currency other than the base currency:
TOTALDEMANDVAL@WKPRODLOCCURRCURRTO = "EXCHANGERATE@MTHCURRCURRTO" *
"TOTALDEMANDVAL@WKPRODLOCCURR"

Input Key Figures Use Stored Value

EXCHANGERATE@MTHCURRCURRTO Yes

TOTALDEMANDVAL@WKPRODLOCCURR

● Calculation of the total demand value from the dependent demand quantity and the unit cost in base
currency:
TOTALDEMANDVAL@WKPRODLOCCURR = "DEPENDENTDEMAND@WKPRODLOC" *
"COSTPERUNIT@WKPRODLOCCURR"

Input Key Figures Use Stored Value

DEPENDENTDEMAND@WKPRODLOC Yes

COSTPERUNIT@WKPRODLOCCURR Yes

11.9 Defaulting to Another Key Figure

Context

You can configure key figures in such a way that a key figure calculation defaults to another key figure value
based on a condition. You can also define a chain of key figures, where a key figure defaults to another
defaulting key figure.

 Note

Chaining is not restricted to defaulting. As all definitions of key figure are iterative, you can define a chain
for any calculations.

Model Configuration Guide


134 PUBLIC Key Figure Calculations
 Example

In this example, the key figure Sales Forecast Qty is defined as defaulting key figure for the key figure
Consensus Demand Qty. If the data value for Consensus Demand Qty is null or empty, the system
defaults to Sales Forecast Qty.

As there is no stored value for Consensus Demand Qty, the value defaults to the value for Sales Forecast
Qty: 2000.

Example

Note the following:

● If there is no stored data value for Consensus Demand Qty, then the value “2000” from Sales
Forecast Qty is used.
● If you enter a value, such as “1000” for Consensus Demand Qty or save a value from planning views, this
new value will override the default value.
● To revert to a calculated value, simply set the value to null (empty) in the planning view and save your
entries.

Model Configuration Guide


Key Figure Calculations PUBLIC 135
Steps

1. Create a key figure, for example, CONSENSUSDEMANDQTY at base planning level PERPRODCUST
2. Mark the key figure as Stored, Editable, and Calculated.
3. Define a request level calculation and a calculation for the base planning level:
○ Request level calculation:
CONSENSUSDEMANDQTY@REQUEST = SUM(“CONSENSUSDEMANDQTY@PERPRODCUST”)
○ Calculation for the base planning level:
CONSENSUSDEMANDQTY@PERPRODCUST = IF(ISNULL(“CONSENSUSDEMANDQTY@PERPRODCUST”
“DEMANDPLANNINGQTY@PERPRODCUST”, “CONSENSUSDEMANDQTY@PERPRODCUST”)

 Note

Note that the input key figure can be either a stored or a calculated key figure. In this example, both inputs
are stored key figures:

Key Figure Selected as Input Stored Value

CONSENSUSDEMAND@PERPRODCUST √ √

DEMANDPLANNINGQTY@PERPRODCUST √ √

 Note

Since the key figure is marked as both stored and calculated, on activation, the system generates a
defaulting expression as follows:

IF(ISNULL(“CONSENSUSDEMANDQTY@PERPRODCUST”), “DEMANDPLANNINGQTY@PERPRODCUST”,
“CONSENSUSDEMANDQTY@PERPRODCUST”)

The system generates this expression provided the inputs for the calculation are stored key figures that are
at the same base planning level as the Key figure itself.

11.10 Simplified Key Figure Calculations

The following simpified key figure calculations are available:

● IBP_CAGGR to perform cumulative aggregation across periods


For more information, see Cumulative Aggregation [page 137].
● IBP_RAGGR to aggregate key figures across several time periods, for a specified time window
For more information, see Rolling Aggregation [page 143].
● IBP_DYNAMIC_RAGGR to aggregate key figures across several time periods defined by attributes or key
figures
● For more information, see Dynamic Rolling Aggregation [page 146].
● IBP_LPA to perform last period aggregation for a given time period

Model Configuration Guide


136 PUBLIC Key Figure Calculations
For more information, see Last Period Aggregation [page 139].
● IBP_PERIODSHIFT to shift key figure values by time periods
For more information, see Period Shift [page 152].
● IBP_WEIGHTEDAVG to calculate weighted average for a key figure.
For more information, see Weighted Average [page 156].
● IBP_COVERAGE to calculate how many days or weeks the calculated projected stock will last based on the
planned demand.
For more information, see Coverage [page 162].
● IBP_CALENDAR to show working and non-working days by using values imported from SAP ERP calendars.
For more information, see Calendar [page 169].
● IBP_GENERATE_MISSING_TP to generate missing time periods for the calculation horizon defined by the
parameters of the function.
For more information, see Generate Missing Time Periods [page 173].

To add a simplified key figure calculation to a key figure, go to the Planning Areas app, and select your planning
area and key figure. Start typing IBP in the expression editor, and choose the function you want to use from the
dropdown. Then, enter the parameters as described in the respective sections below.

 Note

You cannot use these IBP functions in the calculation graph - at base planning level and below - of a key
figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use the IBP functions in the calculation graph of a supply or forecast operator:

● Use these functions in calculations at planning levels other than the base planning level of the key
figure in question.
● Copy the result of these functions to another key figure and use it as the input or output of the supply
or forecast operator.

11.10.1 Cumulative Aggregation

Cumulative aggregation is a chain of successive aggregations across periods. You can use the IBP_CAGGR
function to configure a cumulative aggregation in one step.

Cumulative aggregation makes it easier to model typical cross-period calculations, such as projected stock,
year-to-date and year-to-go calculations, or cumulative average.

To create a cumulative aggregation calculation, use the IBP_CAGGR function like any other function (for
example, SUM or MAX) in the calculation editor.

 Note

Cumulative aggregation imposes filter blocks in the calculation graph of a key figure, which might increase
the runtime of queries. For more information, see Filter Blocks [page 420].

 Caution

For the cumulative aggregation to calculate correct values, the input key figure must have values for all time
periods to be aggregated.

Model Configuration Guide


Key Figure Calculations PUBLIC 137
Make sure that key figure values exist for all periods to be aggregated. If this is not the case, upload NULL
values for the periods where key figure values are missing.

 Example

YTDATE_DEMAND@PERPRODCUST =
IBP_CAGGR("DEMAND@PERPRODCUST",''SUM'',''FORWARD'',''PASTCURRENT'',6)

This is a year-to-date calculation, where the values of the DEMAND key figure at the PERPRODCUST planning
level ("DEMAND@PERPRODCUST") from the past and current periods (''PASTCURRENT'') are summed up
(''SUM''), forward in time (''FORWARD''), with the cross-period aggregation restarting at the beginning
of each year (let's assume that year is time profile level 6 in the time profile assigned to the planning area).

The IBP_CAGGR function has four mandatory parameters and one optional parameter.

 Note

The values of the 2nd, 3rd, and 4th parameters must be surrounded by two pairs of single quotation marks.
A double quotation mark instead of two single quotation mark will result in an error during activation.

1. Input key figure at the input planning level (mandatory parameter)


Format: INPUTKEYFIGURE@INPUTPLANNINGLEVEL. The parameter value must be surrounded by double
quotation marks.
2. Aggregation mode (mandatory parameter)
Possible values: SUM, AVG, MIN, MAX, and COUNT.
This parameter specifies if a sum, an average, the minimum, or maximum should be calculated over the
periods, or the count of the values should be taken forward.
3. Direction of the cumulative aggregation (mandatory parameter)
Possible values:
○ FORWARD: The calculation will aggregate the key figure values starting from a start period forward in
time, for example, in a cumulative sum, cumulative average or in a year-to-date calculation.
○ BACKWARD: The calculation will aggregate the key figure values starting from an end period backward in
time, for example, in year-to-go calculations.
4. Horizon of the cumulative aggregation (mandatory parameter)
If separate key figures are used to calculate the past, present, and future values, this parameter filters the
values, thus improves performance in the planning view.
Possible values: PAST, PASTCURRENT, PASTCURRENTFUTURE, CURRENT, CURRENTFUTURE, and FUTURE.
If you use one key figure for cumulative aggregation, regardless of the horizon, use the
PASTCURRENTFUTURE value for this parameter.
5. Time profile level at which the cumulative aggregation should restart (optional parameter)
Specifies a time profile level where cumulative aggregation should restart.
For example, you aggregate monthly values, and want to restart the aggregation at the start of the year. In
this case, provide the time profile level of the year as the value of this parameter.
Possible values: numbers (positive integers) that correspond to the time profile levels of the time profile
that is assigned to the planning area. Quotation marks mustn't surround this parameter value.

 Note

You cannot use the IBP_CAGGR function in the calculation graph - at base planning level and below - of a
key figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use IBP_CAGGR in the calculation graph of a supply or forecast operator:

Model Configuration Guide


138 PUBLIC Key Figure Calculations
● Use IBP_CAGGR in calculations at planning levels other than the base planning level of the key figure in
question.
● Copy the result of the IBP_CAGGR function to another key figure and use it as the input or output of the
supply or forecast operator.

 Note

When you define a cumulative aggregation, keep in mind the following:

● The calculation must have one input only, which is the input key figure in the calculation expression.
● The input and the output planning levels must be identical, and they cannot be REQUEST level.
● When a calculation graph includes a cumulative aggregation, the topmost key figure in the calculation
graph mustn't be editable.

For more information about modeling requirements regarding cummulative aggregation, see section
Checks for Cummulative Aggregation in Key Figures [page 279].

Related Information

Cumulative Sum, Cumulative Average, Minimum or Maximum [page 394]


Year-To-Date and Year-To-Go Calculations [page 396]
Projected Stock Calculations [page 397]
Planning Areas [page 274]

11.10.2 Last Period Aggregation

Use last period aggregation to display the key figure value for the last period in a given time period (for
example, the last month of a quarter or the last month of a year). You can use the IBP_LPA function to
configure last period aggregation in one step.

To use last period aggregation, use the IBP_LPA function in the calculation definiton of key figures in the
Planning Areas app: IBP_LPA("INPUTKFID@INPUTPLEVEL").

Last period aggregation must have exactly one input parameter, which is the key figure to be aggregated. This
key figure must be the same as the input of the calculation definition. The input key figure can be stored and
calculated as well. You cannot use IBP_LPA function without an input key figure as no defualt value is provided.
The result of last period aggregation is written to the output key figure.

Last period aggregation cannot be used in a REQUEST level calculation.

For more information about modeling requirements regarding last period aggregation, see section Checks for
Last Period Aggregation in Key Figures [page 279].

There are two ways to calculate last period aggregation depending on whether a root time profile level is
defined in the output planning level.

Model Configuration Guide


Key Figure Calculations PUBLIC 139
Dynamic Aggregation

In case of dynamic last period aggregation, the time profile level for which we aggregate is defined during
runtime. This means that the aggregated key figure can be calculated on any time profile level. The time
aggregation will happen on the requested time granularity. Use this option when you want to ensure flexibility
at querying key figures at request level.

To calculate dynamic aggregation, use the IBP_LPA function, and make sure that no root time profile level is
defined in the output planning level of the aggregation and in any of the calculations built on last period
aggregation. Additionally, time profile levels must be the same in the input and output planning levels.

Example

In this example, the input key figure shows the inventory level of a product on a daily basis. We use the
IBP_LPA function to calculate the aggregated inventory level; however, we do not define the time granularity at
this point. The time profile level for which aggregation takes place is defined during runtime.

AGGRINVENTORY@PERPRODLOC = IBP_LPA("INVENTORY@DAYPRODLOC")

AGGRINVENTORY@REQUEST = SUM("AGGRINVENTORY@PERPRODLOC")

Static Aggregation

In case of static last period aggregation, aggregation is defined for a specific time profile level. To calculate
static aggregation, use the IBP_LPA function and define a root time profile level in the output planning level.
The root time profile level in the output planning level must be a possible parent of the root time profile level in
the input planning level.

 Note

Static last period aggregation imposes filter blocks in the calculation graph of a key figure, which might
increase the runtime of queries. For more information, see Filter Blocks [page 420].

Example

In this example, the input key figure shows the inventory level of a product on a daily basis. First, we use the
IBP_LPA fuction to calculate the aggregated inventory level on a weekly basis (technical week), as all the other
calculations built on this key figure are defined for calendar and technical weeks. Then, on REQUEST level, we
can calculate the aggregated inventory for all time profile levels that are built on technical week, for example,
calendar week. In this case, aggregation to a higher time profile level will use the REQUEST level aggregation
instead of last period aggregation.

Model Configuration Guide


140 PUBLIC Key Figure Calculations
AGGRINVENTORY@TECHWKPRODLOC = IBP_LPA("INVENTORY@DAYPRODLOC")

AGGINVENTORY@REQUEST = SUM("AGGINVENTORY@TECHWKPRODLOC")

Missing Inputs

The last period aggregation function does not generate missing time periods and key figure data in case the
uploaded data is fragmented or missing. The input key figure has to have data uploaded for the last time
period. If there is no data available for the last period or for the entire time horizon, last period aggregation
returns no value.

Last period aggregation uses the time profile of the planning area to find out the related time periods. The
IBP_LPA function works based on calendar only, it does not consider product combinations at data upload. It
means that if a product has no uploaded data for the requested last period, the function will return no value
and product either. It is the responsibility of the modeling expert to take care of key figure initialization or
defualting when uploading and importing key figures.

Example: Missing key figure in the last period

In this example, there is no data uploaded for the last period (06.01.2019) in the given time period, so the
IBP_LPA function returns no value.

Example: Missing key figure in product combination

In this example, there is no uploaded data for Product B and Product C for all time periods, so the IBP_LPA
function returns value for Product A only.

The result of last period aggregation:

Model Configuration Guide


Key Figure Calculations PUBLIC 141
Aggregation and Disaggregation Rules

The same aggregation and disaggregation rules apply for last period aggregation as for any other type of
aggregation, as described in section Checks for the Aggregation and Disaggregation Mode in Planning Areas
[page 274].

Last period aggregation is a time-based aggregation. From the available options, disaggregation mode Copy
Value and proportionality No Proportional Disaggregation and Same Key Figure - Stored Values return correct
values after editing a key figure that was calculated using last period aggregation.

Example: Last period aggregation combined with Copy Value and No Proportional
Disaggregation

Example: Last period aggregation combined with Copy Value and Same Key Figure - Stored
Values

 Note

You cannot use the IBP_LPA function in the calculation graph - at base planning level and below - of a key
figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use IBP_LPA in the calculation graph of a supply or forecast operator:

Model Configuration Guide


142 PUBLIC Key Figure Calculations
● Use IBP_LPA in calculations at planning levels other than the base planning level of the key figure in
question.
● Copy the result of the IBP_LPA function to another key figure and use it as the input or output of the
supply or forecast operator.

Related Information

Planning Areas [page 274]

11.10.3 Rolling Aggregation

Use rolling aggregation to aggregate key figures across several time periods, for a specified time window.
Instead of requesting an L script to create such an aggregation, you can use the IBP_RAGGR function to
configure rolling aggregation in one step.

To use rolling aggregation, use the IBP_RAGGR function in the calculation definition of key figures in the
Planning Areas app. The parameters you define in the calculation definition specify the time window and the
aggregation type of the rolling aggregation function.

 Note

Rolling aggregation imposes filter blocks in the calculation graph of a key figure, which might increase the
runtime of queries. For more information, see Filter Blocks [page 420].

Example

AGGREGATEDDEMAND@PERPRODLOC = IBP_RAGGR ("DEMAND@PERPRODLOC", ''SUM'', -1, 3,


''PASTCURRENTFUTURE'')

In this example, you can calculate the summary of the demand for the previous, actual, and upcoming months.

Parameters of the Rolling Aggregation (IBP_RAGGR) Function

The IBP_RAGGR function has five mandatory parameters and one optional parameter.

Model Configuration Guide


Key Figure Calculations PUBLIC 143
 Note

The value of the 1st parameter must be surrounded by double quotation marks.

The values of the 2nd and 5th parameters must be surrounded by two pairs of single quotation marks. A
double quotation mark instead of two single quotation mark will result in an error during activation.

● 1st parameter: input key figure at input planning level (mandatory)


The first parameter of the IBP_RAGGR function is always the input key figure at the input planning level; for
example, "DEMAND@PERPRODLOC".
● 2nd parameter: aggregation type (mandatory)
The second parameter defines how the key figure is going to be aggregated over the time periods specified
by the third and fourth parameters.
Possible values are MIN, MAX, SUM, AVG, and COUNT.
● 3rd parameter: start of rolling aggregation (mandatory)
The third parameter determines the start of the time window for which rolling aggregation is calculated for
the input key figure. It specifies the starting time period in relation to the actual time period, and it uses the
root time period of the input planning level. It must be an integer.
Possible values:
○ Negative integer: rolling aggregation starts before the actual time period
○ Zero: rolling aggregation starts with the actual time period
○ Positive integer: rolling aggregation starts after the actual time period
For example, if the root time period is month, and the third parameter is -1, aggregation will always start in
the previous month.
● 4th parameter: duration of rolling aggregation (mandatory)
The fourth parameter defines the duration of the rolling aggregation, that is, the number of time periods for
which the input key figure will be aggregated. It has to be a positive integer.
For example, if the root time period is month, the third parameter is -1 and the fourth parameter is 3, the
key figure will be aggregated for the previous, actual, and the upcoming months.
● 5th parameter: calculation horizon (mandatory)
The fifth parameter defines the calculation horizon, which can control the output of the calculation. If
separate key figures are used to calculate the past, present, and future values, this parameter filters the
values, thus improves performance in the planning view.
Possible values are PAST, PASTCURRENT, PASTCURRENTFUTURE, CURRENT, CURRENTFUTURE, and FUTURE.
If you use one key figure for rolling aggregation, regardless of the horizon, use the PASTCURRENTFUTURE
value for this parameter.
Example
AGGREGATEDDEMAND@PERPRODLOC = IBP_RAGGR ("DEMAND@PERPRODLOC", ''SUM'', -1, 3,
''CURRENTFUTURE'')

In this example, the value of the calculation horizon is CURRENTFUTURE. This means that rolling
aggregation is only calculated for the current and future time periods, that is, the
AGGREGATEDDEMAND@PERPRODLOC key figure does not have values for time periods before October 2018.
However, values from past time periods are used to calculate the values for current and future time
periods.
● 6th parameter: restart of rolling aggregation (optional)

Model Configuration Guide


144 PUBLIC Key Figure Calculations
The last parameter is optional, and it specifies when rolling aggregation will restart. If you want to restart
aggregation at certain time intervals, enter the time profile level at the end of which aggregation should
stop and restart from 0.
Possible values: All time profile levels that are assigned to the planning level, except for the root time profile
level.
For example, if you enter 6 (year), rolling aggregation will always restart at the first root time period of the
next year.
Example
AVERAGEDEMAND@PERPRODLOC = IBP_RAGGR ("DEMAND@PERPRODLOC", ''AVG'', -1, 3,
''PASTCURRENTFUTURE'', 6)

In this example, you can calculate the average demand for the previous, actual, and upcoming months,
restarting at the first month of every year.

Modeling Requirements for the Rolling Aggregation (IBP_RAGGR) Function

● A rolling aggregation calculation must have exactly one input.


● The input planning level and the output planning level of a rolling aggregation must be compatible with
each other. That is, they must contain the same set of attributes, including the same set of root attributes.
● Rolling aggregations must be time dependent. That is, both the input planning level and the output
planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_RAGGR function must have values specified for the 5 mandatory parameters, and can have a
value specified for one optional parameter.
● The first parameter must be the input key figure at the input planning level.
● The value that is specified for the sixth parameter (time profile level at which the rolling aggregation
restarts) must exist in the time profile assigned to the planning area.
● Only a time profile level that is assigned to the planning level of the rolling aggregation as a time attribute
(but not as a root attribute) can be specified as the value of the sixth parameter of IBP_RAGGR (time
profile level at which the rolling aggregation restarts).
● The IBP_RAGGR function cannot be used at REQUEST level.
● When a calculation graph includes a rolling aggregation, the topmost key figure in the calculation graph
mustn't be editable.
● The IBP_RAGGR function cannot be nested in other calculations.

 Note

You cannot use the IBP_RAGGR function in the calculation graph - at base planning level and below - of a
key figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use IBP_RAGGR in the calculation graph of a supply or forecast operator:

● Use IBP_RAGGR in calculations at planning levels other than the base planning level of the key figure in
question.

Model Configuration Guide


Key Figure Calculations PUBLIC 145
● Copy the result of the IBP_RAGGR function to another key figure and use it as the input or output of the
supply or forecast operator.

Missing Inputs

You cannot use the IBP_RAGGR function without an input key figure as no default value is provided. The rolling
aggregation function does not generate missing time periods and key figure data in case the uploaded data is
fragmented or missing. The input key figure has to have data uploaded for all time periods. There are two cases
of missing inputs.

Empty Value
If a time period for a planning object combination is missing, that time period is skipped and the value
uploaded to the next time period is taken into account when calculating rolling aggregation. Additionally, rolling
aggregation is not calculated for the missing time period.

NULL Value
If the value of the input key figure is NULL, it is ignored during calculation, but the time window is not extended
with another time period. You can default the NULL value to 0 by adding another calculation if it is justified by
your modeling requirements.

Example

AGGREGATEDDEMAND@PERPRODLOC = IBP_RAGGR ( "DEMAND@PERPRODLOC" , ''AVG'' , -1 , 3,


''PASTCURRENTFUTURE'')

In this example, time period March 2019 is missing. As shown in the table above, March 2019 is skipped and
aggregation continues with the value uploaded to April 2019. That is, instead of calculating the average of
January, February, and March, average is calculated for January, February, and April.

For time period August 2018, the value of the input key figure is NULL. In this case, August 2018 is ignored,
that is, average is calculated for September and October only.

11.10.4 Dynamic Rolling Aggregation

Use dynamic rolling aggregation to aggregate key figures across several time periods for a time window
specified by key figures, attributes, or constants. Instead of requesting an L script to create such an
aggregation, you can use the IBP_DYNAMIC_RAGGR function to configure dynamic rolling aggregation in one
step.

With the previous version of Rolling Aggregation [page 143] (IBP_RAGGR), you can define your calculation
horizon only with constants. Using the dynamic rolling aggregation (IBP_DYNAMIC_RAGGR) function, you have

Model Configuration Guide


146 PUBLIC Key Figure Calculations
the possibility to define your calculation horizon with attributes and key figures as well, in addition to constants.
This gives you more flexibility in your planning models, but requires more configuration and maintenance
efforts.

 Note

Dynamic rolling aggregation imposes filter blocks in the calculation graph of a key figure, which might
increase the runtime of queries. For more information, see Filter Blocks [page 420].

Example

AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',


"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

In this example, you can calculate the summary of demand for the time window defined by the
AGGROFFSET@PERPRODLOC and the AGGRDURATION@PERPRODLOC key figures.

Parameters of the Dynamic Rolling Aggregation (IBP_DYNAMIC_RAGGR)


Function

The IBP_DYNAMIC_RAGGR function has five mandatory parameters and one optional parameter.

 Note

Key figure and attribute values must be surrounded by double quotation marks. String constants
(aggregation type and calculation horizon) must be surrended by two pairs of single quotation marks.
Numerical values (for example, restart of rolling aggregation) musn't be surrounded by quotation marks.

● 1st parameter: input key figure at input planning level (mandatory)


The first parameter of the IBP_DYNAMIC_RAGGR function is always the input key figure to be aggregated at
the input planning level; for example, "DEMAND@PERPRODLOC".
● 2nd parameter: aggregation type (mandatory)
The second parameter defines how the key figure is going to be aggregated over the time periods specified
by the third and fourth parameters.
Possible values are MIN, MAX, SUM, AVG, and COUNT.
● 3rd parameter: start of dynamic rolling aggregation (mandatory)
The third parameter determines the start of the time window for which dynamic rolling aggregation is
calculated for the input key figure. It specifies the starting time period in relation to the actual time period,
and it uses the root time period of the input planning level.
This parameter can be a constant (integer), an attribute (integer) or a key figure (decimal part is
neglected).

Model Configuration Guide


Key Figure Calculations PUBLIC 147
Possible values:
○ Negative integer: dynamic rolling aggregation starts before the actual time period
○ Zero: dynamic rolling aggregation starts with the actual time period
○ Positive integer: dynamic rolling aggregation starts after the actual time period
Example: Start of aggregation is defined by an attribute
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',
"AGGROFFSET", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

In this example, for each location/product combination, the start of aggregation is defined by the
AGGROFFSET attribute. For the Boston/Converter combination, the aggregation always starts one month
before (AGGROFFSET=-1), whereas for the Boston/Charger combination, the aggregation always starts
with the actual month (AGGROFFSET=0). The duration is defined by the AGGRDURATION@PERPRODLOC key
figure.
Example: Start of aggregation is defined by a key figure
AGGREGATEDDEMAND@PERPRODLOCCUST = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOCCUST",
''SUM'', "AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC",
''PASTCURRENTFUTURE'')

In this example, the start and duration of dynamic rolling aggregation are defined by key figures. If the key
figure value includes decimals, the decimal parts are neglected when calculating the time window of the
aggregation. For example, the value of the AGGROFFSET@PERPRODLOC key figure is -1.1 for August 2020,
which means that aggregation will start with previous month for this period.

 Note

If you want a different rounding method, use one of the available rounding functions (for example,
ROUND, FLOOR, or CEIL. For more information, see Commonly Used Functions and Expressions [page
123].

● 4th parameter: duration of dynamic rolling aggregation (mandatory)


The fourth parameter defines the duration of the dynamic rolling aggregation, that is, the number of time
periods for which the input key figure will be aggregated.
This parameter can be a constant (integer), an attribute (integer) or a key figure (decimal part is
neglected).
Its value has to be a positive integer. If the value is negative or zero, the result of the dynamic rolling
aggregation will be NULL for the given time period.
Example: Duration of aggregation is defined by an attribute
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',
"AGGROFFSET", "AGGRDURATION", ''PASTCURRENTFUTURE'')

Model Configuration Guide


148 PUBLIC Key Figure Calculations
In this example, the start and duration of the dynamic rolling aggregation are defined by attributes for each
location/product combination. For the Boston/Converter combination, the aggregation always starts one
month before (AGGROFFSET=-1) and lasts for 3 months (AGGRDURATION=3). Whereas, for the Boston/
Charger combination, the aggregation always starts with the actual month (AGGROFFSET=0) lasts for 2
months (AGGRDURATION=2).
Example: Duration of aggregation is defined by a key figure
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'', 0,
"AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

In this example, the start of the aggregation is defined by a constant (0) and the duration is defined by the
AGGRDURATION@PERPRODLOC key figure.
Example: Duration of aggregation is negative or zero
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',
"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

In this example, the duration of the aggregation is negative in September 2020 and zero in April 2021. As a
result, the AGGREGATEDDEMAND key figure is NULL for both periods. If the start or duration of aggregation
is NULL, the output of the IBP_DYNAMIC_RAGGR function is NULL as well, as it is the case for November
2020.
● 5th parameter: calculation horizon (mandatory)
The fifth parameter defines the calculation horizon, which can control the output of the calculation. If
separate key figures are used to calculate the past, present, and future values, this parameter filters the
values, thus improves performance in the planning view.
Possible values are PAST, PASTCURRENT, PASTCURRENTFUTURE, CURRENT, CURRENTFUTURE, and FUTURE.
If you use one key figure for dynamic rolling aggregation, regardless of the horizon, use the
PASTCURRENTFUTURE value for this parameter.
Example: Calculation horizon is CURRENTFUTURE
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',
"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''CURRENTFUTURE'')

In this example, the value of the calculation horizon is CURRENTFUTURE. This means that dynamic rolling
aggregation is only calculated for the current (February 2021) and future time periods, that is, the
AGGREGATEDDEMAND@PERPRODLOC key figure does not have values for time periods before February 2021.
However, values from past time periods are used to calculate the values for current and future time
periods.
● 6th parameter: restart of dynamic rolling aggregation (optional)
The last parameter is optional, and it specifies when dynamic rolling aggregation will restart. If you want to
restart aggregation at certain time intervals, enter the time profile level at the end of which aggregation
should stop and restart from 0.

Model Configuration Guide


Key Figure Calculations PUBLIC 149
Possible values: All time profile levels that are assigned to the planning level, except for the root time profile
level.
For example, if you enter 6 (year), dynamic rolling aggregation will always restart at the first root time
period of the next year.
Example: Restarting aggregation at the first month of every year
AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''AVG'',
"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'', 6)

In this example, you can calculate the average demand for the previous, actual, and upcoming months,
restarting at the first month of every year.

Modeling Requirements for the Dynamic Rolling Aggregation


(IBP_DYNAMIC_RAGGR) Function

● A dynamic rolling aggregation must have one, two, or three input key figures, which must be used in the
calculation expression as well. The first one is the input key figure to be aggregated, the second one (if
used) defines the start of aggregation, and the third one (if used) defines the duration of the aggregation.
● The attributes of the output planning level must be the union of the attributes of the input planning levels.
● Maximum two input planning levels are allowed.
● Dynamic rolling aggregations must be time dependent. That is, both the input planning levels and the
output planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_DYNAMIC_RAGGR function must have values specified for the 5 mandatory parameters, and can
have a value specified for one optional parameter.
● The first parameter must be the input key figure to be aggregated at the input planning level.
● The value that is specified for the sixth parameter (time profile level at which the dynamic rolling
aggregation restarts) must exist in the time profile assigned to the planning area.
● Only a time profile level that is assigned to the planning level of the dynamic rolling aggregation as a time
attribute (but not as a root attribute) can be specified as the value of the sixth parameter of
IBP_DYNAMIC_RAGGR (time profile level at which the dynamic rolling aggregation restarts).
● The IBP_DYNAMIC_RAGGR function cannot be used at REQUEST level.
● When a calculation graph includes a dynamic rolling aggregation, the topmost key figure in the calculation
graph mustn't be editable.
● The IBP_DYNAMIC_RAGGR function cannot be nested in other calculations.

 Note

You cannot use the IBP_DYNAMIC_RAGGR function in the calculation graph - at base planning level and
below - of a key figure that is used either as the input or output of a supply or forecast operator. You have
the following options, if you want to use IBP_DYNAMIC_RAGGR in the calculation graph of a supply or
forecast operator:

Model Configuration Guide


150 PUBLIC Key Figure Calculations
● Use IBP_DYNAMIC_RAGGR in calculations at planning levels other than the base planning level of the
key figure in question.
● Copy the result of the IBP_DYNAMIC_RAGGR function to another key figure and use it as the input or
output of the supply or forecast operator.

Missing Inputs

You cannot use the IBP_DYANAMIC_RAGGR function without an input key figure as no default value is provided.
The dynamic rolling aggregation function does not generate missing time periods and key figure data in case
the uploaded data is fragmented or missing. The input key figures have to have data uploaded for all time
periods. There are two cases of missing inputs.

NULL Value

If the value of the input key figure is NULL, it is ignored during calculation, but the time window is not extended
with another time period. You can default the NULL value to 0 by adding another calculation if it is justified by
your modeling requirements.

Empty Value

If a time period for a planning object combination is missing, it is handled as if the value of the input key figure
were NULL. It is ignored during calculation, but the time window is not extended with another time period. This
is a difference compared to the IBP_RAGGR function, where the time window is extended.

Example: Missing inputs with SUM

AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',


"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

In this example, the value of the input key figure is NULL for November 2020 and December 2020. As a result,
aggregated demand is not calculated for November 2020, the value of the output key figure is NULL. In
addition to that, time periods March 2021 and April 2021 are missing. When calculating dynamic rolling
aggregation, the values of the input key figure for these periods are treated as if they were NULL. Again, this
means that the output key figure is NULL for February 2021.

Example: Missing inputs with COUNT

AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''COUNT'',


"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

Model Configuration Guide


Key Figure Calculations PUBLIC 151
In these examples, values are aggregated with COUNT. In the case of NULL and missing input key figure values,
the value of the output key figure is 0.

Example: Start and duration of aggregation is NULL

AGGREGATEDDEMAND@PERPRODLOC = IBP_DYNAMIC_RAGGR("DEMAND@PERPRODLOC", ''SUM'',


"AGGROFFSET@PERPRODLOC", "AGGRDURATION@PERPRODLOC", ''PASTCURRENTFUTURE'')

If the start or duration of aggregation is NULL, the output of the IBP_DYNAMIC_RAGGR function is NULL as
well. In this example, both the start and duration of aggregation is NULL for November 2020. As a result, the
value of the output key figure is NULL.

11.10.5 Period Shift

Use period shift to shift key figure values by time periods. Instead of using complicated attribute
transformations, you can use the IBP_PERIODSHIFT function to configure period shift in one step.

To use period shift, use the IBP_PERIODSHIFT function in the calculation definition of key figures in the
Planning Areas app: IBP_PERIODSHIFT(<KEY FIGURE@PLANLEVEL>,<NUMBER OF
PERIODS>,<AGGREGATION TYPE>).

 Note

Period shift imposes filter blocks in the calculation graph of a key figure, which might increase the runtime
of queries. For more information, see Filter Blocks [page 420].

Parameters of the Period Shift (IBP_PERIODSHIFT) Function

The IBP_PERIODSHIFT function has two mandatory parameters and one optional parameter:

● 1st parameter: input key figure at input planning level (mandatory)


The first parameter of the IBP_PERIODSHIFT function is always the input key figure at the input planning
level; for example, "ACTUALSQTY@MTHPRODLOC". Period shift is based on the root time attribute of the
planning level of the input key figure.
The value must be surrounded by double quotation marks.
● 2nd parameter: number of periods by which you want to shift the input key figure (mandatory)
You can specify the number of periods the following ways:

Model Configuration Guide


152 PUBLIC Key Figure Calculations
○ Define the exact number of time periods, that is, use a constant.
○ Use an attribute, which is not a time profile attribute, to define the number of time periods.
○ Use an attribute, which is a time profile attribute, to define the number of time periods.
○ Use a key figure to specify the number of time periods.
If you use an attribute or key figure to specify the number of periods, the value must be surrounded by
double quotation marks.

Configuration Flexibility Maintenance

Shift by a Constant * * *

Shift by an Attribute * ** **

Shift by a Time Profile At­ ** ** **


tribute

Shift by a Key Figure *** *** ***

● 3rd parameter: aggregation type (optional)


The third parameter defines how the key figure value is going to be aggregated if the calculation uses
values from more than one time period. If you shift a key figure by a time profile attribute or a key figure,
you might end up with multiple values in some of the time buckets. In this case, you must use the third
parameter or create an aggregation calculation on top of the IBP_PERIODSHIFT function to define how
the key figure value is calculated from the multiple values of the given time buckets.
Possible values are MIN, MAX, SUM and AVG.
The value must be surrounded by two pairs of single quotation marks. A double quotation mark instead of
two single quotation mark will result in an error during activation.

Shift by a Constant

Use a constant to define the number of periods by which you want to shift the input key figure. The number has
to be either a positive integer (you shift into the future) or a negative integer (you shift into the past). If you shift
a key figure by a constant, you do not need to define the third parameter or create an aggregation calculation
on top of the IBP_PERIODSHIFT function.

Example

ACTUALSQTYOFFSET@REQUEST = SUM("ACTUALSQTYOFFSET@MTHPRODLOC")

ACTUALSQTYOFFSET@MTHPRODLOC = IBP_PERIODSHIFT("ACTUALSQTY@MTHPRODLOC", 12)

In this example, you can shift the value of actual quantity by 12 months in to the future.

Model Configuration Guide


Key Figure Calculations PUBLIC 153
Shift by an Attribute

Attribute Is Not a Time Profile Attribute


Use an attribute, which is not a time profile attribute, to define the number of periods by which you want to shift
the input key figure. The type of the attribute has to be integer. In this case, the attribute is not assigned to the
time profile; it is assigned to a master data type. If you shift a key figure by an attribute that is not a time profile
attribute, you do not need to define the third parameter or create an aggregation calculation on top of the
IBP_PERIODSHIFT function.

Example

ACTUALSQTYOFFSET@REQUEST = SUM("ACTUALSQTYOFFSET@MTHPRODLOC")

ACTUALSQTYOFFSET@MTHPRODLOC = IBP_PERIODSHIFT("ACTUALSQTY@MTHPRODLOC", "LEADTIME")

LEADTIME is an attribute to indicate lead times for supply planning for shifting key figures. Different products
can have different lead times in terms of shipping depending on the product characteristics (for example, size
and weight). In this example, the value of LEADTIME is 1 for PRDID1, and 2 for PRDID2. That is, you shift the
value of actual quantity by 1 in case of product 1, and by 2 in case of product 2.

Attribute Is a Time Profile Attribute


Use a time profile attribute to define the number of periods by which you want to shift the input key figure. In
this case, the attribute is assigned to the time profile for each period. If you shift a key figure by a time profile
attribute, you might end up with multiple values in some of the time buckets. In this case, you must use the
third parameter or create an aggregation calculation on top of the IBP_PERIODSHIFT function to define how
the key figure value is calculated from the multiple values of the given time buckets.

Example

ACTUALSQTYOFFSET@REQUEST = SUM("ACTUALSQTYOFFSET@MTHPRODLOC")

ACTUALSQTYOFFSET@MTHPRODLOC = IBP_PERIODSHIFT("ACTUALSQTY@MTHPRODLOC", "LAG")

In this example, LAG is a time profile attribute, part of the MTHPRODLOC planning level, and it specifies the
shipping time of a product from a manufacturer to the distribution center. The value of LAG is 2 in 2019,
whereas 1 in 2020.

Shift by a Key Figure

Use a key figure to define the number of periods by which you want to shift the input key figure. If you shift a
key figure by another key figure, you might end up with mutliple values in some of the time buckets. In this

Model Configuration Guide


154 PUBLIC Key Figure Calculations
case, you must use the third parameter or create an aggregation calculation on top of the IBP_PERIODSHIFT
function to define how the key figure value is calculated from the multiple values of the given time buckets.

The planning level of the output key figure must be a subset of the planning level of the key figure used for
shifting the input key figure.

Example

ACTUALSQTYOFFSET@MTHPRODLOC = IBP_PERIODSHIFT("ACTUALSQTY@MTHPRODLOC",
"LAGDECIMAL@MTHPRODLOC", ''SUM'')

In this example, LAGDECIMAL@MTHPRODLOC is a key figure, and it specifies the lead time, which is different for
different time periods and products. As a result, the value of the ACTUALSQTYOFFSET key figure might be
calculated from the values of more than 1 time periods, for example, as in the case of April 2019. For this
reason, the third parameter is also used to define how the key figure value is calculated from the multiple
values of the given time periods. In this example, the sum of the shifted values will be calculated for
ACTUALSQTYOFFSET because the aggregation type is SUM in the function.

In case of decimals, the default rounding method is used. If you want to use another rounding mode,
implement it in a separate calculation, as described in Commonly Used Functions and Expressions [page 123].

Modeling Requirements for the Period Shift (IBP_PERIODSHIFT) Function

● The first parameter must be the input key figure at the input planning level.
● A period shift calculation must have exactly one input if you shift by a constant or an attribute.
● A period shift calculation must have exactly two inputs if you shift the input key figure by another key
figure.
● The input planning level and the output planning level of a period shift must be compatible with each other.
That is, they must contain the same set of attributes, including the same set of root attributes.
● Period shift must be time dependent. That is, both the input planning level and the output planning level of
the calculation must have one of the PERIODID(n) attributes set as the time root attribute. The time root
attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The IBP_PERIODSHIFT function cannot be used at REQUEST level.
● When a calculation graph includes a period shift, the topmost key figure in the calculation graph mustn't be
editable.
● The IBP_PERIODSHIFT function cannot be nested in other calculations.
● Define the third parameter or create an aggregation calculation on top of the IBP_PERIODSHIFT function,
if you shift the input key figure by a time profile attribute or key figure.
● The IBP_PERIODSHIFT function must have values specified for the 2 mandatory parameters.

 Note

You cannot use the IBP_PERIODSHIFT function in the calculation graph - at base planning level and below
- of a key figure that is used either as the input or output of a supply or forecast operator. You have the

Model Configuration Guide


Key Figure Calculations PUBLIC 155
following options, if you want to use IBP_PERIODSHIFT in the calculation graph of a supply or forecast
operator:

● Use IBP_PERIODSHIFT in calculations at planning levels other than the base planning level of the key
figure in question.
● Copy the result of the IBP_PERIODSHIFT function to another key figure and use it as the input or
output of the supply or forecast operator.

Missing Inputs

You cannot use the IBP_PERIODSHIFT function without an input key figure as no default value is provided. The
period shift function does not generate missing time periods and key figure data in case the uploaded data is
fragmented or missing. The input key figure has to have data uploaded for all time periods. If a time period or a
planning object combination is missing, that time period is skipped, and nothing is shifted. If the value of the
input key figure is NULL or 0, it is shifted by the defined time periods.

If the second parameter, that is, the number of time periods, is empty, NULL or 0, the value of the input key
figure is not shifted.

We recommend to upload data for all time periods, otherwise you might face performance issues.

11.10.6 Weighted Average

Instead of using several complex calculations, use the IBP_WEIGHTEDAVG function to calculate weighted
average for a key figure in one step.

To calculate weighted average, use the IBP_WEIGHTEDAVG function in the calculation definition of key figures
in the Planning Areas app: IBP_WEIGHTEDAVG(<KEY FIGURE@PLANLEVEL>,<KEY FIGURE@PLANLEVEL> or
<ATTRIBUTE>,<TYPE OF NUMERATOR>)

Business Example

Model Configuration Guide


156 PUBLIC Key Figure Calculations
In this example, there are four products, all belong to the same product family (Smart TV). These products are
shipped to three different markets: Germany, USA and France. The same products have different prices at
different locations. For each product/location combination, the following data is available: price, forecasted
quantity and forecasted revenue (calculated as price multiplied by forecasted quantity).

We can calculate the simple average price with the formula SUM(Price) / number of different product/
location combinations (8); however, we are interested in the weighted average price. The formula to calculate
weighted average price is SUM(Price*Forecasted Qty) / SUM(Forecasted Qty). We can easily perform this
calculation on aggregated product family level with the IBP_WEIGHTEDAVG function using forecasted quantity
as the weighting factor:

WEIGHTEDPRICE@REQUEST = IBP_WEIGHTEDAVG("STOREDPRICE@MTHPRODLOC",
"FORECASTEDQTY@MTHPRODLOC", ''CALCULATEDNUMERATOR'')

Parameters of the Weighted Average (IBP_WEIGHTEDAVG) Function

The IBP_WEIGHTEDAVG function has three mandatory parameters:

● 1st parameter: input key figure at input planning level


The first parameter of the IBP_WEIGHTEDAVG function is always the input key figure at the input planning
level; for example, STOREDPRICE@MTHPRODLOC. The sum of the first parameter multiplied by the second
parameter is the numerator of the calculation, for example,
SUM("STOREDPRICE@MTHPRODLOC"*"ACTUALSQTY@MTHPRODLOC").
The parameter value must be surrounded by double quotation marks.
● 2nd parameter: input key figure at the input planning level or attribute
The second parameter of the IBP_WEIGHTEDAVG function is the denominator of the calculation. In case a
calculated numerator is used in the function, the value of the second parameter is the denominator and
the weight as well.
It is either an input key figure at the input planning level, for example, ACTUALSQTY@MTHPRODLOC or a
master data type attribute (integer), for example, WEIGHT. If it is a master data type attribute, it must be
assigned to the input planning level of the first key figure.
The parameter value must be surrounded by double quotation marks.
● 3rd parameter: type of numerator
The third parameter of the IBP_WEIGHTEDAVG function defines whether the numerator is stored or
calculated.
Possible values:
○ CALCULATEDNUMERATOR
The numerator is calculated; it is the sum of the first parameter multiplied by the second parameter.
Example
WEIGHTEDPRICE = SUM(STOREDPRICE*ACTUALSQTY) / SUM(ACTUALSQTY)
○ STOREDNUMERATOR
The numerator is not calculated; it is simply the sum of the first parameter. In this case, the
numerator's value already includes a multiplication by the weight.
Example
WEIGHTEDPRICE = SUM(STOREDREV) / SUM(ACTUALSQTY)
The value must be surrounded by two pairs of single quotation marks. A double quotation mark instead of
two single quotation mark will result in an error during activation.

Model Configuration Guide


Key Figure Calculations PUBLIC 157
Example: Weighted Average with Calculated Numerator

In this example, we have two products (PRDID1 and PRDID2) available at three locations. For each product/
location combination, we work with the following key figures: actuals quantity and stored price. Actuals
quantity and stored price are available in SAP IBP as stored or calculated key figures.

We want to calculate the weighted price for locations 1, 2 and 3 using stored price (STOREDPRICE) as the input
for all three locations.

We calculate weighted average, using STOREDPRICE as the first parameter and ACTUALSQTY as the second
parameter in the IBP_WEIGHTEDAVG function. Since we want STOREDPRICE to be multiplied by the weight, the
value of the third parameter must be CALCULATEDNUMERATOR.

STOREDPRICE@REQUEST = SUM("STOREDPRICE@MTHPRODLOC")

ACTUALSQTY@REQUEST = SUM("ACTUALSQTY@MTHPRODLOC")

WEIGHTEDPRICE@REQUEST = IBP_WEIGHTEDAVG("STOREDPRICE@MTHPRODLOC","ACTUALSQTY@MTHPRO
DLOC",''CALCULATEDNUMERATOR'')

Let's take a look at FEB 2020, for example. For LOCID1, weighted price is calculated as follows: (50*100
+ 100*200) / (50+100) = 166.6667

Example: Weighted Average with Stored Numerator

In this example, we have two products (PRDID1 and PRDID2) available at three locations again. For each
product/location combination, we work with the following key figures: actuals quantity and stored revenue.
Both actuals quantity and stored revenue are available in SAP IBP as stored or calculated key figures.

Model Configuration Guide


158 PUBLIC Key Figure Calculations
We want to calculate the weighted price for locations 1, 2, and 3 using stored revenue (STOREDREV) as the input
for all three locations.

We calculate weighted average, using STOREDREV as the first parameter and ACTUALSQTY as the second
parameter in the IBP_WEIGHTEDAVG function. Since the numerator already contains a multiplication by
weight, the value of the third parameter must be STOREDNUMERATOR. This means that in the
IBP_WEIGHTEDAVG function, the numerator is simply the sum of STOREDREV.

STOREDREV@REQUEST = SUM("STOREDREV@MTHPRODLOC")

ACTUALSQTY@REQUEST = SUM("ACTUALSQTY@MTHPRODLOC")

WEIGHTEDPRICE@REQUEST = IBP_WEIGHTEDAVG("STOREDREV@MTHPRODLOC","ACTUALSQTY@MTHPRODL
OC",''STOREDNUMERATOR'')

Let's take a look at FEB 2020, for example. For LOCID1, weighted price is calculated as follows:
(5000+20000) / (50+100) = 166.6667

Example: Weighted Average Based on Revenue and Quantity with


Conversions

In this example, we have two products (PRDID1 and PRDID2) available at two customers and two locations. For
each product/customer/location combination we work with the following key figures: actuals quantity and
actuals revenue.

Model Configuration Guide


Key Figure Calculations PUBLIC 159
We can calculate the actuals price (weighted average) for customer 1 and customer 2 using the
IBP_WEIGHTEDAVG function:

1. Calculate ACTUALSQTY:
ACTUALSQTY@REQUEST = SUM("ACTUALSQTY@WKPRODLOCCUSTUOMTO")
ACTUALSQTY@WKPRODLOCCUSTUOMTO = "ACTUALSQTY@WKPRODLOCCUST" *
"UOMCONVERSIONFACTOR@PRODUOMTO"
2. Calculate ACTUALSREV:
ACTUALSREV@REQUEST = SUM("ACTUALSREV@WKPRODLOCCUSTCURRCURRTOUOMTO")
ACTUALSREV@WKPRODLOCCUSTCURRCURRTO = "EXCHANGERATE@MTHCURRCURRTO" *
"ACTUALSREV@WKPRODLOCCUSTCURR"
3. Calculate ACTUALSPRICE:
ACTUALSPRICE@REQUEST =
IBP_WEIGHTEDAVG("ACTUALSREV@WKPRODLOCCUSTCURRCURRTO","ACTUALSQTY@WKPRODLOCCUSTUO
MTO", ''STOREDNUMERATOR'')

 Note

As of the 2008 release, this example is available in the SAPIBP1 sample planning area.

Example: Weighted Average With an Attribute

In this example, we have two products (PRDID1 and PRDID2) available at one location. For both product/
location combinations, the stored price (key figure) and the weight (attribute) are available.

We can calculate weighted price with the IBP_WEIGHTEDAVG function, using the WEIGHT attribute as the
second parameter. The attribute is assigned to the Location master data type, and it is assigned to the
MTHPRODLOC and MTHLOC planning levels.

Model Configuration Guide


160 PUBLIC Key Figure Calculations
WEIGHTEDPRICE@REQUEST = SUM("WEIGHTEDPRICE@MTHLOC")

WEIGHTEDPRICE@MTHLOC = IBP_WEIGHTEDAVG("STOREDPRICE@MTHPRODLOC", "WEIGHT",


''CALCULATEDNUMERATOR'')

Let's take a look at JAN 2020, for example. Weighted price is calculated as follows: (80*50 + 70*50) / (50+50)
= 52.5

Modeling Requirements for the Weighted Average (IBP_WEIGHTEDAVG)


Function

● A weighted average calculation must have exactly 3 parameters.


● The first parameter must be the input key figure at the input planning level.
● The second parameter must be either an input key figure at the input planning level or a master data type
attribute.
● If the second parameter is a master data type attribute (integer), it must be assigned to the input planning
level of the first key figure.
● The third parameter must be either STOREDNUMERATOR or CALCULATEDNUMERATOR.
● The IBP_WEIGHTEDAVG function cannot be nested in other calculations.
● The planning level of the output key figure must be the subset of the union of the input planning levels.
● The root time attributes of the input planning levels must be the same.
● The input planning levels cannot be on REQUEST level.
● If the second parameter of the IBP_WEIGHTEDAVG function is a key figure, the input planning levels must
have at least one common non-time root attribute that is included in the output planning level.
● When a calculation graph includes a weighted average calculation, the topmost key figure in the calculation
graph mustn't be editable.

 Note

You cannot use the IBP_WEIGHTEDAVG function in the calculation graph - at base planning level and below
- of a key figure that is used either as the input or output of a supply or forecast operator. You have the
following options, if you want to use IBP_WEIGHTEDAVG in the calculation graph of a supply or forecast
operator:

● Use IBP_WEIGHTEDAVG in calculations at planning levels other than the base planning level of the key
figure in question.
● Copy the result of the IBP_WEIGHTEDAVG function to another key figure and use it as the input or
output of the supply or forecast operator.

 Note

Similarly to other aggregation functions (SUM, MIN, MAX, AVG and COUNT), the IBP_WEIGHTEDAVG function
does not impose filter blocks for attributes that are dropped with the aggregation and removed from the
planning level. This means that filters can be applied for these attributes before the aggregation, assuming
there is no other filter block in the calculations that are built on the IBP_WEIGHTEDAVG function.

Model Configuration Guide


Key Figure Calculations PUBLIC 161
11.10.7 Coverage

Use the IBP_COVERAGE function to calculate coverage for a key figure in one step. Using the coverage function,
you can calculate how many days or weeks the calculated projected stock will last based on the planned
demand.

To use coverage, use the IBP_COVERAGE function in the calculation definition of key figures in the Planning
Areas app.

 Note

Coverage imposes filter blocks in the calculation graph of a key figure, which might increase the runtime of
queries. For more information, see Filter Blocks [page 420].

Example

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''NEXTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

In this example, we calculate days of coverage. On June 3, the projected stock (500) can cover the demand for
2 days, June 4 (300) and June 5 (200).

Parameters of the Coverage (IBP_COVERAGE) Function

The IBP_COVERAGE function has six mandatory parameters and one optional parameter. There is no
connection between the parameters, that is, the value of one parameter does not have an effect on the value of
another parameter.

1st parameter: input key figure at input planning level (mandatory)


The first parameter of the IBP_COVERAGE function is always the demand (input key figure) at the input
planning level. Before performing the coverage calculation, make sure that the demand is already available at
the required planning level. If the value of the key figure is negative, it is counted as zero.

The parameter value must be surrounded by double quotation marks.

2nd parameter: input key figure at input planning level (mandatory)


The second parameter of the IBP_COVERAGE function is always the projected stock (input key figure) at the
input planning level. Before performing the coverage calculation, make sure that the projected stock is already
available at the required planning level. If the value of the key figure is negative, it is counted as zero.

Model Configuration Guide


162 PUBLIC Key Figure Calculations
The parameter value must be surrounded by double quotation marks.

3rd parameter: number of working days (mandatory)


The third parameter defines the number of working days for the given time period. First, coverage is calculated
from the demand and projected stock for each period, then the values are multiplied by the number of working
days and summed up.

You have the following options to define the number of working days:

● Use a key figure, for example, WORKDAYS@PERPRODLOC, to define the number of working days for each
time period in your planning horizon. For example, if demand and projected stock are on a monthly level,
you can calculate coverage in days with the help of this key figure.
The parameter value must be surrounded by double quotation marks.
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC" ,
"PROJECTEDSTOCK@PERPRODLOC" , "WORKDAYS@PERPRODLOC" , ''CURRENTBUCKET'',
''USEZEROSTOCK'' , ''PASTCURRENTFUTURE'')

In this example, demand and projected stock are on a monthly level, but we want to calculate the coverage
in days. To do so, we use a key figure that defines the number of working days for each time period. When
performing the calculation, we multiply the value of coverage with the number of working days for each
time period and then sum up the values. In March 2020, the projected stock (600) can cover the demand
of March 2020 (400) and April 2020 (200). The number of working days is 22 for both periods, so the days
of coverage is 44 (2*22) for March 2020.
If the value of the key figure is negative, it is counted as zero.
Example: Number of Workdays Is Zero
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC" ,
"PROJECTEDSTOCK@PERPRODLOC" , "WORKDAYS@PERPRODLOC" , ''CURRENTBUCKET'',
''USEZEROSTOCK'' , ''PASTCURRENTFUTURE'')

In this example, the number of workdays is zero on week 4. When calculating the days of coverage for week
3, the projected stock of week 3 can cover the demand of weeks 3, 4, and 5. However, since week 4 has no
workdays, the days of coverage for week 3 is the sum of workdays of weeks 3 and 5.
● Define the number of working days with a positive integer. In this case, we assume that each time period in
your planning horizon is made up of that many working days.
Quotation marks must not surround this parameter value.
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC" ,
"PROJECTEDSTOCK@PERPRODLOC" , 4 , ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

Model Configuration Guide


Key Figure Calculations PUBLIC 163
In this example, a week always consists of 4 workdays, so for each time period we multiply coverage value
with 4 to calculate the days of coverage.
When no time-based multiplication is required, the value of the parameter must be 1. For example, if
demand and projected stock are on a daily level, and you want to calculate coverage in days as well, enter 1.

4th parameter: start of coverage (mandatory)


The fourth parameter determines whether coverage calculation starts with the demand value of the current or
next bucket.

Possible values:

● NEXTBUCKET
If the value of the projected stock key figure refers to the stock at the end of the day, calculate coverage
starting from the next bucket using the NEXTBUCKET parameter.
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''NEXTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

● CURRENTBUCKET
If the value of the projected stock key figure refers to the stock at the beginning of the day, calculate
coverage starting from the current bucket using the CURRENTBUCKET parameter.
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

The value must be surrounded by two pairs of single quotation marks. A double quotation mark instead of two
single quotation mark will result in an error during activation.

5th parameter: zero demand coverage by zero stock (mandatory)


With the fifth parameter, you can define whether zero stock can cover zero demand or not in your coverage
calculation.

The value must be surrounded by two pairs of single quotation marks. A double quotation mark instead of two
single quotation mark will result in an error during activation.

Possible values:

● USEZEROSTOCK
If you want zero stock to cover zero demand in your coverage calculation, enter USEZEROSTOCK. In this
case, when calculating days or weeks of coverage, time periods with zero demand will be included in the
calculation.

Model Configuration Guide


164 PUBLIC Key Figure Calculations
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 7, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

In these examples, zero stock can cover zero demand. In the first example, though the projected stock on
week 3 is consumed by the demands of weeks 3, 4, and 5; it can still cover the zero demands of weeks 6 to
12. As a result, the days of coverage is 70 for week 3.
In the second example, though the projected stock is zero on week 5, it can cover the demand of weeks 5 to
11.
If you have zero projected stock and zero demand for a given time frame, the days of coverage will equal
the sum of the working days of the given time frame.
● IGNOREZEROSTOCK
If you do not want zero stock to cover zero demand in your coverage calculation, enter IGNOREZEROSTOCK.
In this case, when calculating days or weeks of supply, time periods with zero demand will not be included
in the calculation.
Example
DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 7, ''CURRENTBUCKET'', ''IGNOREZEROSTOCK'',
''PASTCURRENTFUTURE'')

As opposed to the previous examples, zero stock cannot cover zero demand in these examples. In the first
example, the projected stock on week 3 is consumed by the demands of weeks 3, 4, and 5; which means
that it cannot cover any further demands, not even zero demands. As a result, the days of coverage is 21 for
week 3.
In the second example, both demand and projected stock equal zero for weeks 5 to 11. Since zero projected
stock cannot cover zero demand, days of coverage will be zero as well for these weeks.
If you have zero projected stock and zero demand for a given time period, the days of coverage for that
time period will be zero as well.

6th parameter: calculation horizon (mandatory)


The sixth parameter defines the calculation horizon. If separate key figures are used to calculate the past,
present, and future values, this parameter filters the values; thus, coverage will only be calculated for the
specified time horizon.

Possible values are PAST, PASTCURRENT, PASTCURRENTFUTURE, CURRENT, CURRENTFUTURE, and FUTURE.

Model Configuration Guide


Key Figure Calculations PUBLIC 165
If you use one key figure for coverage, regardless of the horizon, use the PASTCURRENTFUTURE value for this
parameter.

The value must be surrounded by two pairs of single quotation marks. A double quotation mark instead of two
single quotation mark will result in an error during activation.

Example

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", "WORKDAYS@PERPRODLOC", ''CURRENTBUCKET'',
''USEZEROSTOCK'', ''CURRENTFUTURE'')

In this example, days of coverage is only calculated for current and future time periods.

7th parameter: full horizon covered (optional)

The seventh parameter is optional. You can use it to notify the planner that the projected stock of a time period
is larger than the sum of the demands in all the subsequent periods in the planning horizon.

It has to be an integer, possibly a high enough number (for example, 999), to indicate that there is missing
demand or excessive stock.

If the parameter is not defined and the projected stock is larger than the sum of the demands, the number of
the remaining future time periods (or the sum of the working days for the remaining future time periods) is
displayed as the coverage.

Quotation marks must not surround this parameter value.

Example

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 7, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'', 999)

In both examples, we use the calculation horizon parameter to indicate excessive demand or lack of projected
stock. We use 999 to indicate if projected stock is larger than the sum of the demands. In the first example, the
projected stock on week 3 equals the sum of the demands for the remaining time periods, so the days of
coverage is the sum of the remaining days in the planning horizon. In the second example, the projected stock
on week 3 is larger than the sum of the demands for the remaining time periods, so the value of the days of
coverage is 999 for week 3.

Model Configuration Guide


166 PUBLIC Key Figure Calculations
Using Aggregation

The input key figures (demand and projected stock) always have to be on the same aggregation level. However,
if you want to calculate coverage on a different aggregation level, we suggest that you aggregate the input key
figures first and then perform the calculation. For example, if you have demand and projected stock on
product/location level, however, you want to calculate coverage on a product family/location level, first
aggregate your input key figures to product family/location level and then perform the IBP_COVERAGE
function. Doing the other way round, that is, aggregating the coverage value might result in incorrect data.

The same applies for time-based aggregation. If you have input key figures on weekly level and you want to
calculate coverage in months, first aggregate your input key figures to monthly level and then perform the
coverage calculation. If you want to calculate coverage in days with the same key figures, you can use the
IBP_COVERAGE function first, and define the number of working days as the third parameter.

For more information, see Configuring Aggregation and Disaggregation of Data Across Different Time Profile
Levels [page 47].

Modeling Requirements for the Coverage (IBP_COVERAGE) Function

● The coverage calculation has 6 mandatory parameters and one optional parameter.
● The IBP_COVERAGE function must have 2 or 3 input key figures.
● The first parameter must be an input key figure.
● The second parameter must be an input key figure.
● The third parameter must be an input key figure or a positive integer.
● The input planning levels must be the same.
● The input planning levels and the output planning level of a coverage calculation must be compatible with
each other. That is, they must contain the same set of attributes, including the same set of root attributes.
● Coverage calculations must be time dependent. That is, both the input planning level and the output
planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_COVERAGE function cannot be nested in other calculations.
● The IBP_COVERAGE function cannot be used at REQUEST level.
● When a calculation graph includes a coverage calculation, the topmost key figure in the calculation graph
mustn't be editable.

 Note

You cannot use the IBP_COVERAGE function in the calculation graph - at base planning level and below - of
a key figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use IBP_COVERAGE in the calculation graph of a supply or forecast operator:

● Use IBP_COVERAGE in calculations at planning levels other than the base planning level of the key
figure in question.
● Copy the result of the IBP_COVERAGE function to another key figure and use it as the input or output of
the supply or forecast operator.

Model Configuration Guide


Key Figure Calculations PUBLIC 167
Missing Inputs

You cannot use the IBP_COVERAGE function without input key figures as no default values are provided. The
coverage function does not generate missing time periods and key figure data in case the uploaded data is
fragmented or missing. The input key figures have to have data uploaded for all time periods. There are two
cases of missing inputs: empty value and NULL value.

Empty Value

If a time period for a planning object combination is missing, that time period is skipped and the value
uploaded to the next time period is taken into account when calculating coverage. Coverage is not calculated
for the missing time period.

Example: Empty Value

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'')

In this example, time period June 9 is missing. As shown in the table above, June 9 is skipped and coverage
calculation continues with the value uploaded to June 10. Consequently, the days of coverage for June 8 is 2.

NULL Value

If the value of the planned demand is NULL, it is considered as zero. If the value of the projected stock is NULL,
the value of days or weeks of coverage will be NULL as well.

You can default the NULL value to 0 by adding another calculation if it is justified by your modeling
requirements.

Example: Demand is NULL

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'', 999)

In this example, the value of planned demand is NULL from June 7, that is, planned demand is zero for June 7
and the remaining time periods. As a result, days of coverage is 999 from June 6, as projected stock is larger
than the sum of the demands for the remaining time periods.

Example: Projected Stock is NULL

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'', 999)

Model Configuration Guide


168 PUBLIC Key Figure Calculations
In this example, days of coverage is NULL on June 7 and June 8 because projected stock is NULL on these days
as well. Now, let's take a look at June 5. Projected stock is 600 on June 6, which can cover the demands from
June 6 to June 10 (600=500+NULL+NULL+100+0). As a result, days of coverage is 5 on June 5.

Zero or Negative Values


If the value of the planned demand, projected stock or number of working days key figure is negative, it is
counted as zero. The handling of zero demand and zero projected stock depends on the value of the 5th
parameter (zero demand coverage by zero stock), as discussed above.

If the value of the number of working days is negative or zero, then the coverage value is zero for the current
period, that is, this period will not increase the value of days of coverage. For more information, see the
description of the third parameter above.

Example: Demand is Negative

DAYSOFSUPPLY@PERPRODLOC = IBP_COVERAGE("DEMAND@PERPRODLOC",
"PROJECTEDSTOCK@PERPRODLOC", 1, ''CURRENTBUCKET'', ''USEZEROSTOCK'',
''PASTCURRENTFUTURE'', 999)

Negative demand is counted as zero demand. In this example, the demand is negative on June 1, which is
calculated as zero. The projected stock on June 1 (600) can cover the demand of June 1 (0) and 75% of the
demand for June 2 (600), so days of coverage equals 1.75.

11.10.8 Calendar

Use the calendar function to count with different calendars (integrated from SAP ERP) in key figure
calculations.

To use the calendar function, use the IBP_CALENDAR function in the calculation definition of key figures in the
Planning Areas app: IBP_CALENDAR(<KEY FIGURE@PLANLEVEL, <CALENDAR ATTRIBUTE>)

Parameters of the Calendar (IBP_CALENDAR) Function

The IBP_CALENDAR function has two mandatory parameters:

● 1st parameter: input key figure at input planning level


The first parameter of the IBP_CALENDAR function is always the input key figure at the input planning level,
for example, DEMAND@DAYPRODLOC. It has to be a read-only key figure.
The value must be surrounded by double quotation marks.

Model Configuration Guide


Key Figure Calculations PUBLIC 169
● 2nd parameter: calendar attribute
The second attribute of the IBP_CALENDAR function is a calendar attribute. It must be available at the
planning level of the input key figure and must be assigned to a master data type.
It has to be uploaded with values (calendar IDs) that are imported from SAP ERP and define working and
non-working days.
The value must be surrounded by double quotation marks.

Output of the Calendar (IBP_CALENDAR) Function

The default output of the calendar function is 1 for working days and 0 for non-working days. However, you can
change it, if it is required by your business needs.

For example, you might want to use 0 for working days and 1 for non-working days:

IF( IBP_CALENDAR("DEMAND@DAYPRODLOC", "CALID") = 1, 0, 1)

The IBP_CALENDAR function can be nested in other calculations.

Example: Single Calendar Calculation

In this example, we calculate the value of the DEMANDADJUSTED key figure for two locations (Berlin and
Shanghai) using the DEMANDCALENDARID calendar attribute. There are 2 calendars integrated from SAP ERP
into this calendar attribute:

● Chinese calendar (CN)


● German calendar (DE)

The DEMANDCALENDARID calendar attribute is assigned to the LOCATION master data type.

If a certain day is a working day, the output of the calendar function is 1; if it is a non-working day, the output is
0. As you can see below, there is a difference between the two calendars for the 24th, 25th and 31st of
December. They are working days in China, but not in Germany. The 20th, 26th and 27th of December are
weekend days, so the output of the function is 0 in both cases.

Chinese Calendar (CN)


IBP_CALENDAR("DEMAND@DAY­
Calendar ID Date PRODLOC", "DEMANDCALENDARID")

CN 2020.12.20. 0

CN 2020.12.21. 1

CN 2020.12.22. 1

CN 2020.12.23. 1

CN 2020.12.24. 1

CN 2020.12.25. 1

CN 2020.12.26. 0

Model Configuration Guide


170 PUBLIC Key Figure Calculations
IBP_CALENDAR("DEMAND@DAY­
Calendar ID Date PRODLOC", "DEMANDCALENDARID")

CN 2020.12.27. 0

CN 2020.12.28. 1

CN 2020.12.29. 1

CN 2020.12.30. 1

CN 2020.12.31. 1

German Calendar (DE)


IBP_CALENDAR("DEMAND@DAY­
Calendar ID Date PRODLOC", "DEMANDCALENDARID")

DE 2020.12.20. 0

DE 2020.12.21. 1

DE 2020.12.22. 1

DE 2020.12.23. 1

DE 2020.12.24. 0

DE 2020.12.25. 0

DE 2020.12.26. 0

DE 2020.12.27. 0

DE 2020.12.28. 1

DE 2020.12.29. 1

DE 2020.12.30. 1

DE 2020.12.31. 0

Counting with these outputs of the calendar function, the value of the DEMANDADJUSTED key figure is the
following for the different locations.

DEMANDADJUSTED@REQUEST = SUM("DEMANDADJUSTED@DAYPRODLOC")

DEMANDADJUSTED@DAYPRODLOC = IBP_CALENDAR("DEMAND@DAYPRODLOC", "DEMANDCALENDARID") *


"DEMAND@DAYPRODLOC"

Shanghai has the Chinese calendar assigned to it; whereas Berlin has the German calendar assigned to it.
Since the 24th, 25th and 31st of December are non-working days in Germany, the value of the
DEMANDADJUSTED key figure is 0 (0 * DEMAND) for the German location. However, they are working days in
China, so the value of the DEMANDADJUSTED key figure is 150 (1 * DEMAND) for Shanghai.

Model Configuration Guide


Key Figure Calculations PUBLIC 171
Example: Multiple Calendar Calculations

In this example, we calculate the value of the PRODUCTIONADJUSTED key figure for a planned maintenance
affecting a set of product/location combinations. To do so, we need to maintain different calendars for different
locations and different products as well. We can easily do that by using two calendar functions with two
different calendar attributes, LOCCALID and PRODCALID, in one calculation. LOCCALID is assigned to the
LOCATION master data type, and PRODCALID is assigned to the PRODUCT master data type.

PRODUCTIONADJUSTED@REQUEST = SUM("PRODUCTIONADJUSTED@DAYPRODLOC")

PRODUCTIONADJUSTED@DAYPRODLOC = IBP_CALENDAR("PRODUCTION@DAYPRODLOC", "PRODCALID")


* IBP_CALENDAR("PRODUCTION@DAYLOC", "LOCCALID") * PRODUCTION@DAYPRODLOC"

Modeling Requirements for the Calendar (IBP_CALENDAR) Function

● The calendar function must have exactly 2 parameters.


● The first parameter must be the input key figure at the input planning level.
● The second parameter must be a calendar attribute.
● The calendar attribute has to be added to the planning level of the input key figure.
● The input planning levels and the output planning level must have the same set of time attributes, including
the time root attribute.
● The calendar function cannot be used on REQUEST level.
● When a calculation graph includes a calendar function, the topmost key figure in the calculation graph
mustn't be editable.

 Note

You cannot use the IBP_CALENDAR function in the calculation graph - at base planning level and below - of
a key figure that is used either as the input or output of a supply or forecast operator. You have the following
options, if you want to use IBP_CALENDAR in the calculation graph of a supply or forecast operator:

● Use IBP_CALENDAR in calculations at planning levels other than the base planning level of the key
figure in question.
● Copy the result of the IBP_CALENDAR function to another key figure and use it as the input or output of
the supply or forecast operator.

Missing Inputs

The input key figure must have data for all time periods and planning objects, as the IBP_CALENDAR function
does not provide default values. The calendar function does not generate missing time periods and key figure
data in case the uploaded data is fragmented or missing. The input key figure has to have data uploaded for all
time periods. There are two cases of missing inputs: empty value and NULL value.

Model Configuration Guide


172 PUBLIC Key Figure Calculations
Empty Value
If a time period for a planning object combination is missing, that time period is skipped. The calendar function
is not calculated for the missing time period.

NULL Value
If the value of the input key figure is NULL, the result of the IBP_CALENDAR function will be NULL as well. You
can default the NULL value to 0 by adding another calculation if it is justified by your modeling requirements.

Related Information

Planning Calendars

11.10.9 Generate Missing Time Periods


Use the IBP_GENERATE_MISSING_TP function to generate missing time buckets for the calculation horizon
defined by the parameters of the function.

To generate missing time periods, use the IBP_GENERATE_MISSING_TP function in the calculation definition
of key figures in the Planning Areas app: IBP_GENERATE_MISSING_TP(<KEY FIGURE@PLANLEVEL>,<START
OF CALCULATION HORIZON>,<END OF CALCULATION HORIZON>)

Using the generate missing time periods function, you can generate time periods for the calculation horizon
defined by the second and third parameters of the function. The input key figure values are kept intact, the
generated time periods have a default NULL value. Missing time periods are generated runtime; no data is
stored in the database. The generated combinations are only kept until the key figures that use the output key
figure as direct or indirect input are calculated.

The IBP_GENERATE_MISSING_TP function only affects the time dimension. It does not generate combinations
in other dimensions like product, location, or customer.

The generate missing time periods function does not create a filter block in the time dimension. This means
that if there are no calculations built on the IBP_GENERATE_MISSING_TP function that create a time filter
block, you can use time filters effectively. However, if there is at least one calculation in the calculation graph
that imposes a time filter block, you cannot use time filters, that is, missing periods will be generated for each
combination in the time horizon of the planning view.

If you want to generate missing time periods for a key figure combination, you must ensure that there is at least
one entry for the given key figure combination in the input data set as described below:

● If there are no calculations built on the IBP_GENERATE_MISSING_TP function that create a time filter
block, the entry must exist within the time horizon of your planning view in the SAP Integrated Business
Planning, add-in for Microsoft Excel.
● If there is at least one calculation built on the IBP_GENERATE_MISSING_TP function that imposes a time
filter block, the entry must exist within the planning horizon defined in the Planning Areas app.

 Caution

Please keep in mind that though the IBP_GENERATE_MISSING_TP function makes modeling easier, it
significantly increases the runtime of queries. Queries of calculated key figures that contain the

Model Configuration Guide


Key Figure Calculations PUBLIC 173
IBP_GENERATE_MISSING_TP function in their calculation graph might run up to a hundred times longer
compared to queries of stored key figures. We do not recommend to use it with time-critical key figures.

To avoid performance issues, please consider the following recommendations:

● Use stored key figures and the copy operator to initialize key figures, instead of the
IBP_GENERATE_MISSING_TP function.
● Use the generate missing time periods function only when there are very few time periods available for
the given planning horizon.
Using the IBP_GENERATE_MISSING_TP function with a large data set, that is with many time periods
uploaded with data, will cause you serious performance issues. The more time periods you have, the
longer your query will run.
● Make sure that the calculation horizon is not larger than 200. For example, keep the second parameter
higher than -100 and the third parameter lower than 100.

Time period generation with filter blocks

The IBP_GENERATE_MISSING_TP function is used most often as an input of L script and cross-period
calculations. These calculations impose a time filter block that is inherited by the generate missing time
periods calculation; that is, you cannot reduce data volume in the IBP_GENERATE_MISSING_TP
calculation by filtering. Furthermore, the function generates time periods for all possible key figure
combinations for which you have at least one entry available. As a result, you might experience runtime
performance issues and might run out of memory as well. For this reason, it is essential that you test the
performance with productive data.

Use the IBP_GENERATE_MISSING_TP function as close to the calculations that impose filter blocks as
possible. To improve performance, use other effective filters on the REQUEST-level calculations.

For more information about filter blocks and effective filtering, see Filter Blocks [page 420].

Time period generation without filter blocks

If there are no calculations that would impose filter blocks built on the IBP_GENERATE_MISSING_TP
function, use filters in your planning views to keep your planning horizon as small as possible.

Example

In this example, we generate missing time periods for the November 2019 - November 2021 period. The
current month is November 2020. We have the following time periods and data available for the ACTUALSREV
key figure at the base planning level:

We use the IBP_GENERATE_MISSING_TP function to generate the missing time periods.

ACTUALSREV@MONTHPRODLOCCUSTCURRCURRTO =
IBP_GENERATE_MISSING_TP("ACTUALSREV@MONTHPRODLOCCUSTCURRCURRTO", -12, 12)

Model Configuration Guide


174 PUBLIC Key Figure Calculations
As a result, te following data set is generated:

As a result, the existing input key figure values stay the same, and the missing time periods are generated with
a default NULL value for the calculation horizon. Missing time periods are only generated for a specific
combination (for example, Disc Brake/Paris/Velo), if there is at least one period uploaded with data within the
time horizon of the planning view.

Please keep in mind that no data is stored in the database. The combinations are stored in the memory until
the topmost key figures in the calculation graph of the ACTUALSREV key figure are calculated.

Parameters of the Generate Missing Time Periods


(IBP_GENERATE_MISSING_TP) Function

The IBP_GENERATE_MISSING_TP function has three mandatory parameters:

● 1st parameter: input key figure at input planning level


The first parameter of the IBP_GENERATE_MISSING_TP function is always the input key figure at the input
planning level. It has to be a stored key figure. For the existing time periods, the value of the input key figure
stays the same, whereas the generated time periods have a default NULL value.
The parameter value must be surrounded by double quotation marks.

Model Configuration Guide


Key Figure Calculations PUBLIC 175
● 2nd parameter: start of calculation horizon
The second parameter defines the start of the time window for which missing time periods are generated.
It specifies the starting time period in relation to the current time period, and it uses the root time period of
the base planning level of the input key figure. It must be an integer.
For example, if the root time period is month, and the third parameter is -12, the generation of missing time
periods will always start 12 months before.
Quotation marks must not surround this parameter value.
● 3rd parameter: end of calculation horizon
The third parameter defines the end of the time window for which missing time periods are generated. It
specifies the last time period in relation to the current time period, and it uses the root time period of the
base planning level of the input key figure. It must be an integer.
For example, if the root time period is month, and the third parameter is 12, the generation of missing time
periods will always end in 12 months' time. The third parameter must be larger than or equal to the second
parameter.
Quotation marks must not surround this parameter value.

Example: Time Period Generation Without a Filter Block

In this example, we calculate the average revenue for the November 2019 - November 2021 period; the time
horizon of the planning view is also November 2019 - November 2021. The current month is November, 2020.
We have the following time periods and data available for the ACTUALSREV key figure at the base planning level:

First, we generate the missing time periods for the calculation horizon. Since the IF statement and the AVG
function, built on the IBP_GENERATE_MISSING_TP function, do not impose filter blocks, data is filtered based
on the time horizon of the planning view before the missing time periods are generated.

Disc Brake and Carbon Wheel have data uploaded within the time horizon of the planning view (November
2019 - November 2021), so missing time periods will be generated for both products for the calculation
horizon. However, there is no data uploaded for Pedal within the time horizon of the planning view, so no time
periods will be generated for Pedal.

ACTUALSREV@MONTHPROD = IBP_GENERATE_MISSING_TP("ACTUALSREV"@MONTHPROD", -12, 12)

Model Configuration Guide


176 PUBLIC Key Figure Calculations
As a result, the following data set is generated:

As you can see in the figure, time periods are generated for the calculation horizon: November 2019 -
November 2021 period. August 2019 and February 2022 fall outside of the calculation horizon, so data is not
kept for these periods in the memory. Furthermore, since there is no existing combination for Pedal in the time
horizon of the planning view, time periods are not generated for this product at all.

Then, we continue with an IF statement on the MONTHPROD planning level.

AVGREVENUE@MONTHPROD = IF(ISNULL("ACTUALSREV@MONTHPROD"),
"ACTUALSREVPRIORYEAR@MONTHPROD", "ACTUALSREV@MONTHPROD")

Model Configuration Guide


Key Figure Calculations PUBLIC 177
Finally, we calculate the average on REQUEST level.

AVGREVENUE@REQUEST = AVG("AVGREVENUE@MONTHPROD")

Model Configuration Guide


178 PUBLIC Key Figure Calculations
Example: Time Period Generation With a Filter Block

In this example, we calculate rolling aggregation for the ACTUALSREV key figure. The current month is
November, 2020; the time horizon of the planning view is November 2019 - November 2021. We have the
following time periods and data available for the ACTUALSREV key figure at the base planning level:

First, we generate the missing time periods. As opposed to the previous example, the IBP_RAGGR function
creates filter blocks in the calculation chain. This means that we can only filter after the IBP_RAGGR function
has been performed. Missing time periods are generated for all products for the complete calculation horizon,
even for Pedal, which does not have data uploaded within the time horizon of the planning view. The time
horizon of the planning view does not have any effect on the generated data set in this case.

ACTUALSREV@MONTHPROD = IBP_GENERATE_MISSING_TP("ACTUALSREV"@MONTHPROD", -12, 12)

As a result, the following data set is generated:

As you can see in the figure, time periods are generated for all products, there is no filtering yet. Periods that
fall outside of the calculation horizon (August 2019 and February 2022) are kept, and combinations for Pedal

Model Configuration Guide


Key Figure Calculations PUBLIC 179
are created. As a result, there are more time periods and more data generated than in the previous example;
which might cause performance issues.

Then, we calculate rolling aggregation.

AVGREVENUE@MONTHPROD = IBP_RAGGR("ACTUALSREV@MONTHPROD", ''AVG'', 0, 1,


''PASTCURRENTFUTURE''')

Now, that the calculation that imposes the filter block has been performed, we can filter the data set. As a
result, time periods August 2019 and February 2022 are removed as they fall outside of the calculation horizon.

Finally, we calculate the rolling aggregation on REQUEST level.

AVGREVENUE@REQUEST = SUM("AVGREVENUE@MONTHPROD")

Model Configuration Guide


180 PUBLIC Key Figure Calculations
Modeling Requirements for the Generate Missing Time Periods
(IBP_GENERATE_MISSING_TP) Function

● The generate missing time periods function must have exactly 3 parameters.
● The first parameter must be the input key figure at the input planning level.
● The third parameter must be larger than or equal to the second parameter.
● The calculation horizon defined by the second and third parameter must fall within the planning horizon.
● The input planning level and the output planning level of a generate missing time periods function must be
compatible with each other. That is, they must contain the same set of attributes, including the same set of
root attributes.
● The generate missing time periods function must be time dependent. That is, both the input planning level
and the output planning level of the calculation must have one of the PERIODID(n) attributes set as the
time root attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_GENERATE_MISSING_TP function cannot be nested in other calculations.
● The IBP_GENERATE_MISSING_TP function cannot be used at REQUEST level.
● When a calculation graph includes a generate missing time periods function, the topmost key figure in the
calculation graph mustn't be editable.

Model Configuration Guide


Key Figure Calculations PUBLIC 181
 Note

You cannot use the IBP_GENERATE_MISSING_TP function in the calculation graph - at base planning level
and below - of a key figure that is used either as the input or output of a supply or forecast operator. You
have the following options, if you want to use IBP_GENERATE_MISSING_TP in the calculation graph of a
supply or forecast operator:

● Use IBP_GENERATE_MISSING_TP in calculations at planning levels other than the base planning level
of the key figure in question.
● Copy the result of the IBP_GENERATE_MISSING_TP function to another key figure and use it as the
input or output of the supply or forecast operator.

11.11 Using Attributes in Key Figure Calculations


You can use attributes in calculation expressions. Please note the following:

● An attribute that is used in a calculation must belong to the planning level of at least one of the inputs to
the calculation.
● An attribute cannot be used in a calculation if all the inputs are specified at calculation level.

 Note

This is no longer required with the new, enhanced version of planning area activation. For more
information about enhanced activation and whether it is used in your system, see Enhanced Version of
Planning Area Activation [page 261].

Attributes, just like KF@PL forms are to be surrounded by double quotation marks in the calculation
expression, for example: "RESTYPE". However, if you use a constant in an expression, you must use two (!)
single quotation marks before the attribute value and two (!) single quotation marks after the attribute value
(for example, ''constant'').

 Caution

Please note that a double quotation mark (") won't work, even though it looks similar to a combination of
two single quotation marks.

 Example

HUSAGE@WKRESLOC = IF ("RESTYPE" = ''STORAGE'', "HCAPAUSAGE@WKRESLOC",


"HPCAPAUSAGE@WKRESLOC")

 Note

String constants are always in upper case in calculations. If you want to compare the string constant with
the actual attribute value in a calculation, use the UPPER function to change the attribute value to upper
case.

Example: KF1@PERPRODCUST = IF(UPPER(''ATTR1'') = ''APPROVED'', "KF2@PERPRODCUST",


NULL)

Model Configuration Guide


182 PUBLIC Key Figure Calculations
11.12 Using Time Periods in Key Figure Calculations

You may sometimes need to define calculations that are based on criteria relating to time periods.

For example, imagine that for key figure Sales Forecast Qty, you want to show the Actuals Qty for time periods
that lie in the past:

Actuals Qty Shown for Sales Forecast Qty in Past Time Periods

Key Figure Current Time Current Time Current Time Current Time Current Time
Period -2 Period -1 Period Period +1 Period +2

Prod1/Cust1 Actuals Qty 100 120

Sales 100 120 150 175 100


Forecast Qty

To achieve this, define the following calculation expression:

SALESFCSTQTY@BASEPLANNINGLEVEL = IF(PERIODIDn >=$$PERIODIDnCU$$,


SALESFCSTQTY@BASEPLANNINGLEVEL,ACTUALSQTY@BASEPLANNINGLEVEL)

 Note

If you have key figures at different planning levels (Week, Month, Quarter, Year), you might want to use
PERIODIDn.:

● $$PERIODIDnCU$$: Fixed variable for the current period.


● $$PERIODIDnFR$$: First period of the given planning horizon.
● $$PERIODIDnTO$$: Last period of the given planning horizon.
● PERIODIDn: Time period attribute
"n" refers to the time period level. For example, in a planning area where the time profile has the levels
"Week", "Month", "Quarter", and "Year", the period IDs would be as follows:

Period ID Time Period Level

PERIODID0 Week

PERIODID1 Year

PERIODID2 Quarter

PERIODID3 Month

If Sales Forecast Qty is defined at the base planning level with Month as the root, then PERIODIDn
would be replaced by PERIODID3.

Model Configuration Guide


Key Figure Calculations PUBLIC 183
Related Information

PERIODID and PERIODID(n) Attributes in Time Profile Levels [page 40]

11.13 Exceeding the 12-Digit Integer and 6-Digit Decimal


Limit in Key Figure Calculations

The maximum number of digits is 18 in SAP IBP. Values can consist of maximum 12-digit integers and 6-digit
decimals. However, it might happen that the results (both intermediate and final) of key figure calculations
would require more than 12 integers or 6 decimals. Let's see a couple of examples and solution proposals for
this issue.

Exceeding the 12-Digit Integer Limit

In this case, the result (intermediate or final) of a calculation would consist of more than 12 digits. Therefore,
you receive an error message and the calculation is not performed.

Example

We have three key figures with the following values:

KF1=10000000000

KF2=100

KF3=1000

We want to perform the following calculations:

● KF1*KF2
The result would be 1000000000000. This value has 13 digits, however, SAP IBP can only work with
integers up to 12 digits. As a result, you receive a numeric overflow error.
● KF1*KF2/KF3
The result would be 1000000000. This number consists of less than 12 digits, however, the intermediate
value KF1*KF2 would need 13 digits. This is not possible in SAP IBP, therefore, you receive an error
message again.

Solution

Remodel your calculations so that the results of the calculations do not exceed the limit. You can do that, for
example, by changing the unit of measures or the unit of currency. The most common cause of numeric
overflow is the conversion of income to another currency unit. If this is the case, use currency conversion to
solve the problem.

If it is only the intermediate value that exceeds the limit of 12 digits, you can also use different dimensions for
the key figures. For example in the case of KF1*KF2/KF3, you can divide the value of KF2 by 1000 and then
multiply the final result by 1000. This way you will not have values of more than 12 digits.

Model Configuration Guide


184 PUBLIC Key Figure Calculations
Exceeding the 6-Digit Decimal Limit

Decimal values in SAP IBP can consist of up to 6 digits. If a number has more than 6 decimals, the first 6 is kept
and the rest is simply cut off without rounding the value. For example, in case of the decimal number
123,123456789, the system will store and work with 123,123456.

Result is Lower Than Expected


Example

We work with the following calculations:

ACTUALSPURCHASE@REQUEST = SUM("ACTUALSPURCHASE@DAYPRODLOC")

ACTUALSPURCHASE@DAYPRODLOC = "ACTUALSPURCHASE@DAYPRODLOC"/3

In this example, we store values on daily level, however, we have values on weekly level. For example, the value
of ACTUALSPURCHASE is 30 for week 1. To calculate ACTUALSPURCHASE@DAYPRODLOC we need to divide 30 by
7 (number of weekdays), and then by 3.

30/7/3=1.428571428571429.

Since SAP IBP can only work with values with up to 6 decimals, value 1.428571 is going to be stored. Then, we
query ACTUALSPURCHASE on a weekly level. As a result, the daily value is aggregated (1.428571*7), and the
result is 9.999997. However, this is not accurate; the result should be 10 (30/3).

Solution 1: Remodel Your Calculations (Recommended)

Remodel your calculations so that the intermediate values do not exceed the limit by using different
dimensions for the key figures. You can again change the unit of measures or unit of currency, or multiply the
value of the kef figure by 1000 and divide by 1000 after the calculation has been performed. Keep in mind that
on the one hand you cannot exceed the limit of 6-digit decimals, but on the other hand you cannot have more
than 12-digit integers.

Solution 2: Round Values in the Back End

Use rounding if there is a disaggregation in the key figure calculation to achieve exact results. To do so, add one
of the rounding functions to the SUM function on REQUEST level.

For more information about the rounding functions, see Commonly Used Functions and Expressions [page
123].

Solution 3: Round Values in SAP IBP, Add-in for Microsoft Excel

Set the number of decimals to be displayed to 6, so that it is the same as in SAP IBP. You can also add rounding
functions to the cells in Microsoft Excel.

We suggest that you represent intermediate results step-by-step in Microsoft Excel instead of having one
complex calculation in one step. This way, you can easily check whether all intermediate values fit into the 6-
digit decimal (and 12-digit integer) limit.

Result is Higher Than Expected


Example

In this example, the number of decimal places is to 2 in Microsoft Excel. As result, value 999.999 is displayed as
1000.00.

Solution

Model Configuration Guide


Key Figure Calculations PUBLIC 185
Set the number of decimals to be displayed to 6 and set the rounding precision in Microsoft Excel.

Model Configuration Guide


186 PUBLIC Key Figure Calculations
12 Business Meaning

In configuration, you can assign business meaning to attributes and key figures to provide a semantic
connection between the attribute ID or key figure ID that you specify and the code. The use of business
meaning replaces the need to use hard-coded attribute and key figure IDs. This means that you do not have to
follow SAP's naming conventions for naming key figures and attributes to be able to let the system know what
purpose you want to use a certain key figure or attribute.

When setting business meanings for attributes, keep in mind the following:

● You can use a business meaning once in a planning area.


● If you select a description business meaning for an attribute, you must also select its corresponding ID
business meaning for a different attribute in the planning area.
● If an attribute has a description attribute in the master data type, these two attributes can only have the
same relationship in the planning area. The assigned attribute that has the description attribute must have
ID business meaning and its description attribute must have the corresponding description business
meaning in the planning area. For example, if in the PRODUCT1 master data type ATTR2 is the description
attribute of ATTR1, then ATTR1 has Product ID business meaning and ATTR2 has Product
Description business meaning in the PA1 planning area.

Business meaning is used in the integration of promotion data. The Analyze Promotions app considers data
from planning areas that have attributes and key figures with the relevant business meaning assigned. For
more information, see Setting Up a Planning Area for Integrating Promotion Data.

 Example

You create a key figure with the following details:

● Key figure name: UPLIFT


● Key figure description: Promotion Uplift
● Business meaning: Promotion Uplift (Source)

As you assign the business meaning Promotion Uplift (Source) to the key figure, the system considers the
planning area that the key figure belongs to as possibly relevant for the integration of promotion data. If
other prerequisites are also met, you can use the planning area for promotions.

The SAP6 sample planning area for demand contains attributes and key figures that have business meaning
assigned to them. For more information, see SAP6 Sample Planning Area for Demand.

Model Configuration Guide


Business Meaning PUBLIC 187
13 Creating Versions

Create versions to manage alternate plans in a planning area.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

A version is a separate set of key figure data, which is used to manage alternative plans. Besides the base
version for the planning area, which contains operational data, you can define additional versions (for example,
upside and downside). These versions can either include all key figures of the planning area or a subset of the
key figures, including calculated key figures. They cannot include additional key figures.

The maximum number of versions allowed per planning area is defined by the SCN_COUNT_MAX global
configuration parameter. If you want to create more versions that it is allowed by default, go to the Global
Configuration app and change the value of the SCN_COUNT_MAX parameter according to your modeling
requirements. Note that the maximum number of versions you define here is valid for all planning areas. Also,
keep in mind that too many versions might cause performance issues.

For more information about how versions are used for the analysis of alternative plans, see Versions.

Procedure

1. On the initial screen of the Planning Areas app, choose the planning area for which you want to create an
additional version. Then choose the Versions tab.
2. Choose New, and enter an ID for the new version (for example, UPSIDE).
3. Enter a name and description.
4. Decide if you want to use the same master data as in the base version, or you need an independent set of
master data.

If you want to use an independent set of master data in the version, select the Version­Specific Master Data
checkbox.
5. Add the key figures you want to use in the version. On the selection screen, you may select the key figures
to be added one by one, or you may add all the key figures available at once by selecting the checkbox in
the table header.

Model Configuration Guide


188 PUBLIC Creating Versions
For the key figures you add, the Version­Specific Key Figure checkbox is selected by default, which means
that you can assign values for them that are different from the ones in the base version of the key figure. If
you want to use the values of the key figure from the base version, select the Baseline Key Figure checkbox.

 Note

In case of calculated key figures, the calculation graph of the key figure determines whether the key
figure is a baseline key figure or a version­specific key figure. If the calculation graph contains at least
one stored, version­specific key figure, the calculated key figure will be version­specific as well. If you
want the calculated key figure to have the same value as in the base version, make sure that all stored
key figures in the calculation graph are baseline key figures as well.

In the SAP IBP, add-in for Microsoft Excel, only key figures that are marked version­specific can be added to
the planning view for that version. You can then copy the values of the version­specific key figure from a
different version, such as the base version, to this version. Version­specific key figure values can be
displayed and changed, provided that the user has the necessary permissions.

 Caution

If you set up your version without selecting the Version­Specific Master Data option and load data into
the version in the Excel add-in, enabling version­specific master data for the version at a later point will
cause a loss of key figure values for the version. If that happens, you have to load all the master data for
the version and then load data for all the key figures in the version as well.

For more information, see the Version Planning section in the application help.

 Note

Select the Version­Specific Key Figure option for each output and input/output key figure of a planning
area that is enabled for time-series-based supply planning.

Key figures marked as baseline key figure can be added to the planning view only in case the planning view
contains the base version. The key figure won't have version­specific values in the given version. If a
baseline key figure is in the calculation graph of a version­specific key figure, the key figure values from the
base version are used to calculate the values of the version­specific key figure.
6. Once you have created versions for your planning area, you can also add individual key figures to them on
the Key Figures tab by selecting the relevant versions in the Versions section of the Key Figure details
screen.

Model Configuration Guide


Creating Versions PUBLIC 189
14 Planning Operators

A planning operator uses an algorithm to compute large amounts of key figure data within a planning session.
You can schedule a planning operator to be processed in the background.

SAP delivers the following planning operator types:

Planning Operator Type Name Use

ADVSIM Advanced Simulation Preprocessing and postprocessing op­


erations for simulation

COPY Copy Key Figure Data Copy values of source key figures to tar­
get key figures in the same version
(base or other) of a planning area.

DISAGG Copy and Disaggregate Key Copy and disaggregate values of source
Figure Data key figures to target key figures in the
same version (base or other) of a plan­
ning area.

Model Configuration Guide


190 PUBLIC Planning Operators
Planning Operator Type Name Use

DDR Demand-driven Replenishment Run demand-driven replenishment


(DDR) operators.

As of SAP Integrated Business Planning


1911, you define demand-driven replen­
ishment profiles for demand-driven re­
plenishment algorithms instead of DDR
planning operators. You do this using
the Demand-Driven Replenishment
Profile app.

For more information, see SAP Help


Portal at https://help.sap.com/ibp un­

der Application Help Business

Applications Demand-Driven

Replenishment Demand-Driven

Replenishment Profile App Planning


Profiles for Demand-Driven

Replenishment .

Note the following about upgrading


from a lower release to 1911 or higher:

● All DDR planning operators created


prior to 1911 will still be available in
display mode in the Planning Areas
app.
● Existing DDR planning operators
that are assigned to a planning
area will be migrated automatically
to the new app and will be available
there as profiles.
● Existing planning operators that
are not assigned to a planning area
will not be automatically migrated.

IO Inventory Optimization Run inventory optimization for a given


supply chain network.

Model Configuration Guide


Planning Operators PUBLIC 191
Planning Operator Type Name Use

SCM S&OP Run global supply planning across your


supply chain network.

As of SAP Integrated Business Planning


1802, you define S&OP Operator
Profiles for the time-series-based sup­
ply planning algorithms instead of SCM
planning operators. You do this using
the S&OP Operator Profiles app.

For more information, see SAP Help


Portal at https://help.sap.com/ibp un­

der Application Help Business

Applications Time-Series-Based

Supply Planning Configuration

(Configuration Expert) Planning


Profiles for Time-Series-Based Supply

Planning .

Note the following about upgrading


from a lower release to 1802 or higher:

● All SCM planning operators created


prior to 1802 will still be available in
display mode in the Planning Areas
app.
● Existing SCM planning operators
that are assigned to a planning
area will be migrated automatically
to the new app and will be available
there as profiles.
● Existing planning operators that
are not assigned to a planning area
will not be automatically migrated.

SNAPSHOT Snapshot Take a snapshot of a predefined set of


key figures.

SNAPSHOTREDO Redo Snapshot Overwrite the most recent snapshot


with a new snapshot of a predefined set
of key figures.

Model Configuration Guide


192 PUBLIC Planning Operators
14.1 Creating a Planning Operator

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You can create most planning operator types in the Planning Operators app. Snapshot operators and redo
snapshot operators, however, are generated when you create a snapshot definition on the Snapshots tab of the
Planning Areas app.

Procedure

1. In the Planning Operators app, select a planning operator type from the list of planning operator types on
the left side of the screen.
2. Select + (Add Planning Operators).

You can specify the following pieces of information for your planning operator:
○ Planning operator name and description
○ Required modes (one or more): interactive, batch, or filter mode
○ Planning operator parameters
For more information, see the following table:

Field Description

Interactive Mode Specifies whether the user can run the planning operator
interactively in the current planning session in IBP Excel
add-in (by choosing Simulate and then the operator
name).

Batch Mode Specifies whether the user can schedule the planning op­
erator to run in the background (either immediately or as
a scheduled job).

Model Configuration Guide


Planning Operators PUBLIC 193
Field Description

Filter Mode Specifies whether the user can use filters when running or
scheduling the planning operator in IBP Excel add-in.

For example, if you activate the filter mode for the plan­
ning operator type SNAPSHOT, the user can use a stored
filter or create an ad-hoc filter when taking the snapshot
from IBP Excel add-in. Only the data that satisfies the filter
is included in the snapshot.

Define Parameters Parameters that are relevant for the planning operator
(parameter name and parameter value).

3. Save your changes.

Next Steps

Once you created and defined your planning operators, assign them to a planning area. For more information
see Assigning a Planning Operator to a Planning Area [page 194].

14.2 Assigning a Planning Operator to a Planning Area

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Make sure you have already created planning operators for the planning operator types available in the system.
For more information see Creating a Planning Operator [page 193].

Procedure

1. Open the Planning Areas app.


2. Select your planning area from the list of planning areas and open it.
3. Go to the Planning Operators tab.
4. Choose Add.

The Planning Operators dialog appears.

Model Configuration Guide


194 PUBLIC Planning Operators
5. Select the planning operators you want to assign to your planning area and choose OK.

14.3 Advanced Simulation (ADVSIM) Operator

The Advanced Simulation (ADVSIM) operator copies key figure values from source key figures to target key
figures during simulation. The ADVSIM operator supports disaggregation based on calculated key figures. It
cannot be run in batch mode.

External key figures and key figures using external key figures in their calculation rules can't be used in the
Advanced Simulation (ADVSIM) operator.

 Recommendation

The ADVSIM operator is a workaround for disaggregation with reference to a calculated key figure whose
values changed during a previous simulation. SAP recommends that you use this operator only when
absolutely necessary because it may affect performance during simulation or during saving and because it
requires a stored key figure. If the value of the referenced calculated key figure does not change frequently,
it is advisable to copy the calculated key figure to a stored key figure using a regularly scheduled copy
operator job and to use the stored key figure as a reference.

The following are sample use cases for the ADVSIM operator:

● Disaggregate the sales forecast quantity based on the last 12 months of sales history.
● Perform a complex calculation based on key figures at different planning levels before disaggregation.

The operator supports the following operations:

● Pre-Copy: Copies configured source key figure values to target key figure values before disaggregation
● Post-Copy: Copies configured source key figures to target key figures after disaggregation
● Disaggregation Key Figures: Whenever a change is made to a key figure defined as a disaggregation key
figure, the advanced simulation operator is triggered.

When a key figure is configured in an ADVSIM operator as a disaggregation key figure and its value is
subsequently changed or simulated in a planning view, the ADVSIM operator is triggered and does the following
for the changed cells only:

1. Pre-copy
2. Regular disaggregation of the key figure
3. Post-copy

Before calculated key figures can be used for disaggregation, the value of the calculated key figure must be
stored in another stored key figure at the same base planning level as the key figure that is being
disaggregated. This is done in the Pre-copy or the Post-copy operations of the ADVSIM operator.

The following table lists the configuration settings for the ADVSIM operator:

Parameter Explanation Mandatory/Optional

PRE_SOURCE_KFID1m Source key figure ID Optional

Model Configuration Guide


Planning Operators PUBLIC 195
Parameter Explanation Mandatory/Optional

PRE_TARGET_KFID1m Target key figure ID Optional

POST_SOURCE_KFID1m Source key figure ID Optional

POST_TARGET_KFID1m Target key figure ID Optional

DISAGG_KFID1m Key figures that invoke that ADVSIM op­ Mandatory


erator when their values change.

 Note

Note the following with respect to the parameter IDs:

"m" is a number that represents the key figure pair for source and target key figures. You configure it as
follows:

PRE_SOURCE_KFID11 = KF1, PRE_TARGET_KFID11 = KF2;

PRE_SOURCE_KFID12 = KF3, PRE_TARGET_KFID12 = KF4

KF1 is then copied to KF2, and KF3 is copied to KF4 as part of pre-copy, allowing copying of multiple key
figures in a single operator call.

 Note

If an operator contains multiple DISAGG key figures and there is a value change in any of the DISAGG key
figures, the system copies the values between all contained key figure pairs.

Other important conditions for the ADVSIM operator are as follows:

● Like any other simulation, the ADVSIM operator uses the filters from the planning view and applicable for
changed cell values of the DISAGG_KFID key figure.
● The source key figure for the copy operation can be either stored or calculated. The source key figures are
queried and then copied at the base planning level of the target key figures. The attributes available at
request level for the source key figure must be a superset of the base planning level of the target key figure.
● The target key figure for Pre-copy and Post-copy must be a stored key figure and must have the same base
planning level as the DISAGG_KFID key figure.

For more information, see the SAP Help Portal at http://help.sap.com/ibp and search for Planning with
Microsoft Excel.

14.3.1 Example: Setting Up the ADVSIM Operator

Prerequisities

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the

Model Configuration Guide


196 PUBLIC Planning Operators
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

The ADVSIM planning operator type is delivered as part of the standard SAP content for planning operators. In
this example, an ADVSIM operator is created to copy the calculated value of ACTUALSQTY offset by 12 months
(ACTUALQTYOFFSET) to a stored key figure ACTUALSQTYOFFSETSTORED.

To create an ADVSIM operator, use the Planning Operators app.

Steps

1. In the Planning Operators app, choose ADVSIM from the list of planning operator types on the left side of
the screen.
2. Select + (Add Planning Operators).
Make the following entries:

Field Entry

Name COPYACTUALOFFSET

Description Copy Actuals Offset

Interactive Mode Yes

Batch Mode No

Filter Mode No (system always uses the planning view filter)

3. Choose Define Parameters.


4. Add the parameters for the COPYACTUALOFFSET operator as follows:

Parameter Name Parameter Value

DISAGG_KFID11 SALEFCSTQTY

PRE_SOURCE_KFID11 ACTUALQTY12OFFSET

PRE_TARGET_KFID11 ACTUALSQTYOFFSETSTORED

5. Assign the operator to your planning area.

Model Configuration Guide


Planning Operators PUBLIC 197
Result

When SALESFCSTQTY is simulated or saved, the following takes place:

1. ACTUALQTY12OFFSET is calculated and copied to ACTUALSQTYOFFSETSTORED.


2. The disaggregation is performed on SALESFCSTQTY based on ACTUALSQTYOFFSETSTORED.
Note that SALESFCSTQTY is configured as follows with ACTUALSQTYOFFSETSTORED in the disaggregation
expression:

SALESFCSTQTY

14.4 Copy Operator (Advanced)

This operator is used to copy key figure values within a planning area as well as between two planning areas. If
necessary, source key figure values are aggregated and target key figure values are disaggregated.

Using the Copy Operator Profiles app, you configure the details of the copy process and save them in a copy
operator profile. You can set up the copy process for multiple key figures on different copy levels in one copy
operator profile and then copy all key figures that are required for a certain process step with one copy
operator run.

The Copy Operator (Advanced) combines the features of the existing Copy (COPY) Operator and Disaggregation
(DISAGG) Operator and offers a simplified configuration using the Copy Operator Profiles app. We recommend

Model Configuration Guide


198 PUBLIC Planning Operators
using the Copy Operator (Advanced). You can copy or migrate your existing operators using the Copy Operator
Profiles app.

Scheduling the Copy Operator (Advanced)

You can schedule the Copy Operator (Advanced) in the Application Jobs app.

We recommend using the application job template Copy and Disaggregate Key Figure Operator. Future
enhancements will only be added to this template.

The following application jobs templates are available for the different operator types:

Application Job Templates for Copy Operator (Advanced)

Job Template Copy and


Supported Use Case of Job Template Copy Operator Disaggregate Key Figure
Copy Operator (Advanced) Job Template Copy Operator with Time Period Filter Operator

Copy operator profile to copy yes yes yes


values within a planning area
(manually created)

Copy operator profile to copy yes yes yes


values within a planning area
(migrated from a COPY Op­
erator)

Copy operator profile to copy no no yes


values within a planning area
(migrated from a DISAGG
Operator)

Copy operator profile to copy no no yes


values between planning
areas (manually created or
migrated from a DISAGG Op­
erator)

You can also schedule the Copy Operator (Advanced) from the SAP IBP, add-in for Microsoft Excel.

Keeping Track of Your Operator Jobs

To track your operator jobs, you can use the Monitor System Tasks app. Here you get an overview of the most
important indicators, like runtime, number of key figures written and read.

Model Configuration Guide


Planning Operators PUBLIC 199
Related Information

Copy Operator Profiles [page 200]

14.4.1 Copy Operator Profiles

You can use this app to configure the Copy Operator (Advanced). This operator is used to copy key figure values
within a planning area as well as between two planning areas.

You can set up the copy process for multiple key figures on different copy levels in one copy operator profile
and then copy all key figures that are required for a certain process step with one copy operator run.

For a detailed description of all available settings and options, see the Web assistant help in the app.

Key Features

Key Figure Selection


Here you select the source and target key figure pairs. When you copy key figure values within one planning
area, the system automatically defaults the lowest attribute and time levels on which the key figures can be
read and written. When you copy key figure values between two planning areas, you need to manually select
the copy levels.

You can generate missing time period entries and initialize target key figures. However, if you choose to do so,
you can't use the profile to run the operator for scenarios.

If your copy operator profile contains several pairs of source and target key figures, you can choose to copy key
figures sequentially. This way you control how dependencies between the key figures are handled in the copy
process. Please only use this feature, if dependencies require it. It may lead to longer operator runtimes.

The following key figure types are supported for source key figures:

● Calculated and stored key figures


● Key figures defined on a time-independent base planning level, if they have a time-dependent REQUEST
level calculation with one key figure.
● External key figures

For target key figures, only stored key figures are supported.

Time and Attribute Selection


● You can choose a rolling time selection and select key figures by date, by period, or by period offset and
duration.
● When you schedule the operator in the SAP Integrated Business Planning, add-in for Microsoft Excel, you
can adjust the period selection afterwards. This feature is only available for profiles with one time profile
level.
● You can manually adjust period offset, period duration, and period shift, if necessary.
● You can optionally define filters based on attribute values.

Model Configuration Guide


200 PUBLIC Planning Operators
● You can units of measure as attribute selections.

Processing Options

You can specify how key figure values are processed:

● Missing planning objects can be generated.


● Proportional disaggregation can be disabled.
● Key figure fixing can be considered in multiple ways.
● Processing can be spilt into packages to limit memory consumption and the risk of locking issues. You can
also copy key figures values in parallel if no disaggregation is required and other prerequisites are met. For
more information, see Processing of Key Figures [page 202].

Copying Key Figure Values Between Planning Areas

You can copy key figure values within one planning area or between two planning areas. If you’re copying values
between planning areas, there are some additional points to consider:

● You can choose if the execution of the operator can be triggered from the source or from the target
planning area.
● In the section Mapping, you can map time profile levels and attributes, if nessecary.
Additionally, if the two planning areas use different attribute IDs you can map these attributes, if necessary.
● You can use attribute selections while reading the source key figures and/or while writing the target key
figures.
● If you copy key figure values between two planning areas, it's not possible to change the time selection or
change the version or scenario when you execute or schedule the operator in the SAP IBP, add-in for
Microsoft Excel.

Copying or Migrating Existing Operators

You can copy existing copy and disaggregation operator configurations into the Copy Operator Profiles app. The
system creates a copy operator profile containing an independent copy of the selected operator. The selected
operator is unassigned from the planning area but isn't changed.

You additionally have the option to migrate existing copy or disaggregation operators into a copy operator
profile. Application jobs and application job templates that use the migrated operator will automatically use the
newly created copy operator profile instead. When you save the draft version of the created copy operator
profile for the first time, the copy or disaggregation operator will be removed from the panning area.

After migrating an operator, jobs and application job templates that use this copy operator still refer to the old
copy operator ID. Nevertheless, the system uses the copy operator profile created by the migration for
execution. To replace the copy operator ID by the migrated copy operator profile ID in the job template, you can
open the template in edit mode, select Check, and save.

Supported Device Types

● Desktop
● Tablet

Model Configuration Guide


Planning Operators PUBLIC 201
Related Information

Copy Operator (Advanced) [page 198]

14.4.2 Processing of Key Figures

When you execute a copy operator, the key figure values are copied for the selected versions and scenarios in
one or several key figure groups. Key figure groups are always processed sequentially. Within a key figure
group, values are copied in one or several packages.

Processing of Key Figures in Groups

For performance reasons, the system tries to process all key figures in one group. If it isn't possible, the system
splits the key figure processing into several groups. Reasons for processing key figures in groups include:

● The Copy Key Figures Sequentially option is selected.


● The key figure pairs use different copy levels.
● The settings for Create Missing Periods or Clear Values differ.

If you select the Copy Key Figures Sequentially option, every key figure pair is processed as a separate group.
As this may result in longer run times, we recommend using this option only if it's necessary.

 Note

You can see the key figure processing groups in the execution log of the operator but not in the Copy
Operator Profiles app.

Packaging Within a Key Figure Group

To reduce the memory consumption and the risk of locking issues, we recommend using packages. Unless you
set a specific number of processing packages in your profile, the system uses the default number of processing
packages as defined in the global configuration parameter NUMBER_OF_PROCESSING_PACKAGES. For more
information, see Global Configuration Parameters [page 338]. The system then generates packages for
processing of key figure values within a key figure group. As packages are built by period, this is only possible if
the copy operator profile is used for more than one period. Packages are processed sequentially and saved
independently.

In some cases, for example for operator profiles that are used to copy large data sets, it makes sense to specify
in the copy operator profile how many processing packages you want the system to generate.

 Note

In the following cases we recommend that you disable packaged processing by setting the number of
processing packages to 1:

Model Configuration Guide


202 PUBLIC Planning Operators
● Depending on the configuration of the source key figures, reading only one or a few periods may lead to
different values. When copying such key figures, we recommend that you disable packaged processing.
● If a source key figure has a filter block for a time attribute, packaged processing can cause a significant
increase in runtime as the time selection of the packages can't be used efficiently.
You can check in the Key Figure Calculations app if a source key figure has a filter block for a time
attribute. If you can't use packaged processing, you can use attribute selections to split large jobs
instead.

Example

Example of Profile Settings


Copy Level / Clear
Copy Key Figures Se­ Values / Create Miss­
Profile Key Figure Pairs quentially ing Periods Key Figure Groups

A 3 no Identical for all key fig­ 1


ure pairs

B ● Identical for two 2


key figure pairs
● Different for third
key figure pair

C yes not relevant 3

Let's assume the profiles are used to copy key figure values for 52 periods and the number of processing
packages is set to 5.

If you run the same operator for two versions, you get the following number of packages:

● Profile A: 2 Versions * 1 Key Figure Group * 5 Packages/ Key Figure Group → 10 Packages
● Profile B: 2 Versions * 2 Key Figure Groups * 5 Packages/ Key Figure Group → 20 Packages
● Profile C: 2 Versions * 3 Key Figure Groups * 5 Packages/ Key Figure Group → 30 Packages

Parallel Processing of Packages

In some cases, the packages of a key figure group can be processed in parallel.

Clear Values
For key figure groups that clear target key figure values, packages are processed in parallel if the following
conditions are met:

● You've set the option Clear Values to Yes and the option Generate Missing Periods to No.
● You haven't selected a source key figure.
● The value in the field Number of Processing Packages is greater than 1.

Model Configuration Guide


Planning Operators PUBLIC 203
● The value in field Parallel Processes for Clear Values is greater than 1.

The default value of the field Parallel Processes for Clear Values is defined by the global configuration parameter
PARALLEL_PROCESSES_CLEAR. The default value of this parameter is 3 and its maximum value is 5.

Base Level Copy


Packages of a key figure group that copy values are processed in parallel if the following conditions are met:

● You've selected a source key figure for all key figure pairs of the group.
● You have set the options Disaggregation Required, Clear Values, and Generate Missing Periods to No for all
key figure pairs of the group.
● You've set the option Generate Missing Planning Objects set to No.
● The absolute value of field Period Shift (Copy Level) must be 0 or it must be higher than the value of field
Period Duration. For example, the period shift could be 6 while the period duration is 5 or the period shift
could be -6 while the period duration is 5. Otherwise, packages are processed sequentially to yield the
correct results.

The default value of the field Parallel Processes for Base Copy is defined by the global configuration parameter
PARALLEL_PROCESSES_BASE_COPY. The default value of this parameter is 1 and its maximum value is 3.

 Note

To avoid a negative impact on performance, we recommend that you only use parallel processing for jobs
that require fast execution.

14.4.3 Preparing Automatic Migration


The copy (COPY) operator and disaggregation (DISAGG) operator are being deprecated and will be replaced by
the Copy Operator (Advanced), which offers all features of the existing operators.

All existing operators that haven't been migrated until then, will be migrated automatically. You can easily
migrate copy (COPY) operators and disaggregation (DISAGG) operators using the import feature in the Copy
Operator Profiles app.

To prepare for automatic migration, check and correct all inconsistent operators or delete them if they’re
obsolete. To check the existing operators, proceed as follows:

1. Open the Application Logs app and search for operator migration logs with the following parameters:
○ Created From: 7 days back
○ Area: IBP Foundation
○ Sub Area: Operator Migration
A simulation of the migration process is automatically done every week or can be started manually from
the Copy Operator Profiles app.
2. Open the log and check if operators couldn’t be migrated or if warnings occurred during operator
migration in simulation mode.
3. Check the message attachments for detailed warnings or errors.
4. Correct the inconsistent operators in the Planning Operators app or delete them if they’re obsolete.
5. Check if the inconsistency is resolved by importing the operators in simulation mode into the Copy
Operator Profiles app. To do so, proceed as follows:

Model Configuration Guide


204 PUBLIC Planning Operators
1. Choose Import Many Copy or Disaggregation Operators .
2. Select Copy Operator and Disaggregation Operator as operator type and choose Simulate.
3. Check the generated application log as described in the first step.

14.5 Copy (COPY) Operator

 Note

This operator is only available to customers who licensed IBP prior to SAP Integrated Business Planning for
Supply Chain 2005. Please use Copy Operator (Advanced) instead. For more information, see Copy
Operator (Advanced) [page 198] .

The copy (COPY) operator is primarily used to copy calculated or stored values from one key figure to a stored
key figure in the same version of a planning area (base or other). In addition, it can create any missing time
periods for the target key figure and assign an empty value to them. It can also be used to clear key figure
values.

If the copy operator is applied for version key figures, both the source and target key figures must be added to
the version.

Key figures can be copied only if the source key figure can be calculated at the base planning level of the target
key figure. The copy operator calculates values of the source key figure at the base planning level of the target
key figure for all possible combinations, and updates the target key figure values. Values are calculated based
on the calculation configuration.

 Example

KF1 is a stored key figure with base planning level PRODLOCCUST, and KF2 is a stored key figure with base
planning level PRODLOC.

If you define a COPY operator to copy KF1 to KF2, the operator calculates values of KF1 for all possible
combinations of PROD-LOC and stores the result in KF2.

You can configure this operator in a similar way to other batch operators, and make it available in the SAP
Integrated Business Planning, add-in for Microsoft Excel by adding it to the roles.

 Note

Only time-dependent target key figures are supported for the copy operator.

 Caution

In some cases, a user may have a role that grants unlimited read access but restricted write access. The
restriction may be based on a permission filter or may be set for specific key figures. If this user runs the
copy operator, it will copy values of the key figure for all possible attribute combinations from the source to
the target without considering the user's authorizations.

To prevent this, define the restrictions at read level of the source key figure.

For more information, see SAP Note 2445262 .

Model Configuration Guide


Planning Operators PUBLIC 205
Parameters

Parameter Explanation Mandatory/Optional

SOURCE_KFIDn Source key figure ID. n is a number Mandatory for copy


starting from 1
Optional if you only want to create the
missing time periods for the target key
figure For more information, see the
CREATE_TIMEPERIODS parameter be­
low.

TARGET_KFIDn Target key figure ID. n is a number Mandatory


starting from 1.

 Note
Define source and target key fig­
ures in pairs. For example,
SOURCE_KFID1 is copied to
TARGET_KFID1, SOURCE_KFID2 is
copied to TARGET_KFID2, and so
on. This allows execution of multi­
ple key figure copies in a single op­
erator call.

Model Configuration Guide


206 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional

PERIOD_OFFSET Offset relative to the current period. If Optional


this parameter isn’t specified, it de­
faults to zero, in which case only values
in future buckets are copied. If you want
to copy values in the past, specify a
negative offset.

The offset is applied as follows:

1. Determine the current bucket at


the most granular level of the time
profile.
2. Determine the current bucket at
the granularity specified in the
base planning level of the target
key figure.
3. Apply the offset to the current
bucket determined in step 2.

 Example
If the time profile has week, month,
quarter, and year, and the base
planning level of the target key fig­
ure is month:

1. Determine the current week.


2. Determine the month that
contains the current week.
3. Add the offset to the current
month to determine the begin­
ning of the month to which the
data will be copied.

Model Configuration Guide


Planning Operators PUBLIC 207
Parameter Explanation Mandatory/Optional

DURATION Number of periods to be copied start­ Optional (Mandatory if


ing from the offset defined in PERIOD_OFFSET is specified.)
PERIOD_OFFSET. Can be used with
PERIOD_OFFSET to restrict the copy to
a specific range of time buckets.

If not specified or zero, it is considered


to be until the end of the horizon.

 Example
If you want to copy values from the
past and future, for example 12
months in the past and 12 months
in the future, then you define the
following: PERIOD_OFFSET: -12
and DURATION: 25.

<Attribute>_VALUEn Configured filter Optional

● <Attribute> is the name of an


attribute.
● n is a number starting from 1 for
each attribute, which enumerates
the allowed values.
● You can specify multiple values for
a single attribute.
● You can specify multiple attributes.
● This configured filter is applied for
every COPY operation. It cannot be
overridden from the SAP IBP, add-
in for Microsoft Excel , but users
can specify a user filter when
scheduling the operator to restrict
it further. The system considers
the intersection of configured filter
and user­specified filter.

Model Configuration Guide


208 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional

CREATE_TIMEPERIODS Creates the missing periods for the tar­ Optional


get key figure and assigns these periods
an empty value. The parameters listed
above are taken into account.

If you activate this parameter (by set­


ting the parameter value to X), the copy
operator does the following:

● If you have specified a source key


figure, the copy operator copies
the source key figure to the target
key figure and creates the missing
periods.
● If you have not specified a source
key figure, the copy operator only
fills in the missing time periods for
the target key figure.

Note that this parameter is not taken


into account if the copy operator is run
for scenarios.

PERIOD_SHIFT Number of periods by which the source Optional


key figure values are shifted.

TARGETCONVATTRTO1 Target attribute used if you want to Mandatory if you want to directly copy
copy a source key figure value that has key figure values that have a conversion
a conversion, such as a unit of measure without having to create intermediate
or currency conversion key figures. Otherwise, optional.

TARGETCONVATTRTOVAL1 Value of the target attribute used if you Mandatory if you want to directly copy
want to copy a source key figure value key figure values that have a conversion
that has a conversion, such as a unit of without having to create intermediate
measure or currency conversion key figures. Otherwise, optional.

Model Configuration Guide


Planning Operators PUBLIC 209
Parameter Explanation Mandatory/Optional

CLEAR_KF_VALUES Clears the value of the target key figure, Optional


that is, sets the value to null.

If you enter a source key figure, the op­


erator first copies the values to the tar­
get key figure, thereby creating any
planning combinations that don't al­
ready exist. It then clears the value of
the target key figure. If you don't enter a
source key figure, the operator simply
clears the target key figure values. No
planning combinations are created in
this case.

Note that this parameter is not taken


into account if the copy operator is run
for scenarios.

Model Configuration Guide


210 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional

PARALLEL_MODE Copies the source key figure values to Optional


the target key figure values without tak­
ing into account any dependencies.

Note that this parameter is not taken


into account if the copy operator is run
for scenarios.

 Example
You have the following key figure
values in your system:

● SKF1 = 2 (stored or calculated)


● TKF1 = 1 (stored)
● SKF2 = 10 * TKF1 (calculated)
● TKF2 = 10 (stored)

SKF1 is to be copied to TKF1 and


SKF2 is to be copied to TKF2.

If you run the operator in sequential


mode, the value of SKF1 is first
written to TKF1, meaning that TKF1
is now equal to 2. Then the value of
SKF2, which is now 20 (10 * 2) is
read and written to TKF2. The value
of TKF2 is therefore 20.

If you run the operator in parallel


mode, the values of SKF1 and SKF2
are read first before any copy oper­
ation takes place. SKF1 is therefore
2 and SKF2 is 10. The values are
then copied to the corresponding
target values, and so TKF1 is equal
to 2 and TKF2 is equal to 10.

SAP_UI_SORT_ORDER The SAP_UI_SORT_ORDER parameter Optional


specifies the position of the planning
operator in the list of operators in the
IBP Excel Add-In (for example, in the
dropdown lists). To set the position, en­
ter 10 for the first position, 20 for the
second position, and so on.

Model Configuration Guide


Planning Operators PUBLIC 211
Parameter Explanation Mandatory/Optional

IS_FILTER_REQUIRED Indicates whether the user must spec­ Optional


ify a planning filter when scheduling the
COPY operator. If this parameter is set
to X, the user cannot schedule the op­
erator without selecting a planning fil­
ter.

Related Information

Example: Clearing Key Figure Values [page 214]

14.5.1 Example: Setting Up the Copy Operator

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

To set up the Copy operator, use the Planning Operators app.

 Note

To configure planning operators, the Planning Model business catalog must be assigned to a business role
assigned to your user.

The following example illustrates how to set up the Copy operator.

Steps

1. In the Planning Operators app, choose COPY from the list of planning operator types on the left side of the
screen.
2. Select + (Add Planning Operators).

Model Configuration Guide


212 PUBLIC Planning Operators
Make the following entries:

Field Entry

Name COPY_STORED

Description Copy from Stored KFs to Stored KFs

Interactive Mode No

Batch Mode Yes

Filter Mode Select or deselect according to whether you want the user
to use filters when running or scheduling the operator in
IBP Excel add-in.

Define parameters as follows:

Parameter Name Parameter Value Stored/Calculated Base Planning Level

DURATION 5

PERIOD_OFFSET 0

SOURCE_KFID1 FINANCEPLANPROFIT Stored PERPRODFMLCUSTREG

SOURCE_KFID2 FINANCEPLANQTY Stored PERPRODFMLCUSTREG

TARGET_KFID1 FINANCEPLANREV Stored PERPRODFMLCUSTREG

TARGET_KFID2 CMPAVAILABLEQTY Stored PERPRODLOC

SM1PRDID_VALUE1 x101 Phone

SM1PRDID_VALUE2 x101 Media Player

3. Add a second planning operator.


Make the following entries:

Field Name

Name COPY_CALCULATED

Description Copy from Calculated KFs to Stored KFs

Interactive Mode No

Batch Mode Yes

Filter Mode Yes

Model Configuration Guide


Planning Operators PUBLIC 213
Define parameters as follows:

Parameter Name Parameter Value Stored/Calculated Base Planning Level

DURATION 100

PERIOD_OFFSET 0

SOURCE_KFID1 FINANCEPLANPRICE Calculated PERPRODFMLCUSTREG

SOURCE_KFID2 INVENTORYTARGETCOST Calculated PERPRODFMLCUSTREG

TARGET_KFID1 FINANCEPLANREV Stored PERPRODFMLCUSTREG

TARGET_KFID2 FINANCEPLANPROFIT Stored PERPRODLOC

4. Save your entries.


5. Assign the planning operator to the relevant planning area. For more information see Assigning a Planning
Operator to a Planning Area [page 194].

14.5.2 Example: Clearing Key Figure Values

Parameter CLEAR_KF_VALUES can be set to nullify the values of the target key figure. Depending on how you
configure the operator, planning combinations and time periods can also be created.

Source Key Figure Specified and Time Periods Not Created

If you enter a source key figure, the copy operator first copies the values to the target key figure, thereby
creating any planning combinations that don't already exist. It then clears the value of the target key figure.

Example
Stored source key figure SKF1 has been defined for the planning level Month – Customer ID – Product ID.
Stored target key figure TKF1 has been defined for the base planning level Month – Customer Region – Product
Family.

Before the copy operator runs, the data in your system is as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

Model Configuration Guide


214 PUBLIC Planning Operators
Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

NA Phones Sept 2017 15000

APAC Phones Sept 2017 11000

When the copy operator runs, it copies the values from the source key figure to the target key figure. During
this process, it checks whether planning combinations of Customer Region and Product Family exist. If they
don't, the operator creates them and copies key figure values to them.

Customer Region Product Family Period SKF1

EMEA Phones Sept 2017 20000

NA Phones Sept 2017 10000

In this case, the planning combination EMEA – Phones exists for the source key figure but not for the target key
figure. The copy operator therefore creates this planning combination for the target key figure.

After the copy operator has run, the planning data in your planning area will be as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

NA Phones Sept 2017

APAC Phones Sept 2017

EMEA Phones Sept 2017

The planning combination EMEA and Phones has been created for the planning level Month – Customer Region
– Product Family. The values for target key figure TKF1 have been cleared for the planning combinations NA –
Phones, APAC – Phones, and EMEA – Phones.

Source Key Figure Not Specified and Time Periods Not Created

If you don't specify a source key figure for the target key figure, the copy operator only clears target key figure
values. No new planning combinations are created for target key figure.

Example
Stored target key figure TKF1 has been defined for the base planning level Month – Customer Region – Product
Family.

Model Configuration Guide


Planning Operators PUBLIC 215
Before the copy operator runs, the data in your system is as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

NA Phones Sept 2017 15000

APAC Phones Sept 2017 11000

After the copy operator has run, the planning data in your planning area will be as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

NA Phones Sept 2017

APAC Phones Sept 2017

No new planning combination has been created for the planning level Month – Customer Region – Product
Family. The values for target key figure TKF1 have been cleared for the planning combinations NA – Phones and
APAC – Phones.

Source Key Figure Specified and Time Periods Are Created

If you have specified that time periods are to be created and you have also entered a source key figure, the copy
operator first copies the values to the target key figure, thereby creating any planning combinations that don't
already exist. It then creates any missing time periods for the target key figure, and finally it clears the value of
the target key figure.

Example
Stored source key figure SKF1 has been defined for the planning level Month – Customer ID – Product ID.
Stored target key figure TKF1 has been defined for the base planning level Month – Customer Region – Product
Family.

Model Configuration Guide


216 PUBLIC Planning Operators
You define a copy operator with the following parameters:

Parameter Parameter Value

SOURCE_KFID1 SKF1

TARGET_KFID1 TKF1

CREATE_TIMEPERIODS X

CLEAR_KF_VALUES X

DURATION 3

PERIOD_OFFSET 1

Before the copy operator runs, the data in your system is as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

C1 EMEA P1 Phones Nov 2017 10000

C2 EMEA P1 Phones Nov 2017 10000

C3 NA P1 Phones Nov 2017 10000

NA Phones Sept 2017 15000

NA Phones Nov 2017 15000

APAC Phones Sept 2017 11000

Let's assume that the current month is August 2017.

When the copy operator runs, it copies the values from the source key figure to the target key figure. During
this process, it checks whether planning combinations of Customer Region and Product Family exist. If they
don't, the operator creates them and copies key figure values to them. It then creates missing periods within
the time interval Sept 2017—Nov 2017 with key figure values of “null”. Finally, it clears any other target key
figure values.

Customer Region Product Family Period SKF1

EMEA Phones Sept 2017 20000

NA Phones Sept 2017 10000

Model Configuration Guide


Planning Operators PUBLIC 217
In this case, the planning combination EMEA – Phones exists for the source key figure but not for the target key
figure. The copy operator therefore creates this planning combination for the target key figure.

After the copy operator has run, the planning data in your planning area will be as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

C1 EMEA P1 Phones Nov 2017 10000

C2 EMEA P1 Phones Nov 2017 10000

C3 NA P1 Phones Nov 2017 10000

NA Phones Sept 2017

NA Phones Oct 2017

NA Phones Nov 2017

APAC Phones Sept 2017

APAC Phones Oct 2017

APAC Phones Nov 2017

EMEA Phones Sept 2017

EMEA Phones Oct 2017

EMEA Phones Nov 2017

The planning combination EMEA – Phones has been created for the planning level Month – Customer Region –
Product Family. Missing periods within the time frame Sept 2017—Nov 2017 have been created. The values for
target key figure TKF1 have been cleared for the planning combinations NA – Phones, APAC – Phones, and
EMEA – Phones.

Source Key Figure Not Specified and Time Periods Are Created

If you have specified that time periods are to be created but you have not specified a source key figure for the
target key figure, the copy operator first creates any missing periods for the target key figure, and then it clears
the target key figure values. No new planning combinations are created for target key figure.

Model Configuration Guide


218 PUBLIC Planning Operators
Example
Stored target key figure TKF1 has been defined for the base planning level Month – Customer Region – Product
Family.

You define a copy operator with the following parameters:

Parameter Parameter Value

TARGET_KFID1 TKF1

CREATE_TIMEPERIODS X

CLEAR_KF_VALUES X

DURATION 3

PERIOD_OFFSET 1

Before the copy operator runs, the data in your system is as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

C1 EMEA P1 Phones Nov 2017 10000

C2 EMEA P1 Phones Nov 2017 10000

C3 NA P1 Phones Nov 2017 10000

NA Phones Sept 2017 15000

NA Phones Nov 2017 15000

APAC Phones Sept 2017 11000

Let's assume that the current month is August 2017.

When the copy operator runs, it creates missing periods within the time interval Sept 2017—Nov 2017 with key
figure values of “null”. It then clears any other target key figure values.

After the copy operator has run, the planning data in your planning area will be as follows.

Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C1 EMEA P1 Phones Sept 2017 10000

Model Configuration Guide


Planning Operators PUBLIC 219
Customer
Customer ID Region Product ID Product Family Period SKF1 TKF1

C2 EMEA P1 Phones Sept 2017 10000

C3 NA P1 Phones Sept 2017 10000

C1 EMEA P1 Phones Nov 2017 10000

C2 EMEA P1 Phones Nov 2017 10000

C3 NA P1 Phones Nov 2017 10000

NA Phones Sept 2017

NA Phones Oct 2017

NA Phones Nov 2017

APAC Phones Sept 2017

APAC Phones Oct 2017

APAC Phones Nov 2017

Missing periods within the time frame Sept 2017—Nov 2017 have been created for planning combinations NA –
Phones and APAC – Phones. The values for target key figure TKF1 have also been cleared for these planning
combinations.

14.6 Snapshot (SNAPSHOT) Operator

The snapshot (SNAPSHOT) planning operator allows users to take snapshots of key figures in the SAP
Integrated Business Planning, add-in for Microsoft Excel or the Application Jobs app.

When you define a snapshot on the Snapshots tab of the Planning Areas app, the system automatically creates
a Snapshot planning operator and a Redo Snapshot planning operator for the definition. All further snapshot
definitions are added to the same planning operators.

Planning operators of this type are not editable.

Related Information

Configuring Original Snapshots [page 238]

Model Configuration Guide


220 PUBLIC Planning Operators
14.7 Redo Snapshot (SNAPSHOTREDO) Operator
The redo snapshot (SNAPSHOTREDO) planning operator allows users to retake a snapshot if there are errors in
the data. The operator overwrites the most recent snapshot with a new snapshot for the same set of key
figures in a batch process.

When you define a snapshot on the Snapshots tab of the Planning Areas app, the system automatically creates
a Snapshot planning operator and a Redo Snapshot planning operator for the definition. All further snapshot
definitions are added to the same planning operators.

Planning operators of this type are not editable.

Related Information

Configuring Original Snapshots [page 238]

14.8 Disaggregation (DISAGG) Operator


The disaggregation (DISAGG) operator can be used to copy key figure values within the same version of a
planning area, as well as between two planning areas.

 Note

This operator is only available to customers who licensed IBP prior to SAP Integrated Business Planning for
Supply Chain 2005. Please use Copy Operator (Advanced) instead. For more information, see Copy
Operator (Advanced) [page 198] .

You can configure this operator in a similar way to other batch operators and make it available in the SAP IBP,
add-in for Microsoft Excel by adding it to a business role. The disaggregation operator works in batch mode
only.

Copying and Disaggregating Key Figure Data

You can use the disaggregation (DISAGG) operator to copy key figure values between key figures on a certain
aggregation level. If required, source key figure values are aggregated and target key figure values are
disaggregated.
.

Model Configuration Guide


Planning Operators PUBLIC 221
For calculated (and stored) source key figures, the calculated value is copied. For stored source key figures, the
stored value is copied.

Within one planning area, key figure values can only be copied in the same version. When copying key figure
values between two planning areas, the source and target version can be selected and may differ.

 Note

● The DISAGG operator does not copy fixing by default. You can enable copying fixing information by
using the parameter COPY_KF_FIXING. As a prerequisite, the source and target key figures must be
enabled for fixing and the aggregation level must be the same as the base planning level of the source
key figures.
● Aggregated constraint key figure values are stored only at the aggregate level (that is, the planning level
where you entered them in the Microsoft Excel planning view), and there is no disaggregation.
Therefore, aggregated constraint key figures can't be used in the DISAGG operator. For more
information see Aggregated Constraints.

Creating Missing Planning Objects

The Disaggregation operator can also create missing planning objects, if the following prerequisites are met:

● The aggregation level of the DISAGG operator (ATTRIBUTE1, ATTRIBUTE2, and so on) must be the same as
the root attributes of the base planning level of the target key figures.
● Planning objects can only be created if the required master data values are available. The DISAGG operator
does not create missing master data type values.

Handling the Aggregation Level and Time Profile Level

The disaggregation operator can read values of the source key figure at a higher level than the base planning
level of the target key figure (at the aggregation level). The operator then copies the values from the source key
figure to the target key figure, disaggregating the values to the base planning level of the target key figure.

 Example

KF1 is a stored key figure with base planning level product-customer, and KF2 is a stored key figure with
base planning level product-location.

If you define the DISAGG operator to copy and disaggregate the values from KF1 to KF2 at the aggregation
level of PRDID, then the DISAGG operator reads the key figures values of KF1 at the aggregation level of
product, then disaggregates and writes the values to KF2 at product-location level.

 Note

● The source key figure can be calculated or stored, but the target key figure must be stored.
● Disaggregation works even if the source key figure cannot be calculated at the base planning level of
the target key figure.

Model Configuration Guide


222 PUBLIC Planning Operators
● If the disaggregation operator is used for version key figures, both source and target key figures must
be added to the version.

Parameters

When you define a new planning operator of the DISAGG planning operator type, specify values for the
following parameters in the Planning Operators app:

Parameters

Parameter Explanation Mandatory/Optional Comment

ATTRIBUTEn The aggregation level is the Mandatory to specify at least


level at which the source key one attribute for the aggrega­
figure is read and copied to tion level.
the target key figure (before
disaggregation takes place).

 Example
You want to read the
source key figure data at
product-customer level.
Specify the root attrib­
utes of the respective
master data types, such
as PRDID and CUSTID ,
as ATTRIBUTE1, and
ATTRIBUTE2.

DURATION The number of periods to be Optional


copied and disaggregated
Mandatory if
starting from the offset de­
PERIOD_OFFSET is specified
fined in PERIOD_OFFSET.
Can be used with
PERIOD_OFFSET to restrict
the copy and disaggregation
to a specific range of time
buckets.

If you have not specified


DURATION and
PERIOD_OFFSET, the opera­
tor processes the key figure
values in the whole planning
horizon.

Model Configuration Guide


Planning Operators PUBLIC 223
Parameter Explanation Mandatory/Optional Comment

FILTER_ATTRIBUTEn The attribute for the config­ Optional


ured filter. You can define
multiple filter attributes.

No matter if you are copying


key figure values within one
planning area or between
planning areas, filters are
considered as follows:

● While writing the target


key figure values, filters
for attributes that are
part of the base planning
level of the target key
figure are applied.
● While reading the source
key figure values, all fil­
ters are applied.

FILTER_VALUEn The value for the corre­ Optional To filter for multiple values of
sponding filter attribute that the same attribute, you need
you have specified. to specify the filter attribute
for every filter value, for ex­
 Note ample:

This configured filter is ● FILTER_ATTRIBUTE1:


applied for every DISAGG LOCID
operation. It cannot be ● FILTER_VALUE1: Distri­
overridden with a filter bution Center 1
defined in the SAP Inte­
● FILTER_ATTRIBUTE2:
grated Business Plan­
LOCID
ning, add-in for Microsoft
● FILTER_VALUE2: Distri­
Excel, but users can
bution Center 2
specify a user filter when
scheduling the operator
to restrict it further. The
system takes this combi­
nation of configured and
user­specified filters into
account.

Model Configuration Guide


224 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional Comment

PERIODID Technical ID of the time level Either PERIODID or


(for example, ). PERIODNAME is mandatory.
Specify only one of them.
 Note
The PERIODID does not
correspond to the num­
ber of the time level.

PERIODNAME The name of the time level at Either PERIODID or


which you want to read and PERIODNAME is mandatory.
disaggregate the data as de­ Specify only one of them.
fined in the time profile of
your planning area (for exam­
ple, Monthly).

PERIODSHIFT The period shift is the source Optional


key figure value from period
n copied and disaggregated
to target key figure value in
period n plus the value de­
fined for the PERIODSHIFT
parameter.

 Example
You specify Yearly for
PERIODNAME. In this
case, the value 1 for the
PERIODSHIFT parame­
ter means that the val­
ues of the source key fig­
ure are copied and disag­
gregated to the next year
period of the target key
figure.

PERIOD_OFFSET Offset relative to the current Optional


period.

If you have specified a value


for DURATION, the default
value for PERIOD_OFFSET is
0.

Model Configuration Guide


Planning Operators PUBLIC 225
Parameter Explanation Mandatory/Optional Comment

SEQUENTIAL If you have multiple pairs of Optional


source and target key figures,
you can specify that the sys­
tem processes them sequen­
tially. With sequential proc­
essing, the system includes
the result of a key figure copy
and disaggregation in the
subsequent copy and disag­
gregation.

For an example about the use


of this parameter, see Exam­
ple: Setting Up the Disaggre­
gation Operator [page 233].

CREATE_NO_PLANNING_OBJ This parameter specifies that Optional By default, missing planning


ECTS you do not want to create objects are created if the ag­
missing planning objects dur­ gregation level is the same as
ing the process of copying the base planning level of the
key figure data between two target key figure. You can use
planning areas. this parameter to prevent the
creation of missing planning
objects.

Model Configuration Guide


226 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional Comment

NO_PROPORTIONAL_DISAGG Allows the system to disable Optional You can use this parameter in
the proportional disaggrega­ the following way to redistrib­
tion of a key figure. If you set ute key figure values which
the value to X or x, No are stored in technical weeks
Proportional Disaggregation according to period weight
is used as Proportionality, factors:
that is, the key figure values
● Select the relevant key
are disaggregated according
figure as source key fig­
to their disaggregation mode
ure (SOURCE_KFIDn)
(Equal or Copy). If a period
and target key figure
weight factor is defined, it is
(TARGET_KFIDn)
considered.
● Select the root attrib­
utes of the base plan­
ning level of the key fig­
ure as aggregation level
(ATTRIBUTEn parame­
ter)
● Select calendar week as
time level (PERIODID or
PERIODNAME)
The disaggregation op­
erator will read key fig­
ure values on calendar
week level and disaggre­
gate them to technical
weeks according to the
period weight factors.

SOURCE_KFIDn Source key figure ID. n is a Mandatory to define at least


number starting from 1. one source key figure.

TARGET_KFIDn Target key figure ID. n is a Mandatory to define at least


number starting from 1. one target key figure.

 Note

Define source and target key


figures in pairs. For example,
SOURCE_KFID1 is copied to
TARGET_KFID1,
SOURCE_KFID2 is copied to
TARGET_KFID2, and so on.
This enables the execution of
multiple key figure copies
and disaggregations in a sin­
gle operator call.

Model Configuration Guide


Planning Operators PUBLIC 227
Parameter Explanation Mandatory/Optional Comment

COPY_KF_FIXING Specifies that when copying Optional This parameter cannot be


key figure values, fixing infor­ used in combination with pa­
mation is also copied. rameter UNFIX_TARGET_KF.

UNFIX_TARGET_KF Specifies that when copying Optional This parameter cannot be


key figure values, the target used in combination with pa­
key figures are unfixed. rameter COPY_KF_FIXING.

IS_FILTER_REQUIRED Indicates whether the user


must specify a filter value
when scheduling the DISAGG
operator. If this parameter is
set to X, the user cannot
schedule the operator with­
out selecting a filter.

SAP_UI_SORT_ORDER
Specifies the position of the
planning operator in the list
of operators in the SAP Inte­
grated Business Planning,
add-in for Microsoft Excel
(for example, in the drop­
down lists). To set the posi­
tion, enter 10 for the first po­
sition, 20 for the second po­
sition, and so on.

NUMBER_OF_PROCESSING_P The number of packages you Optional For more information, see
ACKAGES want the system to split the Packaged Processing of the
processing of the DISAGG DISAGG Operator [page 231]
operator into.

Additional Parameters for Copying Key Figure Values from one Planning Area to Another Planning Area

Parameter Explanation Mandatory/Optional Comment

SOURCE_PLAREA Source planning area Required if you want to copy You must assign the DISAGG
key figure data between a operator either to the source
TARGET_PLAREA Target planning area source planning area and a or to the target planning
target planning area. area.

SOURCE_VERSION Source planning version Required if you want to copy ● If not specified, the base
key figure data between a version is used.
source planning area and a ● The base version can be
target planning area. selected explicitly using
the constant BASELINE.

Model Configuration Guide


228 PUBLIC Planning Operators
Parameter Explanation Mandatory/Optional Comment

TARGET_VERSION Target planning version  Caution ● If you want to copy data


within one planning
When you want to copy
data within one planning area, you must use the
area, a version copy is Copy (COPY) operator.
not allowed. In such a
case, the parameters
SOURCE_VERSION and
TARGET_VERSION must
be equal or not specified.

SOURCE_MAP_ATTRIBUTEn The source attribute from Required if attribute mapping ● The master data types
which you want to copy data is necessary, for example, if of the attributes are not
when copying data between the source planning area has relevant.
two planning areas. the attribute PRDID (for ex­ ● Only attributes of data
ample in Demand), while the type INTEGER can be
target planning area has mapped to attributes of
MATID (for example in Re­ data type INTEGER or
sponse). DECIMAL.
● In the case of all other
data types, the mapped
attributes must be iden­
tical.
● Mapping is applied to
aggregation level and fil­
ters.

TARGET_MAP_ATTRIBUTEn The target attribute to which Required if attribute mapping ● The master data types
you want to copy data when is necessary of the attributes are not
copying data between two relevant.
planning areas. ● Mapping is applied to
aggregation level and fil­
ters.

Model Configuration Guide


Planning Operators PUBLIC 229
Parameter Explanation Mandatory/Optional Comment

TARGET_PERIODID or The technical ID or name of Required if different time pro­ ● If the time profile level of
TARGET_PERIODNAME the target time profile level files are used and target time the target planning area
when copying key figure data profile level cannot be de­ differs from that of the
between two planning areas. faulted via the period type. source planning area,
the DISAGG operator au­
tomatically derives the
target time profile level
based on the same pe­
riod type (for example,
Week).
● The time profile level of
the target planning area
can be explicitly speci­
fied via parameters
TARGET_PERIODID or
TARGET_PERIODNAME.

Attribute Mapping for Copying Key Figure Data Between Planning Areas
As seen in the table above, the parameters SOURCE_MAP_ATTRIBUTEn and TARGET_MAP_ATTRIBUTEn can be
used to map attributes between the source and target planning areas. You can map also attributes that are not
part of the planning level; attribute mapping is applied to the aggregation level and filters.

The DISAGG operator maps attributes as follows:

● If no attribute mapping is defined, the operator automatically searches for identical attributes in both
planning areas.
● If only some attributes are mapped, the operator tries to add missing attributes if they exist in both
planning areas.

You can also set up attribute mapping to let the operator know that an attribute exists only in one planning
area. This can be used, for example, to apply an attribute filter only to the source planning area. The following
example shows you how to do this:

SOURCE_MAP_ATTRIBUTEn TARGET_MAP_ATTRIBUTEn What does it mean?

PRDID MATID Normal attribute mapping

PRDGROUP PRDGROUP exists only in the source


planning area

Model Configuration Guide


230 PUBLIC Planning Operators
Handling Conversion-Relevant Key Figures

If either the source or the target key figure in the disaggregation process is relevant for conversion (for
example, currency or unit of measure conversion), you must specify a conversion-to attribute, for example
CURRENCYTO, or UOMTO, in one of the following ways:

● As a filter in the planning operator definition


● As a filter in the Run or Schedule dialog box in the SAP IBP, add-in for Microsoft Excel

Scheduling Jobs for the Operator

You can schedule jobs for the DISAGG operator in the following ways:

● In the Application Jobs app


● In the SAP IBP, add-in for Microsoft Excel

When you want to copy data from one planning area to another, the planning area you specify must be either
the source or the target planning area.

 Note

Time selection by dates is not supported if you want to use the DISAGG operator for copying key figure data
from one planning area to another.

Copying data between scenarios is not possible.

14.8.1 Packaged Processing of the DISAGG Operator

To optimize the consumption of system memory, and to reduce the risk of locking issues, the system splits the
processing of the DISAGG operator into smaller packages.

Depending on your configuration and system settings, for example, key figure configuration and the
aggregation level specified, running the disaggregation (DISAGG) operator can consume a lot of system
memory and may even result in out of memory situations.

To help you identify DISAGG operator runs in your system that might potentially consume a lot of system
memory, warnings to this effect are added to the operator log in the following cases:

● Data for more than one period is changed


● Disaggregation changes more than <n> records on base planning level

The value for the number of records <n> in the warning message comes from the
MIN_RECORDS_FOR_MEMORY_WARNING global configuration parameter which is available in the
DISAGGREGATION parameter group. You can change this threshold in the Global Configuration app.

Model Configuration Guide


Planning Operators PUBLIC 231
To prevent out of memory situations, and improve system performance, the processing of the DISAGG operator
is split into packages of 5 by default. You can change the number of packages the operator is split into in the
following ways:

How? What is the result?

Specify the number of packages you want the DISAGG oper­ The system splits the run of all of the DISAGG operators in
ator run to be split into by entering the value in the your system that are based on the DISAGG operator type
NUMBER_OF_PROCESSING_PACKAGES global configuration into the number of packages you specify.
parameter.

Specify the number of packages you want the DISAGG oper­ The system splits the run of the specific DISAGG operator for
ator run to be split into by entering the value in the which you specify the value into the number of packages you
NUMBER_OF_PROCESSING_PACKAGES parameter of a spe­ enter.
cific DISAGG operator.

Specify 1 to disable packaged processing by entering this The processing of the DISAGG operator is not split into pack­
number in the NUMBER_OF_PROCESSING_PACKAGES global ages.
configuration parameter or the
NUMBER_OF_PROCESSING_PACKAGES parameter of a spe­  Note
cific DISAGG operator. This setting may be used for operator runs that are exe­
cuted as part of an interactive planning process on a
small volume of data.

The system takes your entries into consideration in the following order:

1. It checks whether there is a value entered in the NUMBER_OF_PROCESSING_PACKAGES parameter of the


specific DISAGG operator.
2. If there is no value for the specific DISAGG operator, it checks whether there is a value entered in the
NUMBER_OF_PROCESSING_PACKAGES global configuration parameter.
3. If the default value of the global configuration parameter has not been changed, it takes the default value of
the global configuration parameter.

If a value is defined for parameter NUMBER_OF_PROCESSING_PACKAGES the system tries to split the
processing into smaller packages in the following way:

● The packages are created by periods. If the number of copied periods is less than the value of the
NUMBER_OF_PROCESSING_PACKAGES parameter, then one package is created per period.
● The packages are processed sequentially.
● Changed key figure values are stored per package. This means that if the process fails while processing a
certain package, the key figure values changed by previous packages are already stored.
● If the target key figure is enabled for change history, then the changes of every package get a unique
change history ID (with the same reason code and comment).

Related Information

Global Configuration Parameters [page 338]

Model Configuration Guide


232 PUBLIC Planning Operators
Disaggregation (DISAGG) Operator [page 221]

14.8.2 Example: Setting Up the Disaggregation Operator

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

The DISAGG planning operator type is delivered as part of the standard SAP content for planning operators. In
this example, a DISAGG_PROMO operator is created to read values of the PROMOUPLIFT key figure at product-
customer level, and to disaggregate the key figure values to the PROMOSPLITALL key figure at product-
location-customer level.

To set up the disaggregation operator, use the Planning Operators app.

 Note

To configure planning operators, the Planning Model business catalog must be assigned to a business role
assigned to your user.

The following example illustrates how to set up a disaggregation operator.

Steps

1. In the Planning Operators app, choose DISAGG from the list of planning operator types on the left side of
the screen.
2. To add a planning operator, select the + (Add Planning Operators) button.
Make the following entries:

Field Entry

Name DISAGG_PROMO

Description Disaggregation for Promotion

Interactive Mode No

Model Configuration Guide


Planning Operators PUBLIC 233
Field Entry

Batch Mode Yes

Filter Mode Select or deselect according to whether you want the user
to use filters when running or scheduling the operator in
the IBP add-in for Microsoft Excel.

3. Choose Define Parameters, and enter the following parameters:

Parameter Name Parameter Value

ATTRIBUTE1 PRDID

ATTRIBUTE2 CUSTID

ATTRIBUTE3 PROMOTIONID

ATTRIBUTE4 PROMOTIONSOURCE

DURATION 156

PERIODNAME Weekly

PERIOD_OFFSET -104

SOURCE_KFID1 PROMOUPLIFT

TARGET_KFID1 PROMOSPLITALL

4. Save your entries.


5. Assign the planning operator to the relevant planning area. For more information see Assigning a Planning
Operator to a Planning Area [page 194].

Example: Using the SEQUENTIAL Parameter

You can use the SEQUENTIAL parameter to control whether the system takes the result of one key figure copy
and disaggregation into consideration when performing the subsequent key figure copy and disaggregation.

Study this example about the use of the SEQUENTIAL parameter. To keep the example simple, all key figures
have the same base planning level.

Model Configuration Guide


234 PUBLIC Planning Operators
Parameter Initial Key Figure Value for a Key Figure Value After Key Figure Value After
Given Period DISAGG Run DISAGG Run

SEQUENTIAL Parameter not SEQUENTIAL Parameter


Set Value = X

SOURCE_KFID1 = 100 100 100


MARKETINGFCSTQTY

TARGET_KFID1 = 50 100 100


DEMANDPLANNINGQTY

SOURCE_KFID2 = 50 100 100


DEMANDPLANNINGQTY

TARGET_KFID2 = 50 100
CONSENSUSDEMANDPLAN

14.9 Inventory Optimization (IO) Operator

The Inventory Optimization (IO) planning operator allows you to run inventory optimization for a given supply
chain network.

 Caution

To run the inventory operators, specific technical IDs defined by SAP must be used for the relevant master
data types, attributes, and key figures. If these technical IDs are not used, the inventory operators will fail.
For more information, see http://help.sap.com/ibp. Choose Application Help for SAP Integrated Business
Planning Business Applications Inventory Optimization Sample Planning Area for Inventory
Optimization Master Data and Application Help for SAP Integrated Business Planning Business
Applications Inventory Optimization Sample Planning Area for Inventory Optimization Key Figures .

Operators

You can define the following inventory operators:

Model Configuration Guide


Planning Operators PUBLIC 235
Inventory Operator Algorithm Type Parameter Name in Excel Explanation
Add-In

Single-Stage Inventory Opt SINGLE STAGE IO Decomposed (single-stage) Optimizes recommended


inventory optimization safety stock locally for each
customer-facing product-lo­
cation combination in a de­
composed manner. Ideal for
running simulations where
you want to determine the
impact on recommended
safety stock of local changes
to the input key figures after
multistage inventory optimi­
zation has been run.

Multi-Stage Inventory Opt MULTI STAGE IO Global (multi-stage) inventory Optimizes recommended
optimization safety stock globally across
all products and locations of
the supply chain. Minimizes
total safety stock holding
cost while ensuring that all
customer service level tar­
gets are met.

Calculate Inventory IO_DETERMINISTIC Calculate Target Inventory Calculates Inventory compo­


Components Components nents, that is, the types of in­
ventory that comprise the to­
tal inventory for a given item.
By delineating what type of
inventory exists in the supply
chain, more granular inven­
tory optimization calcula­
tions can be made.

 Note

The Multi-Stage Inventory Opt operator, the Calculate Inventory Components, the Calculate DDMRP buffer
levels, and the Recommend Decoupling Points (Solve) operators calculate outputs for all demand streams,
and therefore do not take permission filter settings into consideration during calculations.

The operator Single-Stage Inventory Opt takes permission filtering into consideration when calculating
outputs.

Model Configuration Guide


236 PUBLIC Planning Operators
Planning Horizon Parameter

To use different planning horizons than the standard for a planning area, you can define the planning horizon
parameter for inventory optimization operators. The following operators support the planning horizon
parameter:

● Multi-Stage Inventory Opt


● Calculate Inventory Components

Parameter Description

PLANNING_HORIZON Positive integer value that represents calendar weeks.

Example: Create Multi-Stage Inventory Opt Operator With a Planing Horizon

The following example illustrates how to set up a Multi-Stage Inventory Opt operator with a planning horizon of
five calendar weeks:

Steps

1. Navigate to Planning Operators app.


2. Select the IO planning operator type and click the “+” button to add a planning operator.
Make the following entries:

Field Entry

Name Multi-Stage IO PH 5

Description Multi-Stage IO PH 5

Interactive Mode No

Batch Mode Yes

Filter Mode Yes

3. Choose Define parameters.


4. Enter the ALGORITHM_TYPE parameter with MULTI STAGE IO as the parameter value.
5. Enter the PLANNING_HORIZON parameter with 5 as the parameter value.
6. Assign the operator to the relevant planning area (see Assigning a Planning Operator to a Planning Area
[page 194]).

Result

You can run the planning operator in the SAP Integrated Business Planning add-in for Microsoft Excel in
simulation mode and batch mode.

Model Configuration Guide


Planning Operators PUBLIC 237
15 Configuring Original Snapshots

To enable users to take original snapshots of key figures and also retake original snapshots if there is incorrect
data that needs to be overwritten, you have to define the required snapshots.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You configure snapshots by creating a snapshot definition at planning area level. The system automatically
assigns snapshot definitions to the Snapshot operator and Redo Snapshot operator. The user can then take or
redo the snapshots by running the required operator from the SAP Integrated Business Planning, add-in for
Microsoft Excel or the Application Jobs app.

For more information about original snapshots, see Original Snapshots.

Steps

1. On the Snapshots tab of the Planning Areas app, choose New.


Make the settings explained in the following table:

Field Explanation Example Entry

Name Short descriptive name for the snap­ ABCSALESFORECASTSN


shot

Description Longer description of the snapshot Sales Forecast Snapshot

Input Key Figures Key figures to include in the snapshot FORECAST, HISTORY,
SALESFORECAST

Model Configuration Guide


238 PUBLIC Configuring Original Snapshots
Field Explanation Example Entry

Suffix Suffix that identifies the key figure as SN


a snapshot key figure. The name of
the snapshot key figure consists of
the input key figure name, the suffix,
and the snapshot number that is as­
signed automatically by the system:
<<key figure
name>>_<<suffix>>_<<snapshot
number>>. For example:
CONSENSUSDEMAND_SN_1.

You can’t create a snapshot definition


using a suffix that’s already used by
another snapshot definition in the
planning area.

From Period The first time period in your snapshot -6


time period range.

The period type is determined by the


storage time profile level of each input
key figure. In the case of input key fig­
ures with different storage time profile
levels within the same snapshot defi­
nition, the time period for which snap­
shots are taken is different for each
key figure.

Note that 0 is always the current pe­


riod. For example, if the storage time
profile level of a key figure is months,
and you want to take a snapshot of
the key figure for the coming 12
months, you enter 0 in the From
Period field and 11 in the To Period
field.

To Period The last time period in your snapshot 6


time period range.

Number of Snapshots The maximum number of snapshots 9


you can take of a key figure. When the
maximum number is reached, the old­
est snapshot is deleted to make room
for the new one. The maximum al­
lowed number of snapshots is 12.

Model Configuration Guide


Configuring Original Snapshots PUBLIC 239
Field Explanation Example Entry

Planning Operators You can make settings for the snap­ -


shot operator and redo snapshot op­
erator to be generated. You can set an
Interactive, Batch or Filter Mode for
each.

2. Save your entries.


3. Activate your planning area.

Results

The new snapshot key figures are added to the key figures for the planning area and can be seen on the Key
Figures tab of the Planning Areas app. They are indicated by the corresponding icon in the Type column. The
number of snapshot key figures created equals the number of snapshots defined in the snapshot definition.

The system automatically assigns the snapshot definition to the Snapshot operator and the Redo Snapshot
operator.

 Note

Please note the following:

● You can configure original snapshots for any time-dependent key figure (stored or calculated), except
for helper, technical, custom alert, conversion-relevant, external, or generated snapshot key figures
and key figures in pending deletion status.
● The calculation graph of the key figures for which you configure the snapshot definition may not
contain attribute transformations, helper key figures, technical key figures, generated snapshot key
figures, external key figures, or conversion-relevant key figures.
● There is no length restriction on the IDs of input key figures for snapshot definitions. In cases where the
the resulting snapshot key figure ID would be longer than 32 characters, the system automatically
truncates the ID when generating the ID of the snapshot key figure. The shortened ID is available (but
hidden by default) in the Input Key Figures table.
● When you create snapshot definitions, remember that the more snapshot definitions you create and
the more input key figures and snapshots you define per definition, the more stored snapshot key
figures are generated for the corresponding planning area. For example, if you create 5 snapshot
definitions, and in each of these definitions you include 5 input key figures and define 5 snapshots for
each, then 125 stored snapshot key figures are generated for the planning area in total. This can impact
system performance. We therefore recommend that you only create as many snapshot definitions as
you really need.
● You cannot change the following in a snapshot definition once the snapshot has been created and
saved in the Snapshots tile:
○ Key figures that are to be captured in the snapshot
○ Time range for the snapshot (for example, for the next 6 periods starting with the current period)
If you need different settings, create a new snapshot definition.
● You can change the value of the Number of Snapshots field; however, the change only takes effect with
respect to operator runs after the next planning area activation. If you set a greater value, new
snapshot key figures generated, which are initially inactive. They become active and are first

Model Configuration Guide


240 PUBLIC Configuring Original Snapshots
considered by operator runs when you have activated the planning area. If you set a smaller value, the
status of some snapshot key figures becomes "pending deletion" but the deletion is only completed
with the next planning area activation.
For snapshot definitions with a non-unique suffix, that is, definitions that share their suffix with another
snapshot definition within the same planning area, you can't change the value of the field.

Related Information

Types of Key Figures [page 96]

Model Configuration Guide


Configuring Original Snapshots PUBLIC 241
16 Activating Planning Models

Before you can use the data you have set up in the application, you have to activate your planning model. When
the model is activated, the infrastructure to store and access planning data is created based on the metadata
of the custom model you created.

 Recommendation

We recommend that before activation, you run the consistency checks on the model entities you want to
activate. If the check log contains errors, correct them before you activate the model entities.

You must activate your model entities in the following order:

1. Time profiles
2. Master data types
3. Planning areas

You can also activate a planning model in one step, by activating a planning area together with its related time
profile and related master data types.

 Note

Activating a planning area doesn't activate the data sharing plans. You have to activate data sharing plans,
if needed, in a separate step.

Activation runs as an application job. You can monitor the job status, display the job details, and cancel the job
in the Application Jobs app.

You can schedule the activation of time profiles, master data types, and planning areas using the predefined
Planning Model Activation template in the Aplication Jobs app.

 Recommendation

SAP recommends that you arrange a business downtime when you want to perform model activation.
Particularly, the following tasks, application jobs, and processes mustn't run when you activate a planning
area, otherwise the system may not be able to schedule the activation job, or activation may run
significantly longer, or it may fail:

● Data integration (using the Data Integration Jobs app, SAP Cloud Integration for data services, or SAP
HANA Smart Data Integration)
Data integration for time periods and master data types mustn't run while an activation is running.
Data integration for snapshots and key figure values mustn't run for the planning area you're going to
activate.
● Creation and change of planning views, editing data, and simulations in the IBP Excel add-in
No users should be logged on in the IBP Excel add-in while activation is running.
● Application jobs for planning operators
Make sure that no planning operators are running in the planning area you're going to activate.
● Application jobs for creating time periods for time profiles
Make sure that no time period creation jobs are running for the time profile you're going to activate
either directly, or together with a planning area.

Model Configuration Guide


242 PUBLIC Activating Planning Models
● Application jobs for data lifecycle management
Make sure that no data purging jobs are running that could conflict with the master data types or with
the key figures in the planning area you're going to activate.

 Note

You can activate a planning model and run the consistency checks for a different model in parallel, but you
can't activate two planning models or two sets of modeling entities at the same time.

Once you have activated your planning model, you can copy it, and, if needed, delete model entities by active
deletion.

16.1 Statuses of Model Entities

The background information provided in this chapter can help you better understand how modeling and
activation in SAP Integrated Business Planning works.

Model Entities and Their Activation

In SAP Integrated Business Planning, planning models are based on the following model entities:

● Attributes
● Master data types
● Time profiles
● Planning areas
● Planning levels
● Key figures
● Versions
● Miscellaneous additional entities: planning operators, global configuration parameters, and reason codes

Activating Model Entities


Out of these entities, you can perform activation for the following ones:

● Master data types


The activation of a master data type will activate all attributes assigned to the master data type as well.
● Time profiles
The activation of a time profile will activate all attributes assigned to the time profile as well.
● Planning area
The activation of a planning area will activate all attributes assigned to the planning area, the key figures,
planning levels and versions as well.
You can also include the master data types used in the planning area (and with them, the attributes they
include) in the activation.

Other entities can be activated only together with the higher-level entity that includes them.

Model Configuration Guide


Activating Planning Models PUBLIC 243
Statuses of a Model Entity

A time profile, a master data type, and a planning area can have the following statuses:

● Inactive
An entity has the inactive status either when it’s created and first saved, or when the active entity is
changed and saved.
● Active
An entity has the active status after it has been activated, either directly or indirectly (together with a
higher-level entity).
● Pending deletion
If an active entity is marked for deletion, it has the pending deletion status. Actual deletion takes place with
the next activation of the entity. Until then, you can revert the pending deletion status to active.

 Note

Planning levels, key figures, snapshot definitions, and versions can have the same three statuses. However,
you can't activate these model entities on their own, only via the planning area that includes them.

Attributes are a special case. An attribute has a status on its own, but you can activate it only as part of the
activation of a higher level entity (master data type, time profile, planning area). An attribute can have the
following statuses:

● Inactive
An attribute has the inactive status either when it’s created and first saved, or when the active attribute is
changed and saved.
● Active
An attribute has the active status after it has been activated (together with a master data type, a time
profile, or a planning area).

Instances of a Model Entity

Along with statuses, entity instances are also a key concept in model activation. An instance is a saved state of
a model entity, and it is classified by the status.

One or two instances – which have different statuses – of a model entity can exist at the same time:

● Inactive
The entity is created and first saved, but not activated yet.
● Active
The entity has been activated, and has not been changed since the last activation.
● Active and inactive
The entity has been activated (active instance), and changed since the last activation (inactive instance).
● Active and pending deletion
The entity has been activated (active instance), and marked for deletion since the last activation (pending
deletion instance).

In the planning area worklist of the Planning Areas app, you can choose to display the most recent instance of
the model entity (Show Latest), or the latest active instance (Show Active). You can only display the latest
active version of a model entity, you cannot edit it.

Model Configuration Guide


244 PUBLIC Activating Planning Models
 Note

The inactive instance of a higher-level entity refers to the latest instance of the dependent entity, be it active
or inactive.

For example, if both an attribute and a master data type that uses the attribute have inactive and active
instances, the active instance of the master data type uses the active instance of the attribute, while the
inactive instance of the master data type uses the inactive instance of the attribute.

Status Changes of a Model Entity

The life cycle of a model entity starts with the inactive status, after the entity has been created and saved. The
entity can get into the active status by activation.

Changing an Active Entity


When an active entity is changed, but not activated yet, the active instance of the entity stays unchanged, and
an inactive instance is created, which stores the changes.

The active instance is used throughout SAP Integrated Business Planning, for example, in the IBP Excel add-in,
in planning operators, and in data integration. Once the entity is activated again, the changes take effect, and
the inactive instance becomes the active (and, until the next changes, the only) instance of the entity.

 Note

If you have activated an entity, you cannot restore the previous active instance.

Deleting an Entity
You can use active deletion to delete active master data types, planning levels, key figures, snapshot
definitions, planning areas, and time profiles. For more information, see Deleting Active Objects (Active
Deletion) [page 266].

With active deletion, the inactive instance of the entity is immediately deleted. If there is an active instance of
the entity, the active instance remains unchanged, and a pending deletion instance is created. These two
instances exist in parallel until the next activation of the entity.

Until the next activation, the active instance of the entity is used throughout SAP Integrated Business Planning,
for example, in the IBP Excel add-in, in planning operators, and in data integration. The next activation will
delete the entity (both the active and the pending deletion instances), and the data that has been uploaded for
the given entity.

If the entity has only an inactive instance, it is immediately deleted if you choose Delete (active deletion is not
available in this case).

 Note

In the case of a planning area deletion, choosing Delete (or Delete with Dependencies) deletes the planning
area together with its dependent master data types and time profile.

If all objects (the planning area and its dependencies) are inactive, you can delete them in one step, while
active objects are first set to Pending Deletion and you need to activate them in the relevant app to

Model Configuration Guide


Activating Planning Models PUBLIC 245
complete the deletion. In the case of inactive objects with an active instance existing in the system, the
inactive instances are deleted and the active instances are set to Pending Deletion.

16.1.1 Example: Changing Model Entities That Are Dependent


on Each Other

In this example, we start with 3 attributes (A1, A2, and A3), which are used in a master data type (MDT1), which
is then used in a planning area (PA1).

We then create a new attribute, A4, add it to the MDT1 master data type, and activate the master data type.
After it, we assign the A4 attribute to the PA1 planning area, and activate the PA1 planning area.

The next step is creating a new attribute, A5, and adding it to the MDT1 master data type, without activating the
master data type.

As the last step, we change the period offset in the PA1 planning area (this change does not have any effect on
attributes or master data types).

Starting Point

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3

Planning area PA1 Uses A1, A2, A3, and MDT1 Active

Step 1: Creating the A4 Attribute, and Adding It to the MDT1 Master Data
Type

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Model Configuration Guide


246 PUBLIC Activating Planning Models
Entity Uses Instance Comment

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Attribute A4 Selected for use in MDT1 Inactive The A4 attribute is saved,


and included in the MDT1
master data type.

Until MDT1 is activated, only


the inactive instance of A4
exists.

Master data type MDT1 Used in PA1 Active Until MDT1 is activated again,
the active instance is un­
Uses A1, A2, A3
changed.

Used in PA1 Inactive The inactive instance of MDT1


is created to store the
Uses A1, A2, A3, A4
changes - in this case, the A4
attribute added to MDT1.

Planning area PA1 Uses A1, A2, A3, and MDT1 Active

The SAP Integrated Business Planning, add-in for Microsoft Excel (SAP IBP, add-in for Microsoft Excel), the
data integration, and other functions of SAP IBP continue using the active instance of the MDT1 master data
type.

Step 2: Activating the MDT1 Master Data Type

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Attribute A4 Used in MDT1 Active The A4 attribute becomes


active when the MDT1 master
data type is activated.

The inactive instance of A4


does not exist any longer.

Model Configuration Guide


Activating Planning Models PUBLIC 247
Entity Uses Instance Comment

Master data type MDT1 Used in PA1 Active The previously inactive in­
stance of MDT1 becomes the
Uses A1, A2, A3, A4
active - and only - instance of
MDT1.

There is no inactive instance


of MDT1.

Planning area PA1 Uses A1, A2, A3, and MDT1 Active Activating the MDT1 master
data type has no effect on
the PA1 planning area. It still
has one active version, which
is unchanged

Step 3: Transporting or Exporting and Importing the MDT1 Master Data Type

Step 4: Assigning the A4 Attribute in the PA1 Planning Area and Activating
the PA1 Planning Area

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Attribute A4 Used in MDT1 and in PA1 Active The A4 attribute is now used
in the PA1 planning area as
well.

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3, A4

Planning area PA1 Uses A1, A2, A3, A4, and Active The active instance of the
MDT1 PA1 planning area now also
includes the A4 attribute.

The new active instance of


PA1 overwrites the previous
active instance.

Model Configuration Guide


248 PUBLIC Activating Planning Models
Step 5: Transporting or Exporting and Importing the PA1 Planning Area

Step 6: Creating the A5 Attribute, and Adding It to the MDT1 Master Data
Type

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Attribute A4 Used in MDT1 and in PA1 Active

Attribute A5 Used in MDT1 Inactive The A5 attribute has been


saved, and included in the
MDT1 master data type. Until
MDT1 is activated, only the in­
active instance of A5 exists.

Master data type MDT1 Used in PA1 Active As no activation has hap­
pened, the active instance of
Uses A1, A2, A3, A4
MDT1 is unchanged.

Used in PA1 Inactive Adding A5 to MDT1 results in


an inactive instance of MDT1.
Uses A1, A2, A3, A4, A5

Planning area PA1 Uses A1, A2, A3, A4, and Active
MDT1

The SAP IBP, add-in for Microsoft Exce, the data integration, and other functions of SAP IBP continue using the
active instance of the MDT1 master data type.

Step 7: Changing the Period Offset of the PA1 Planning Area

Changing the period offset affects the planning area only, and not the master data types and attributes the
planning area uses.

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Model Configuration Guide


Activating Planning Models PUBLIC 249
Entity Uses Instance Comment

Attribute A3 Used in MDT1 and in PA1 Active

Attribute A4 Used in MDT1 and in PA1 Active

Attribute A5 Used in MDT1 Inactive

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3, A4

Used in PA1 Inactive

Uses A1, A2, A3, A4, A5

Planning area PA1 Uses A1, A2, A3, A4, and Active The active instance of PA1
MDT1 still refers to the active in­
stance of MDT1.

Uses A1, A2, A3, A4, A5, and Inactive The inactive instance of PA1
MDT1 still refers to the inactive in­
stance of MDT1.

 Note

In such cases, when an inactive instance of a planning area refers to an inactive instance of a master data
type, you should either activate the master data type before you activate the planning area, or activate the
planning area with the Include Related Time Profile and Master Data Types option selected.

Step 8: Activating the PA1 Planning Area

Step 9: Transporting or Exporting and Importing the PA1 Planning Area

16.1.2 Example: Deleting an Attribute from an Active Master


Data Type and Active Planning Area

In this example, we start with 3 attributes (A1, A2, and A3), which are used in a master data type (MDT1), which
is then used in a planning area (PA1). Our goal is to delete the A3 attribute.

To delete the A3 attribute, which is used in a master data type, which is then used in a planning area, you must
work top down. First, remove the attribute from the planning area, then from the master data type.

Model Configuration Guide


250 PUBLIC Activating Planning Models
Starting Point

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3

Planning area PA1 Uses A1, A2, A3, and MDT1 Active

 Note

Make sure that the A3 attribute is not used in any planning levels. You cannot delete an attribute if it is used
in higher-level entities.

Step 1: Marking the A3 Attribute for Deletion in the PA1 Planning Area

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 and in PA1 Active

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3

Planning area PA1 Uses A1, A2, A3, and MDT1 Active

Uses A1, A2, and MDT1 Inactive The inactive instance of the
PA1 planning area does not
include the A3 attribute.

Model Configuration Guide


Activating Planning Models PUBLIC 251
Step 2: Activating the PA1 Planning Area

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 Active The attribute is not used in


the PA1 planning area any­
more

Master data type MDT1 Used in PA1 Active

Uses A1, A2, A3

Planning area PA1 Uses A1, A2, and MDT1 Active The PA1 planning area has an
active instance only, which
does not include the A3 at­
tribute.

Step 3: Transporting or Exporting and Importing the PA1 Planning Area

Step 4: Marking the A3 Attribute Pending Deletion in the MDT1 Master Data
Type

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 Used in MDT1 Active

Master data type MDT1 Used in PA1 Active The active instance is un­
changed, it still includes the
Uses A1, A2, A3
A3 attribute.

Used in PA1 Inactive An inactive instance of the


MDT1 master data type has
Uses A1, A2
been created, which does not
include the A3 attribute.

Planning area PA1 Uses A1, A2, and MDT1 Active

Model Configuration Guide


252 PUBLIC Activating Planning Models
An attribute does not have a pending deletion status, so the active instance of the attribute is unchanged. The
A3 attribute is pending deletion in relation to the MDT1 master data type only. If, unlike this example, other
maser data types also use the A3 attribute, A3 is still available to them.

Step 5: Activating the MDT1 Master Data Type

Entity Uses Instance Comment

Attribute A1 Used in MDT1 and in PA1 Active

Attribute A2 Used in MDT1 and in PA1 Active

Attribute A3 No uses Active The A3 attribute is not used


in any higher-level entities.

The active instance of the at­


tribute is unchanged.

Master data type MDT1 Used in PA1 Active The active instance now does
not include the A3 attribute.
Uses A1, A2

Planning area PA1 Uses A1, A2, and MDT1 Active

Step 6: Transporting or Exporting and Importing the MDT1 Master Data Type

16.2 Activating Time Profiles

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You must activate the time profile to be able to create time periods for it, and to store and calculate time-
dependent planning data in a planning area that uses this time profile.

Model Configuration Guide


Activating Planning Models PUBLIC 253
 Note

Activate a time profile before you activate the planning areas that use the time profile.

Alternatively, when you activate a planning area, you can select to activate it together with the related time
profile and the related master data types in one activation run.

Procedure

1. In the Time Profiles app, select the time profile you want to activate.
You can select multiple time profiles.
2. (Optional) Choose Check.

The system executes three types of checks:


○ Validating the definition of the time profile
○ Validating the dependencies and connections of the time profile, for example, connections to planning
areas
○ Checking if the changed time profile is still consistent with the already existing time periods

A log with the check results is available. The link in the Last Action Status column takes you to the check
log in the Application Logs app.

 Note

There are checks that can be executed only during activation. Thus, activation of a time profile might
fail even if the previously executed checks were successful.

3. Select the time profile you want to activate, and choose Activate.
You can select multiple time profiles.

An application job is scheduled. If the job has finished, and activation was successful, the time profile is
active. To monitor the job and to check the job details, launch the Application Jobs app.

The activation log is available. The link in the Last Action Status column takes you to the activation log in
the Application Logs app.

Related Information

Time Profiles [page 270]

Model Configuration Guide


254 PUBLIC Activating Planning Models
16.3 Activating Master Data Types

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

If you want to activate a planning area, make sure that you activate the model entities in a specific order.
Activate the master data types only after you have activated the relevant time profiles, or activate them
together when you activate a planning area.

You can activate a master data type that is not assigned to a planning area independently of the time profile.

 Recommendation

The following tasks, application jobs and processes mustn't run while activation of one or more master data
types is running, otherwise activation may run significantly longer, or it may fail:

● Data integration (using the Data Integration Jobs app, SAP Cloud Integration for data services, or SAP
HANA Smart Data Integration)
Data integration for master data types and key figure values mustn't run while an activation is running.
● Creation and change of planning views, editing data, and simulations in the IBP Excel add-in
No users should be logged on in the IBP Excel add-in while activation is running.
● Application jobs for planning operators
Make sure that no planning operators are running in the planning area you're going to activate.
● Application jobs for data lifecycle management
Make sure that no data purging jobs are running that could conflict with the master data types you're
going to activate.

Context

You must activate a master data type to be able to create the master data records (through data integration).

Procedure

1. In the Master Data Types app, select one or more master data types you want to activate.
2. (Optional) Choose Check.

By default, the system checks the consistency of the master data types you selected together with their
dependent master data types. To check only the master data types you selected, choose Check Without
Dependencies.

The system performs the following three types of checks:

Model Configuration Guide


Activating Planning Models PUBLIC 255
○ Checking the definition of the master data type
○ Checking the dependencies and connections of the master data type, for example, connections to
other master data types, to planning areas, or the existence of attributes.
○ Checking if the changed master data type is still consistent with the already existing data.

A log with the check results is available. The link in the Last Action Status column takes you to the check
log in the Application Logs app.

If there are errors in the check log, correct them before you activate the master data types.

 Note

There are checks that run only during activation. Thus, activation of a master data type might fail even
if the previous checks were successful.

3. After a successful check, choose Activate.

By default, the system activates the master data types you selected together with their dependent master
data types. To activate only the master data types you selected, choose Activate Without Dependencies.

An application job is scheduled. If the job has finished, and activation was successful, the master data
types are active. To monitor the job and to check the job details, launch the Application Jobs app.

The activation log is available. The link in the Last Action Status column takes you to the activation log in
the Application Logs app.

 Note

When you activate a master data type, the attributes the master data type uses are activated as well.
You can't activate an attribute separately.

Next Steps

If you selected numerous master data types for activation, and activation takes longer, you don't have to wait
until activation is complete. You can leave the Master Data Types app. To check the activation status and steps,
go to the Application Logs app to display the activation log.

Related Information

Master Data Types [page 272]

Model Configuration Guide


256 PUBLIC Activating Planning Models
16.4 Activating Planning Areas

Activate your planning areas to be able to upload data into them, and to perform your planning tasks.

 Note

We recommend to activate your planning areas every 90 days or with every new release. This is needed to
enable further features and to improve performance. To find out when your planning areas were last
activated, go to the Planning Areas app, and search for the planning areas you are interested in. Highlighting
and icons warn you of planning areas that have not been activated in the past 90/180 days and you can find
the date of the last activation in the Activated On column.

You can activate your planning areas in the Planning Areas app only; the Configuration app is no longer
available.

When you activate your planning area, you can decide to activate full scope or limited scope (for certain
releases only); with dependencies and without dependencies, as described below.

Activate with Dependencies

Use this option if you want to activate your planning area with the dependent time profile and master data
types.

Activate without Dependencies

Use this option if you you have already activated the dependent time profile and master data types as well, so
you only have to activate your planning area.

Activate with Full Scope (Recommended)

Use this option if you want to run all the activation checks and do not want to suppress any errors when you
activate your planning areas.

To make sure that your planning area is complete and does not contain erroneous configuration, SAP
recommends that you activate your planning area with full scope.

Activate with Limited Scope

For certain releases, you have the possibility to suppress certain activation errors (suppressible errors) and
activate your planning area with limited scope.

Model Configuration Guide


Activating Planning Models PUBLIC 257
If you activate with limited scope, you can decide to skip certain error types for a given activation of a planning
area. By doing so, you can activate your planning area successfully, but it might result in erroneous
configuration and incomplete functionality. Please note that this is a temporary solution; you need to correct
your model configuration - as described in the long text of the error – as soon as possible. After the lifespan of
a suppressible error is over, the error cannot be suppressed anymore and the activation of the planning area
will fail.

You can find a complete list of error typess that you can suppress in Suppressible Errors [page 262].

How to Suppress Errors and Activate with Limited Scope


1. In the Planning Areas app, select the planning area you want to activate.
2. Expand the Activate button, and choose Limited Scope, with Dependencies or Limited Scope, No
Dependencies depending on your preferences.
3. In the Suppressible Errors dialog box, select the error categories you want to suppress.
Click on the error types you want to suppress to find additional information about how to correct the
incomplete or erroneous configuration. Make sure you fix the issue before the Correct Before Release date.
After that, you cannot suppress the error anymore, and the activation of the planning area will fail if the
cause of this error still persists.
4. Choose Activate with Limited Scope.

Suppressing an error is applied for the given activation only. If you don't correct the configuration, the next
activation will fail.

 Recommendation

SAP recommends that you arrange a business downtime when you want to perform model activation.
Particularly, the following tasks, application jobs and processes mustn't run while activation is running,
otherwise activation may run significantly longer, or it may fail:

● Data integration (using the Data Integration Jobs app, SAP Cloud Integration for data services, or SAP
HANA Smart Data Integration)
Data integration for time periods and master data types mustn't run while an activation is running.
Data integration for snapshots and key figure values mustn't run for the planning area you're going to
active.
● Creation and change of planning views, editing data, and simulations in the IBP Excel add-in
No users should be logged on in the IBP Excel add-in while activation is running.
● Application jobs for planning operators
Make sure that no planning operators are running in the planning area you're going to activate.
● Application jobs for creating time periods for time profiles
If you're going to active the planning area with its related time profile, make sure that no time period
creation jobs are running for that time profile.
● Application jobs for data lifecycle management
Make sure that no data purging jobs are running that could conflict with the master data types or with
the key figures in the planning area you're going to activate.

Model Configuration Guide


258 PUBLIC Activating Planning Models
16.4.1 Activating Planning Areas in the Planning Areas App

Activate your planning areas in the Planning Areas app.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

You have activated the time profile and the master data types that are assigned to the planning area, or you
activate the planning area together with its related time profile and related master data types.

Context

You must activate the planning area first to be able to upload data into it, and to perform planning tasks. If you
make any changes to your planning area after activation, activate it again to be able to work with the changed
palnning area.

Procedure

1. Select the planning area you want to activate.


2. (Optional) Click Check or choose Check with Dependencies from the dropdown.

The system validates the following:


○ The definition of the planning area, of the versions and planning levels of the planning area, and the
definitions and calculations of the key figures in the planning area.
○ The dependencies and connections of the planning area, for example, connection to a time profile, or
the existence of the assigned attributes

You can decide to check the planning area with or without dependencies. If you choose Check or Check
With Dependencies, connection to the latest inactive instance of the master data and time profiles are
checked, in addition to the planning area. If you choose Check Without Dependencies, connection to the
latest active instance of the master data and time profiles are checked, in addition to the planning area. We
recommend that you run the check and fix any errors before activating the planning area.

 Note

Check

If you choose Check Without Dependencies and the check detects a model entity that does not have an
active instance, it issues an error message, and stops performing the remaining checks for the given
model entity.

Model Configuration Guide


Activating Planning Models PUBLIC 259
You can view the detailed progress of your check by clicking the Last Action Status link.

Clicking the link opens a dialog, where your can view the details of the action and check its progress while it
is running. The status and progress of a running action is automatically updated in the dialog every 5
seconds, but you can also update it manually using the Refresh button, which becomes active 5 seconds
after each refresh.

From the dialog you can navigate to the Application Logs app and view all logs or display the log details for
the current item.

In the Application Logs app, for certain messages, which originate from complex situations, you'll find

additional information in the long text attached to the message, which you can call up by clicking the 
(Details View) icon in the Long Text column.

If there are errors in the check log, correct them before you activate the planning area.

 Note

There are checks that run only during activation. Thus, activation of a planning area might fail even if
the previous checks were successful.

3. After a successful check, choose Activate, and select the type of activation you want to run from the
dropdown list. You can choose from the following types of activation:
○ Full Scope, with Dependencies
○ Full Scope, No Dependencies
○ Limted Scope, with Dependencies
○ Limited Scope, No Dependencies

An application job is scheduled. If the job has finished, and activation was successful, the planning area is
active. To monitor the job and to check the job details, launch the Application Jobs app.

You can view the detailed progress of your activation by clicking the Last Action Status link.

Clicking the link opens a dialog, where your can view the details of the action and check its progress while it
is running. The status and progress of a running action is automatically updated in the dialog every 5
seconds, but you can also update it manually using the Refresh button, which becomes active 5 seconds
after each refresh.

From the dialog you can navigate to the Application Logs app and view all logs or display the log details for
the current item.

In the Application Logs app, for certain messages, which originate from complex situations, you'll find

additional information in the long text attached to the message, which you can call up by clicking the 
(Details View) icon in the Long Text column.

Results

If you activate a planning area, all attributes assigned to the planning area, the key figures, planning levels and
versions will be activated, as well as the time profile that is assigned to the planning area, and the master data
types used in the planning area (and with them, the attributes they include).

Model Configuration Guide


260 PUBLIC Activating Planning Models
If you have selected the Activate Without Dependencies option, only the attributes assigned to the planning
area, the key figures, planning levels and versions will be activated.

Next Steps

Activating a planning area doesn't activate the data sharing plans. Activate data sharing plans, if needed, in the
Manage Data Sharing Plans app.

Related Information

Planning Areas [page 274]


Time Profiles [page 270]
Master Data Types [page 272]

16.4.2 Enhanced Version of Planning Area Activation

An enhanced version of the planning area activation has been enabled for all customers as of 1911.

The enhanced activation not only provides a faster, more stable and robust activation of the planning area, but
forms the basis of certain new features, such as simplified key figure calculations, as well.

This change is also depicted in the activation log. Open the log of an activation that took place after the
upgrade to IBP 1911. Message Activation of &1 selected objects started (enhanced activation). (&1 stands for the
number of objects) indicates that the system uses the enhanced version of planning area activation.

Pay attention to the specific modeling cases described below.

Aggregation of a Key Figure Other Than the Output Key Figure

 Example

KF1@REQUEST = SUM(KF111@PERS1), and KF111 is specified as the input key figure.

This case is relevant only in planning areas that were created earlier than IBP 1705.

To identify the affected calculation definitions, in the activation log, or in the log of the consistency check of the
planning area, look for messages of this type: Calculation &1@&2 must not contain aggregation of a different key
figure., where &1 stands for the ID of the key figure, and &2 stands for the ID of the calculation definitions listed
in the log.

Model Configuration Guide


Activating Planning Models PUBLIC 261
To have the same values for the affected key figures as before, modify the calculation definition so that the key
figure in the calculation expression is identical with the key figure marked as input, and with the output key
figure.

Using Calculated Key Figure Value Even If Stored Value Exists

 Example

Let's take the SKF@BASEPLLEVEL stored key figure, and the CKF@PL1 calculated key figure.

Calculation 1 is a defaulting: SKF@BASEPLLEVEL=IF(ISNULL(SKF),1,0), where SKF is specified as a


stored input.

Calculation 2: CKF@PL1 = KF1@BASEPLLEVEL * SKF@BASEPLLEVEL, where both KF1@BASEPLLEVEL


and SKF@BASEPLLEVEL are specified as stored inputs, even though a calculation for SKF@BASEPLLEVEL
exists.

To identify the affected calculation definitions, in the activation log, or in the log of the consistency check of the
planning area, look for warning messages of this type: Calculation &1@&2: Calculation for KF &3 exists, but
stored value is used., where &1 stands for the ID of the key figure, &2 stands for the ID of the planning level, and
&3 stands for the ID of the input key figure.

Case by case, review the listed calculation definitions, and make corrections if needed.

In the previous version of activation, sometimes (typically in calculations at base planning level) the calculated
value of the input key figure was used, even if a stored value existed, and was specified as input for the
calculation. With the enhanced version of activation, the system consistently uses the stored value if that was
specified as input for the calculation. From the different behaviors of the activation versions, differences may
occur in the output key figure values of the affected calculations.

If there is a difference, and you want to go on with the values that were calculated previously using the
calculated value of the input key figure, change the inputs of the calculation by not selecting the input as
stored.

16.4.3 Suppressible Errors

For certain releases, you have the possibility to suppress the activation errors below and activate your planning
area with limited scope. After this grace period is over, and the suppressible errors have turned into errors, you
can no longer activate your planning areas if these errors occur. Correct the invalid configurations as soon as
possible to be able to activate your planning areas.

For more information about how to suppress these errors and activate with limited scope, see Activating
Planning Areas [page 257].

Model Configuration Guide


262 PUBLIC Activating Planning Models
*S* Calculation &1@&2: Expression doesn't start with aggregation function

In the calculation for the key figure at the planning level, the input planning level contains one or more root
attributes that aren't root attributes of the output planning level, or the output planning level doesn't contain
these attributes at all. Such a calculation is an aggregation, and its calculation expression must start with one
of the aggregation functions: SUM, MIN, MAX, AVG, or COUNT.

To correct the configuration and activate with full scope, make one of the following changes:

● Split up the calculation into two calculations: an aggregation and a defaulting, for example. Pay attention to
the sequence of these calculations.
● In case you assign a value to a key figure, and the output planning level doesn't contain all root attributes of
the input planning level. Specify the aggregation function (SUM, MIN, MAX, or AVG).
● Choose a different input planning level that has the same set of root attributes as the output planning level.

*S* PL &1 and PL &2: Both cannot be used as base PL of stored key figures

There are planning levels that share the same set of root attributes (not considering the time attribute), but
they have different sets of non-root attributes (not considering the time attribute). Both planning levels are
used as the base planning level of one or more stored key figures.

To correct the configuration and activate with full scope, make one of the following changes:

● Change one of the planning levels, so that they have the same set of root attributes and the same set of
non-root attributes. Only attributes from master data types are taken into consideration, the time
attributes don't need to match.
● Decide which of the planning levels you want to use as the base planning level of stored key figures. Choose
a different base planning level for each stored key figure whose base planning level is the other planning
level. Each planning level that is used as the base planning level of stored key figures must have a different
set of root attributes.

For more information see, SAP Knowledge Base Article 2875816 .

*S* Stored values of KFs, with different base PLs, are read from PL &1

In multiple key figure calculations, where the stored values of key figures are used at the same input planning
level, the key figures cannot have different base planning levels.

All key figures that are used as stored inputs at the same planning level must have the same base planning
level.

To correct the configuration and activate with full scope, make one of the following changes:

Before making any corrections, check your activation log and look for the error message Stored key figure read
from an incompatible planning level. If you have run into this error during activation as well, fix it first as it might
solve the problem of stored key figures with different base planning levels.

Model Configuration Guide


Activating Planning Models PUBLIC 263
If the problem still persists, proceed as follows:

The attachment of the messages in the activation log contains a list of calculations divided into the sections
below:

● Calculations where the input planning level of stored key figures is their base planning level.
● Calculations where the input planning level of stored key figures does not match their base planning levels.

Depending on your business requirements, make one of the following changes:

● Use the base planning level of the key figures as the input planning level in the calculation definitions.
Change only the calculations where the input planning level (where the stored value of a key figure is used)
is not the base planning level of the key figure. As result, all stored key figures will be sourced from their
base planning levels, which are the recommended approach.
● If your business requirements justify that you use the stored values of key figures at a planning level other
than their base planning levels, create a copy of each base planning level (with the same set of root and
non-root attributes), and use the stored value of the key figure at this compatible planning level.
As a result, all stored key figures will be sourced from a planning level that is compatible with their base
planning level, that is, they share the same root and non-root attributes.
● Select one of the base planning levels listed in the attachment, and for each key figure use it as its base
planning level.
As a result, all stored key figures sourced from the same input planning level, will have the same base
planning level.

*S* Calc. &1@&2: PL of input KF &3 has more attr. than base PL &4

In calculation definitions, an input planning level where the stored value of a key figure is used cannot have
more attributes than the base planning level of the given key figure. That is, the input planning level of a
calculation cannot contain attributes that cannot be sourced from the base planning level.

To correct the configuration and activate with full scope, make one of the following changes:

● Use the base planning level of the key figure as the input planning level.
● If you want to use the extra attributes that are not available from the base planning level, create a
calculation (if not yet available) and use the calculated value of the key figure instead of the stored value.
● Remove these extra attributes from the planning level where the stored value of a key figure is used.
● Use a planning level that has the same attributes as the base planning level.

*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation does not exist.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

To correct the configuration and activate with full scope, make one of the following changes:

● Use the base planning level of the key figure as the input planning level.

Model Configuration Guide


264 PUBLIC Activating Planning Models
● Create a calculation on the input planning level and use the calculated value of the key figure instead of the
stored value. If the aggregation level of the input key figure is lower, use Split Factor Calculation [page 392];
if it is higher, use an aggregation.
● Use a planning level that has the same attributes as the base planning level.

*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation exists.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

To correct the configuration and activate with full scope, make one of the following changes:

● Since there is a calculation already defined on the input planning level, use the calculated value of the key
figure instead of the stored value.
● Use the base planning level of the key figure as the input planning level.
● Use a planning level that has the same attributes as the base planning level.

*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation is not used.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

Furthermore, the calculation is not used in any REQUEST level calculation in the calculation graph.

To correct the configuration and activate with full scope, make one of the following changes:

1. If you do not want to create a REQUEST level calculation in the calculation graph that is based on this
calculation, delete this calculation and all other calculations that are built on it.
If you want to use the calculation, make one of the following changes depending on your business
requirements:
○ Use the base planning level of the key figure as the input planning level.
○ Create a calculation (for example, an aggregation) on the input planning level and use the calculated
value of the key figure instead of the stored value.
○ Use a planning level that has the same attributes as the base planning level.

*S* Key Figure &1 has generated key figure assignment problem

The fixing­enabled key figure is inconsistent for either of the following reasons:

● There is a missing or inconsistent database entry for the mapping between the fixing­enabled key figure
and its generated key figures.
● The fixing­enabled key figure has one or two generated key figures missing.

Model Configuration Guide


Activating Planning Models PUBLIC 265
If a key figure is enabled for fixing, it needs to have two generated key figures with an active or inactive (but not
pending deletion) mapping between the fixing­enabled key figure and the generated key figures.

To resolve the inconsistency, perform the following steps:

1. Activate the planning area (choose Limited Scope, with Dependencies or Limited Scope, No Dependencies).
There will be cases when your activation fails. Go on to step 2 nevertheless.
2. Select the Enable Fixing checkbox and save the key figure.
3. Deselect the Enable Fixing checkbox and save the key figure.
4. Again: deselect the Enable Fixing checkbox and save the key figure.
5. Again: select the Enable Fixing checkbox and save the key figure.

 Note

These two steps might seem redundant but they are needed to resolve some special cases of the
problem, therefore should not be skipped.

6. Perform a check on the planning area, and - provided it doesn't contain any errors - perform a full-scope
activation. If the planning area does contain errors, choose Limited Scope for your activation.

*S* Key Figure &1 has version assignment problem in Version &2

The fixing­enabled key figure is inconsistent for either of the following reasons:

● There is a version that the fixing­enabled key figure itself is not assigned to but its generated key figure is.
● There is a version that the fixing­enabled key figure is assigned to but its generated key figure is not.

If a key figure is enabled for fixing, its generated key figures need to be assigned to the same versions that the
key figure itself is assigned to.

To resolve the inconsistency, perform the following steps:

1. Deselect the Enable Fixing checkbox for the key figure.


2. If the key figure isn't assigned to the version, assign it and save it.
3. Select the Enable Fixing checkbox and save the key figure again.
4. Perform a check on the planning area, and - provided it doesn't contain any errors - perform a full-scope
activation. If the planning area does contain errors, choose Limited Scope for your activation.

16.5 Deleting Active Objects (Active Deletion)

SAP Integrated Business Planning allows you to delete active time profiles, master data types, planning levels,
key figures, snapshot definitions, and planning areas. You can also delete active time profiles, provided the time
profile is not associated with any planning areas.

With active deletion, you change the status of objects to Pending Deletion. The objects are then deleted the
next time they are activated.

Model Configuration Guide


266 PUBLIC Activating Planning Models
When performing active deletion, observe the following sequence:

1. Delete key figures from the version, and activate the planning area.
2. Delete all key figures from any and all calculations, and delete all key figures that are assigned to any
planning levels containing the attributes you want to delete. Activate the planning area.
3. Delete all planning levels that contain the attributes that you want to delete, and activate the planning area.
4. Delete all attributes of the master data type from the planning area, and activate the planning area.
5. Delete the master data type, and then activate the master data type.
6. Delete the relevant time profiles, and then activate the time profiles.

 Note

Virtual and compound master data types: If you select the component or referenced master data types for
deletion, the join conditions and all the attributes associated with those master data types are also marked
Pending Deletion. You can independently mark for deletion the assigned attributes and join conditions
associated with the master data types.

Steps for Planning Levels, Key Figures, Snapshot Definitions, and Planning
Areas

1. In the Planning Areas app, select the specific object that you want to delete.
2. Click the Delete button.
The Delete dialog appears.

 Note

In the case of a planning area deletion, clicking Delete or choosing Delete with Dependencies in the
dropdown deletes the planning area together with its time profile and dependent master data types. To
delete the planning area only, choose Delete Without Dependencies.

3. Confirm that you want to delete the object.


The status of the object changes to Pending Deletion.
If you want to revoke deletion, choose Restore Active Instance.
4. Activate the planning area.

Result
Once activation is complete, the object you deleted no longer appears in the list of objects.

Steps for Time Profiles and Master Data Types

1. In the Time Profiles or in the Master Data Types app, select the specific object that you want to delete.
2. Choose Delete.
The Delete dialog appears.
3. Confirm that you want to delete the object.
The status of the object changes to Pending Deletion.

Model Configuration Guide


Activating Planning Models PUBLIC 267
If you want to revoke deletion, choose Restore Active Instance.
4. Choose Activate.

Result

Once activation is complete, the object you deleted no longer appears in the list of objects.

16.5.1 Troubleshooting for Active Deletion

If you receive any of the error messages listed below during active deletion of objects, refer to the Solution
column for information about how to proceed.

Deleting Active Master Data Types

Error Message Solution

The selected items are still assigned to one or more planning Before deleting the active master data types, delete them
areas. Unassign the items first and then delete them. from the planning areas with Active Deletion.

Deleting Master Data Types (and Attributes) from an Active Planning Area

Error Message Solution

The planning area attribute is used in the configuration of Before removing the master data types (and associated at­
planning levels. The deletion may affect calculations. Do you tributes) from the planning area, remove the attributes from
want to continue? each active planning level to which they are assigned.

Deleting Attributes from an Active Planning Level

Error Message Solution

This planning level attribute is used in the configuration of key Before deleting the attribute (or planning level), remove all
figures or attribute transformation. The deletion may affect key figures from the planning level.
calculations. Do you want to continue?

Model Configuration Guide


268 PUBLIC Activating Planning Models
Error Message Solution

This planning level attribute is used in the configuration of key Check whether this action makes sense.
figures or attribute transformation. The deletion may affect
calculations. You need to re-import the data for the affected
key figures. Do you want to continue?

Deleting an Active Key Figure

Error Message Solution

Key Figure is being used in (key figure) (version) and cannot The key figure you are trying to delete is being used in an ac­
be deleted. tive version. Before you can delete the key figure, remove it
from the version with Active Deletion.

Key Figure is being used in (key figure) and cannot be deleted. The key figure you are trying to delete is being used in the
calculation of other key figures (as indicated in the Used in
Key Figures field). Before you can delete the key figure, you
must delete it from all the calculations it is being used in.

Active Deletion Sequence Error

Error Message Solution

I: Activation Running You have activated objects in the incorrect sequence. Pro­
ceed as follows (in the sequence given):

● Delete key figures from the version and activate the


planning area.
● Delete all key figures from any and all calculations, and
delete all key figures that are assigned to any planning
level containing the attributes you want to delete.
● Activate the planning area.
● Delete all planning levels that contain the attributes you
want to delete, and activate the planning area.
● Delete all attributes of the master data type from the
planning area, and activate the planning area.
● Delete the master data type and then activate the mas­
ter data type.

Model Configuration Guide


Activating Planning Models PUBLIC 269
17 Modeling Requirements (Checks and
Errors)

There are several modeling rules and requirements your planning objects have to fulfill. They ensure that your
planning model is complete and does not contain erroneous configuration.

These requirements are supported by validation and activation checks, listed in the sections below. We
recommend that before activation you run the checks on the model entities you want to activate. If the check
log contains errors, correct them before you activate the model entities.

17.1 Time Profiles

This section lists the most common checks and errors related to time profiles.

Consistency Checks for Time Profiles

When you start the consistency check or the activation of a time profile, the system performs the following
checks:

● Checking the definition of the time profile


○ A description must exist for the time profile.
○ A start date and an end date must be specified.
○ The end date must be later than the start date.
○ At least one time profile level must exist.
○ All time profile levels must have a description.
○ Time profile levels must form a sequence based on the period type. That is, a lower time profile level
must have lower granularity than the higher ones.
For example, a time profile level with the period type “Day” must come before the one that has
“Month” for period type.
○ The base level of a time profile level must be a time profile level that has lower granularity.
○ If attributes are assigned to a time profile level, they must not be of the DECIMAL data type.
○ If an attribute of NVARCHAR data type is assigned to a time profile level, the length of the attribute must
be between 1 and 5000.
● Checking the dependencies and connections of the time profile
○ It is not allowed to add or delete a time profile level if the time profile is assigned to any planning areas.
○ It is not allowed to remove an attribute assigned to a time profile level if the attribute is used in a
planning level of an active planning area that uses the time profile.
○ It is not allowed to use active deletion on a time profile that is assigned to any planning areas.
● Checking the time profile against the already existing time periods

Model Configuration Guide


270 PUBLIC Modeling Requirements (Checks and Errors)
○ If time periods already exist for the time profile, you cannot add an additional required attribute.
● Checking the attribute IDs assigned to the time profile levels
○ The following list of attribute IDs are reserved; thus, they cannot be assigned to time profile levels:
TPID, DESCR, PERIODID, TSTFR, TSTTO, CREATEDBY, CREATEDDATE, LASTMODIFIEDBY,
LASTMODIFIEDDATE and PERIODID*, where * stands for a numeral.

Help for Error Analysis

Study the check log and the activation log in the Application Logs app to learn what made the check or the
activation fail.

The logs related to activation and to consistency checks belong to the IBP Foundation area, to the Activation
and to the Check subareas.

The messages you find in the log provide you with information about the errors.

For certain messages, which originate from complex situations, you'll find additional information in the long
text of the message and in the table below.

“&1” and “&2” stand for variables.

Message Text Reason and What to Do

Cannot lock time profile &1. Another activation may be running.

Try activating the time profile later.

Cannot add &1 as required attribute to a not empty table You assigned a new required attribute to a time profile level,
(&2). while time periods already exist for the time profile.

Assign the attribute as optional attribute. Upload the time


periods again. Each time period must have a value for this at­
tribute. As a last step, select the required checkbox for the
attribute. For more information, see Change and Deletion of
Time Profiles [page 45].

Inconsistent period types (TP level &1 must not be before In the definition of the time profile, a time profile level with a
level &2) period type of a lower granularity must come before a time
profile level that has a higher-level period type. For example,
the time profile level for months must come before the one
for quarters.

Attribute &1 is already used in PA &2. It cannot be removed The attribute you wanted to remove from the time profile is
from TP. in use in a planning area. Remove the attribute from the all
planning levels that use it, then you can remove it from the
time profile.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 271
Message Text Reason and What to Do

Attribute &1 is already used in PA &2. It cannot be added to The attribute you wanted to assign to a time profile level is in
TP. use in a planning area, via the assignment to a master data
type.

Based on your modeling decision, remove the attribute from


the planning area first, then you can assign it to the time pro­
file level. Or, you can create a new attribute, and assign this
attribute to the time profile level.

Uploading time periods needed as number of TP levels in TP This is an information message. You get this message if you
&1 changed. change the time profile for which you have already created
the time periods.

You must upload the time periods again.

17.2 Master Data Types

This section lists the most common checks and errors related to master data types.

Consistency Checks for Master Data Types

When you start the activation of a master data type, the system performs the following checks:

● Checking the definition of the master data type


○ A name must exist for the master data type.
○ The master data type must have at least one attribute.
○ Except for a virtual master data type, the master data type must have at least one key attribute.
○ If a description attribute is assigned to an attribute of the master data type, the description attribute
must exist.
○ For compound master data types
○ A compound master data type must have at least two components, and all components must be
active.
○ Virtual master data types cannot be used as a component of a compound master data type.
○ A compound master data type must have all the key attributes of the component master data
types must be set to key, and it mustn't have any additional key attributes.
○ For reference master data types
○ A reference master data type must refer to an active master data type.
○ Virtual master data types and reference master data types are not allowed to be used in a
reference master data type.
○ A referenced attribute must be set for each attribute of the reference master data type.
○ An attribute of a reference master data type must have the same data type as its referenced
attribute.

Model Configuration Guide


272 PUBLIC Modeling Requirements (Checks and Errors)
○ A reference master data type must have exactly the same keys as the master data type it refers to.
○ The length of an attribute of the reference master data type must be equal to or longer than its
reference master data type.
○ For virtual master data types
○ A virtual master data type must have at least two referenced master data types, and all of them
must be active.
○ Virtual master data types are not allowed to be used as a referenced master data type of a virtual
master data type.
○ An attribute of a virtual master data type must have the same data type as its reference attribute.
○ A virtual master data type must contain all attributes of the component master data types, and it
cannot contain any more attributes.
○ The length of an attribute of the virtual master data type must be equal to or longer than its
reference master data type.
○ In the join conditions, the data types of the attributes must match.
○ The join conditions must form a chain.
○ For external master data types
○ The external data source must exist.
○ For each attribute of the external master data type, the referenced column of the external data
source must be set.
○ The external master data type must have exactly the same keys as the external data source.
○ The length of an attribute of the reference master data type must be equal to or longer than its
referenced column.
● Checking the dependencies and connections of the master data type
○ It is not allowed to delete a master data type if it is used in a different master data type or in a planning
area.
○ The key attributes of a compound master data type must not be selected for any planning area.
● Checking the master data type against the already existing master data records
○ It is not allowed to add or remove components to a compound master data type if data already exists
for the master data type.
○ If an additional attribute is set to key, the attribute cannot be empty in any of the master data records.
○ If a key attribute is changed to a non-key attribute, the remaining key combination must have unique
values for all existing master data records.

Help for Error Analysis

Study the check log and the activation log in the Application Logs app to learn what made the check or the
activation fail.

The logs related to activation and to consistency checks belong to the IBP Foundation area, to the Activation
and to the Check subareas.

The messages you find in the log provide you with information about the errors.

For certain messages, which originate from complex situations, you'll find additional information in the long
text of the message and in the table below.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 273
Message Text Reason and What to Do

Cannot lock attribute &1. Another activation may be running.

Try activating the master data type later.

Cannot lock master data type &1. Another activation may be running.

Try activating the master data type later.

Cannot add attribute &1 as key attribute. Data already exists for the master data type. The attribute
contains empty values, so it cannot be a key attribute.

Attribute set &1 cannot be the key for master data type &2. Data already exists for the master data type. The attribute
set you selected as the key contains not only unique values.

Cannot add attribute &1 and set it to required in one step. Add the attribute to the master data type as an optional at­
tribute, and activate the master data type. In the next step,
change the master data type by setting the attribute to re­
quired. Activate the master data type again.

Cannot set attribute &1 to required. Empty value exists for Data already exists for the master data type. The attribute
the attribute contains empty values, so it cannot be set to required.

17.3 Planning Areas

This section lists the most common checks and errors related to planning areas.

When you start the consistency check or the activation of a planning area, the system performs the following
checks on the planning area and on the model entities that are activated together with a planning area
(planning levels, key figures, and versions):

Checks for the Definition and Relationships of a Planning Area

● The planning area ID must be all uppercase.


● A time profile must be assigned to the planning area.
● The lowest time profile level must be used as storage time profile level.
● Time horizons must be specified for each time profile level of the assigned time profile.
● A planning area cannot have inactive master data types and attributes.
You must either activate the master data types and attributes used in the planning area before you activate
the planning area, or include them in the activation of the planning area.
● The planning area must have at least one stored key figure.
● If a compound master data is assigned type to a planning area, its component master data types must be
assigned to the planning area as well. The attributes that are assigned to the planning area must be
selected from the component master data types.

Model Configuration Guide


274 PUBLIC Modeling Requirements (Checks and Errors)
● If a reference master data type or a virtual master data type is assigned to a planning area, their referenced
master data types must be assigned to the planning area as well.

Checks for the Definition of Versions

● The version ID must be all uppercase.


● The version ID must not be BASELINE or __BASELINE.
● A version must have at least one stored key figure specified as version­specific key figure.

Additional Checks for a Planning Area Enabled for Time-Series-Based Supply


Planning

 Note

A planning area is enabled for time-series-based supply planning if in the Planning Areas app the Enable
Supply Planning option is switched on.

The master data types in your planning area may have a two-letter or three-letter prefix for the IDs (this is
the SAP recommendation). In this section, the master data types are mentioned by their IDs without prefix.
The same requirements apply to the corresponding master data types that have a prefix.

● At least one key figure must be specified as input or output for supply planning.
● All output key figures and input/output key figures of supply planning must be stored key figures.
● A key figure cannot be specified as input or output for supply planning, and as aggregated constraint at the
same time.
● The calculation of a key figure that is specified as an input or output for supply planning must end in a
stored key figure at the same planning level.
● All key figures that are included in the calculation of a key figure that is relevant for supply planning (the
Input/Output for Supply Planning field is not empty) are specified as input for supply planning.
● If versions exist, all output key figures and input/output key figures of supply planning must exist as
version­specific key figures.
● The COMPONENT, PRODUCTTO, SPRODUCT, LOCATIONFR, LOCATIONTO master data types must be
reference master data types.
● Checks for aggregated constraint key figures:
○ The base planning level of an aggregated constraint key figure must contain attributes of type
NVARCHAR only.
○ The base planning level of an aggregated constraint key figure can include attributes only from the
base planning level of the key figure to which the aggregated constraint key figure corresponds.
However, at least one of the root attributes from the corresponding key figure must be excluded. For
example, if the corresponding key figure has three root attributes, you can include two of them and set
them as root attributes in the base planning level of the aggregated constraint key figure.
○ The time root of aggregated constraint key figures must match the time granularity at which the time-
series-based supply planning optimizer is run.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 275
For example, if all supply-relevant key figures are stored at the level of technical weeks, but supply
planning is run for calendar weeks, then the aggregated constraint key figures must have calendar
week as their time root. All other time attributes at a higher level of time granularity (for example,
month, quarter, and year) can be assigned, but not as root attributes.
○ Except for the higher-level time attributes, all other master data attributes must be marked as root
attributes.
○ All attributes except the time attribute must have the data type NVARCHAR.
○ The base planning level of the aggregated constraint key figure must contain one more root attribute
that is a non-root attribute in the base planning level of the corresponding key figure.
For more information about aggregated constraint key figures and their corresponding key figures, see
Configuring Planning Levels for Aggregated Constraint Key Figures.
● To ensure the consistency of master data relevant for time-series-based supply planning, the following
attribute checks must be set up:

Master Data Type Assigned Attribute Check Master Data Type Check Attribute

SOURCEPRODUCTION LOCID LOCATION LOCID

PRDID PRODUCT PRDID

PRODUCTIONSOURCEITM SOURCEID SOURCEPRODUCTION SOURCEID

PRDID PRODUCT PRDID

PRODUCTIONRESOURCE RESID RESOURCE RESID

SOURCEID SOURCEPRODUCTION SOURCEID

LOCATIONPRODUCT PLUNITID PLANNINGUNIT PLUNITID

SOURCECUSTOMERVALIDIT LOCID SOURCECUSTOMER LOCID


Y
PRDID PRDID

CUSTID CUSTID

SOURCELOCATIONVALIDIT LOCID SOURCELOCATION LOCID


Y
PRDID PRDID

LOCFR LOCFR

SOURCEPRODUCTIONVALID SOURCEID SOURCEPRODUCTION SOURCEID


ITY
PRDID PRDID

LOCID LOCID

● If you assign the MOTID attribute to the planning area, it must be selected from the MODEOFTRANSPORT
master data type, where it must be a key attribute.

Model Configuration Guide


276 PUBLIC Modeling Requirements (Checks and Errors)
● The SOURCELOCATION and SOURCECUSTOMER master data types can include the MOTID attribute only if
they are compound master data types, and one of their components is the MODEOFTRANSPORT simple
master data type.
● A planning area that is not enabled for external time series cannot use version­specific external master
data types.

Additional Checks for a Planning Area Enabled for External Time Series

 Note

A planning area is enabled for external time series if in the Planning Areas app the Enable External Time
Series option is switched on.

● Checks for the assignment of integration profiles


○ An integration profile must be assigned to the planning area.
○ The same integration profile must be assigned to the planning area and to each external master data
type assigned to this planning area.
● Checks for the data sources of master data and time series data
○ The external data sources of the root attributes of a planning level must be identical with the external
data sources of the respective assigned attributes of the planning area.

Additional Checks for a Planning Area Enabled for Change-History-Based


Calculations

 Note

A planning area is enabled for change-history-based calculations if in the Planning Areas app the Enable
Change-History-Based Key Figure Calculations option is selected.

● Checks for the definition of the planning area


○ The planning area must be enabled for change history.
○ A version cannot contain a key figure that is enabled for change history.
● Checks for the planning levels
○ A planning level can contain history attributes only if the planning area is enabled for change-history-
based calculations.
○ Stored key figures cannot have a base planning level that contains history attributes or data sharing
attributes.
● Checks for the calculations of key figures
○ A key figure can be a stored input at a history planning level only if this input key figure is enabled for
change history.
○ A key figure can be a stored input at a history planning level only if the TSCHANGEIDFR attribute is set
to root.
○ A key figure can be an input at a history planning level only if the history planning level is compatible
with the base planning level of the input key figure.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 277
The history planning level is compatible with the base planning level if it contains exactly the same set
of attributes that the base planning level of the key figure contains, plus the history attributes. The
history planning level must have the same root attributes as the base planning level, plus the
TSCHANGEIDFR history attribute.

Help for Error Analysis

 Note

SAP recommends that you perform a consistency check on the planning area before you activate it. To do
so, choose Check in the Planning Areas app.

Study the check log and the activation log in the Application Logs app to learn what made the check or the
activation fail.

The logs related to activation and to consistency checks belong to the IBP Foundation area, to the Activation
and to the Check subareas.

The messages you find in the log provide you with information about the errors.

For certain messages, which originate from complex situations, you'll find additional information in the long

text of the message, which you can call up by clicking the  (Details View) icon in the Long Text column.
For information about specific activation errors, see the Knowledge Base Article (KBA) 2556544 .

Related Information

Creating Attribute Checks [page 25]


Configuring Planning Levels for Aggregated Constraint Key Figures

17.4 Planning Levels

This section lists the most common checks and errors related to the definition and relationships of planning
levels.

● The planning level ID must be all uppercase.


● All attributes of a planning level must be attributes selected for the planning area.
● A planning level cannot include the CHID attribute if the planning area is enabled for change history.
● All attributes selected for the planning area should be used in one or more planning levels.
● A planning level that is used in a stored key figure must exist.
● A planning level that is used as a base planning level of a stored key figure must have one or more root
attributes other than the time attribute.

Model Configuration Guide


278 PUBLIC Modeling Requirements (Checks and Errors)
● The time profile level of the lowest granularity must be the root attribute in a planning level.
● If a planning level is used as a base planning level of a key figure, it must have exactly one time profile level
set as root attribute.
● Key figure data must not exist at a planning level whose root attributes have been changed.
● Two planning levels that have the same root attributes (apart from the time attribute) and are used as the
base planning level of one or more stored key figures must have the same set of non-root attributes.
For more information see, SAP Knowledge Base Article 2772643 .
● A planning level cannot contain a root attribute that can be determined by other root attributes with the
help of master data completion.
● Checks for external planning levels (for planning levels that have a data source for external key figure
definition assigned):
○ An external planning level must have at least one additional root attribute other than the time attribute
set to root.
○ For each root attribute of an external planning level, a reference column of the external data source
must be assigned.
○ For the time root attribute of the external planning level, the DATE_TIME reference column must be
assigned.
○ Non-root attributes must not have a reference column assigned.
● An output planning level must contain all attributes for which attribute transformation exists.
● Calculation expressions can only include attributes that are available from the input planning levels.

17.5 Key Figures

This section lists the most common checks and errors related to key figures.

Checks for the Definition of a Key Figure

● The key figure ID must be all uppercase.


● A key figure and an attribute cannot share the same ID.
● A key figure that is used in a planning area that is enabled for change history cannot have CHID as its ID.
● An attribute used as a time-dependent key figure can have either a time reference attribute specified, or
one or both of the fields From Period and To Period filled out.

 Note

If the base planning level of the attribute used as a key figure contains a time attribute, the attribute as
key figure is time dependent.

● An attribute used as a time-independent key figure does not need any of the time reference attribute or the
periods specified.
● For an attribute as a key figure, To Period must not be sooner than the From Period.
● Only a stored key figure can be set as an input for or an output of time-series-based forecast consumption.
● An attribute as key figure and a key figure can’t share the same ID if any of the following applies:

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 279
○ The key figure isn’t stored.
○ The key figure is an alert, generated, helper or attribute transformation key figure.

Checks for the Calculation Definitions of a Key Figure

● A calculation expression must have correct syntax: Brackets and quotation marks must go in pairs.
● A key figure - except for helper key figures - must have a calculation defined at REQUEST level.
● A calculation at REQUEST level either must be an aggregation, or must have inputs from REQUEST level
only.
● The calculation graph for every key figure must result in a stored key figure.
● There should not be a calculation that is not used in any calculation graph.
● The calculation graph must not contain circular references.
● A key figure referenced in a calculation must be specified as an input key figure for the calculation.
● An aggregation calculation must have exactly one input key figure, except for MIN and MAX. The MIN and
MAX functions can have several input key figures.
● In an aggregation calculation, the attributes of the output planning level must be a subset of the attributes
of the input planning levels.
● If the output planning level doesn't contain all root attributes of the input planning level, the calculation
expression must start with one of the aggregation functions (SUM, MIN, MAX, AVG, or COUNT).
● In a calculation that is not aggregation, the output planning level must contain all attributes from the input
planning levels.
● A calculation must include two planning levels in its inputs at most.

 Note

If one key figure is a stored input, and the other is a calculated input from the same planning level, the
system considers it two different planning levels.

● If calculation exists for a key figure at a given planning level, the key figure should be a calculated input in
calculations, not a stored input.
● A key figure must be specified as stored input at a planning level that is compatible with its base planning
level. That is, the planning levels have the same set of root attributes and non-root attributes.
● Only a planning level that has one or more root attributes can be used as the base planning level of a stored
key figure.
● Data upload is possible only at a planning level that has one or more root attributes. Strings in
disaggregation expressions must have two single quotation marks.
● SUM()Aggregation Mode of the key figure is set to calculation can be used for a key figure only if the Sum or
Custom.
● Only stored key figures can be marked as stored input in a key figure calculation.
● Only key figures that have the same base planning level can be stored inputs at the same planning level
(other than the base planning level). That is, two key figures cannot be stored inputs at the same planning
level if their base planning levels are different.
● A key figure must not reference itself on the same planning level in its calculation.
● For a key figure at a specific planning level, only one calculation must exist.
● An attribute transformation must have exactly one input.

Model Configuration Guide


280 PUBLIC Modeling Requirements (Checks and Errors)
● In an attribute transformation, the output planning level must include the attribute.
● Each attribute of the output planning level must be either a calculated attribute, or must be available from
an input planning level.
● Each attribute in a calculation expression must be available from the input planning levels.
● An input planning level where the stored value of a key figure is used cannot have more attributes than the
base planning level of the given key figure.
● An input planning level where the stored value of a key figure is used must contain all root attributes of the
base planning level of the given key figure.

L Script Calculations

● The sort attribute of an L script must be available from the input planning level of the L script.
● The sort sequence of attributes in an L script must be valid.
● All root attributes of the input planning level must be specified as inputs in the L script.
● All root attributes of the input planning level must be specified as outputs in the L script.
● L script cannot be used in the calculation graph - at base planning level and below - of a key figure that is
used either as the input or output of a forecast operator.

Checks for the Cumulative Aggregation (IBP_CAGGR Function)

● A cumulative aggregation calculation must have exactly one input.


● The input planning level and the output planning level of a cumulative aggregation must be compatible with
each other. That is, they must contain the same set of attributes, including the same set of root attributes.
● Cumulative aggregations must be time dependent. That is, both the input planning level and the output
planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● Cumulative aggregation can be defined at such a planning level only that has time attributes and attributes
from master data types as well.
● The IBP_CAGGR function must have values specified for the 4 mandatory parameters, and can have a
value specified for one optional parameter.
● The first parameter must be the input key figure at the input planning level.
● The IBP_CAGGR function must have valid values specified for the 4 or 5 parameters.
● The value that is specified for the fifth parameter (time profile level at which the cumulative aggregation
restarts) must exist in the time profile assigned to the planning area.
● Only a time profile level that is assigned to the planning level of the cumulative aggregation as a time
attribute (but not as a root attribute) can be specified as the value of the fifth parameter of IBP_CAGGR
(time profile level at which the cumulative aggregation restarts).
● The IBP_CAGGR function cannot be used at REQUEST level.
● The IBP_CAGGR function cannot be nested in other calculations.
● When a calculation graph includes a cumulative aggregation, the topmost key figure in the calculation
graph mustn't be editable.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 281
● The IBP_CAGGR function cannot be used in in the calculation graph - at base planning level and below - of a
key figure that is used either as the input or output of a supply or forecast operator.

Checks for the Rolling Aggregation (IBP_RAGGR) Function

● A rolling aggregation calculation must have exactly one input.


● The input planning level and the output planning level of a rolling aggregation must be compatible with
each other. That is, they must contain the same set of attributes, including the same set of root attributes.
● Rolling aggregations must be time dependent. That is, both the input planning level and the output
planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_RAGGR function must have values specified for the 5 mandatory parameters, and can have a
value specified for one optional parameter.
For more information, about the possible values of the parameters, see Rolling Aggregation [page 143].
● The first parameter must be the input key figure at the input planning level.
● The value that is specified for the sixth parameter (time profile level at wich the rolling aggregation
restarts) must exist in the time profile assigned to the planning area.
● Only a time profile level that is assigned to the planning level of the rolling aggregation as a time attribute
(but not as a root attribute) can be specified as the value of the sixth parameter of IBP_RAGGR (time
profile level at which the rolling aggregation restarts).
● The IBP_RAGGR function cannot be used at REQUEST level.
● When a calculation graph includes a rolling aggregation, the topmost key figure in the calculation graph
mustn't be editable.
● The IBP_RAGGR function cannot be nested in other calculations.
● The IBP_RAGGR function cannot be used in the calculation graph - at base planning level and below - of a
key figure that is used either as the input or output of a supply or forecast operator.

Checks for the Dynamic Rolling Aggregation (IBP_DYNAMIC_RAGGR) Function

● A dynamic rolling aggregation must have one, two, or three input key figures, which must be used in the
calculation expression as well. The first one is the input key figure to be aggregated, the second one (if
used) defines the start of aggregation, and the third one (if used) defines the duration of the aggregation.
● The attributes of the output planning level must be the union of the attributes of the input planning levels.
● Maximum two input planning levels are allowed.
● Dynamic rolling aggregations must be time dependent. That is, both the input planning levels and the
output planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_DYNAMIC_RAGGR function must have values specified for the 5 mandatory parameters, and can
have a value specified for one optional parameter.

Model Configuration Guide


282 PUBLIC Modeling Requirements (Checks and Errors)
● The first parameter must be the input key figure to be aggregated at the input planning level.
● The value that is specified for the sixth parameter (time profile level at which the dynamic rolling
aggregation restarts) must exist in the time profile assigned to the planning area.
● Only a time profile level that is assigned to the planning level of the dynamic rolling aggregation as a time
attribute (but not as a root attribute) can be specified as the value of the sixth parameter of
IBP_DYNAMIC_RAGGR (time profile level at which the dynamic rolling aggregation restarts).
● The IBP_DYNAMIC_RAGGR function cannot be used at REQUEST level.
● When a calculation graph includes a dynamic rolling aggregation, the topmost key figure in the calculation
graph mustn't be editable.
● The IBP_DYNAMIC_RAGGR function cannot be nested in other calculations.

Checks for the Period Shift (IBP_PERIODSHIFT) Function

● The first parameter must be the input key figure at the input planning level.
● A period shift calculation must have exactly one input if you shift by an exact number or an attribute.
● A period shift calculation must have exactly two inputs if you shift the input key figure by another key
figure.
● The input planning level and the output planning level of a period shift must be compatible with each other.
That is, they must contain the same set of attributes, including the same set of root attributes.
● Period shift must be time dependent. That is, both the input planning level and the output planning level of
the calculation must have one of the PERIODID(n) attributes set as the time root attribute. The time root
attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The IBP_PERIODSHIFT function cannot be used at REQUEST level.
● When a calculation graph includes a period shift, the topmost key figure in the calculation graph mustn't be
editable.
● The IBP_PERIODSHIFT function cannot be nested in other calculations.
● Define the third parameter or create an aggregation calculation on top of the IBP_PERIODSHIFT function,
if you shift the input key figure by a time profile attribute or key figure.
● The IBP_PERIODSHIFT function must have values specified for the 2 mandatory parameters.
For more information, about the possible values of the parameters, seePeriod Shift [page 152].
● The IBP_PERIODSHIFT function cannot be used in the calculation graph - at base planning level and below
- of a key figure that is used either as the input or output of a supply or forecast operator.

Checks for the Last Period Aggregation (IBP_LPA) Function

● Last period aggregation must have exactly one input.


● Last period aggregation must have exactly one parameter, which must be a key figure ID.
● Input of the calculation must be the same as the parameter of last period aggregation.
● Master data attributes (including root attributes) must be the same in the input and output planning levels.
● The input planning level must have at least one root time profile level.
● The IBP_LPA function must be the one and only function in a calculation expression. It cannot be
embedded in other functions, and cannot be used in operations (for example, +, =<, and NOT).

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 283
● In case of dynamic last period aggregation, time profile levels must be the same in the input and output
planning levels.
● Calculations that are built on dynamic last period aggregation cannot contain root time profile levels in the
output planning level.
● Calculations that are built on dynamic last period aggregation cannot have time profile levels in the
expression.
● Time profile levels cannot be used as join attributes in calculations that are built on dynamic last period
aggregation.
● In case of static last period aggregation, the root time profile level in the output planning level must be a
possible parent of the root time profile level in the input planning level.
● The IBP_LPA function cannot be used at REQUEST level.
● The IBP_LPA function cannot be used in the calculation graph - at base planning level and below - of a key
figure that is used either as the input or output of a supply or forecast operator.

Checks for the Weighted Average (IBP_WEIGHTEDAVG) Function

● A weighted average calculation must have exactly 3 parameters.


● The first parameter must be the input key figure at the input planning level.
● The second parameter must be either an input key figure at the input planning level or a master data type
attribute.
● If the second parameter is a master data type attribute (integer), it must be assigned to the input planning
level of the first key figure.
● The third parameter must be either STOREDNUMERATOR or CALCULATEDNUMERATOR.
● The IBP_WEIGHTEDAVG function cannot be nested in other calculations.
● The planning level of the output key figure must be the subset of the union of the input planning levels.
● The root time attributes of the input planning levels must be the same.
● The input planning levels cannot be on REQUEST level.
● If the second parameter of the IBP_WEIGHTEDAVG function is a key figure, the input planning levels must
have at least one common non-time root attribute that is included in the output planning level.
● When a calculation graph includes a weighted average calculation, the topmost key figure in the calculation
graph mustn't be editable.

Checks for the Coverage (IBP_COVERAGE) Function

● The coverage calculation has 6 mandatory parameters and one optional parameter.
● The IBP_COVERAGE function must have 2 or 3 input key figures.
● The first parameter must be an input key figure.
● The second parameter must be an input key figure.
● The third parameter must be an input key figure or a positive integer.
● The input planning levels must be the same.
● The input planning levels and the output planning level of a coverage calculation must be compatible with
each other. That is, they must contain the same set of attributes, including the same set of root attributes.

Model Configuration Guide


284 PUBLIC Modeling Requirements (Checks and Errors)
● Coverage calculations must be time dependent. That is, both the input planning level and the output
planning level of the calculation must have one of the PERIODID(n) attributes set as the time root
attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_COVERAGE function cannot be nested in other calculations.
● The IBP_COVERAGE function cannot be used at REQUEST level.
● When a calculation graph includes a coverage calculation, the topmost key figure in the calculation graph
mustn't be editable.

Checks for the Calendar (IBP_CALENDAR) Function

● The calendar function must have exactly 2 parameters.


● The first parameter must be the input key figure at the input planning level.
● The second parameter must be a calendar attribute.
● The calendar attribute has to be added to the planning level of the input key figure.
● The input planning levels and the output planning level must have the same set of time attributes, including
the time root attribute.
● The calendar function cannot be used on REQUEST level.
● When a calculation graph includes a calendar function, the topmost key figure in the calculation graph
mustn't be editable.

Checks for the Generate Missing Time Periods (IBP_GENERATE_MISSING_TP)


Function

● The generate missing time periods function must have exactly 3 parameters.
● The first parameter must be the input key figure at the input planning level.
● The third parameter must be larger than or equal to the second parameter.
● The calculation horizon defined by the second and third parameter must fall within the planning horizon.
● The input planning level and the output planning level of a generate missing time periods function must be
compatible with each other. That is, they must contain the same set of attributes, including the same set of
root attributes.
● The generate missing time periods function must be time dependent. That is, both the input planning level
and the output planning level of the calculation must have one of the PERIODID(n) attributes set as the
time root attribute. The time root attribute mustn't be the PERIODID attribute.
The same PERIODID(n) attribute must be the time root attribute in both planning levels.
● The output planning level must have master data type roots.
● The IBP_GENERATE_MISSING_TP function cannot be nested in other calculations.
● The IBP_GENERATE_MISSING_TP function cannot be used at REQUEST level.
● When a calculation graph includes a generate missing time periods function, the topmost key figure in the
calculation graph mustn't be editable.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 285
Checks for the Disaggregation Expression

● The key figures used in the disaggregation expression must be stored and must have the same base
planning level as their main key figure.
● The attributes (master data and time attributes) used in the disaggregation expression must be assigned
to the base planning level of the key figure.
● The key figures and attributes (master data and time attributes) used in the disaggregation expression
must be specified with double quotes.
● Single quotation marks are used for character like values (strings) in disaggregation expressions.
● Placeholders such as $$PERIODID0CU$$ must be entered without double quotation marks.

 Caution

If you encounter any of the following errors, please make sure that you resolve them, as the planning area
can't be activated as long as they exist:

● Make sure each opening double quote has closing counterpart.


● Make sure that each opening bracket has closing counterpart.
● Remove spaces between double quotes.
● Attribute <Attribute ID> is not assigned to the base planning level.
● Key figure <Key Figure ID> cannot be referenced due to wrong base planning level.
● Use double quotes for key figures or attributes.
● Key Figure <Key Figure ID> used in the disaggregation expression is not stored.
● Please correct the number of arguments for function <Function>.
● Add brackets around arguments of function <Function>.
● Please correct invalid reference in disaggregation expression.
● Please check the validity of disaggregation expression.
● Make sure that the disaggregation expression does not contain line breaks.
● Make sure that the disaggregation expression does not contain tab characters.
● Make sure that the disaggregation expression does not contain empty brackets.
● Make sure that the disaggregation expression does not only contain spaces.

Checks for the Aggregation and Disaggregation Mode

● Only some combinations of aggregation and disaggregation modes make sense from a business
perspective. If you use other combinations and you change data in the SAP Integrated Business Planning,
add-in for Microsoft Excel on an aggregated level, the results after disaggregation and aggregation will not
be identical.
The following figure shows combinations that make sense, as well as ones that should not be used.
If you have configured an invalid combination of aggregation and disaggregation modes in the
Configuration app, it will be automatically corrected if you call up and edit the key figure in the Planning
Areas app, as you can only create valid combinations in the Planning Areas app.
Proportional disaggregation is available for both Equal and Copy disaggregation modes. For more
information about the possible values of the Proportionality field, see Configuration of Proportional
Disaggregation [page 111].

Model Configuration Guide


286 PUBLIC Modeling Requirements (Checks and Errors)
● To ensure good system performance, the system checks whether the use of aggregation mode Custom is
advisable (only relevant for stored key figures). We recommend to only use aggregation mode Custom in
the following situations:
○ A key figure has a complex calculation at request level, for example, Unit Price, which has inputs at
request level.
○ The planning level used in the request level calculation is different from both the base planning level of
the key figure and from the planning level that is used in unit of measure or currency conversions.

Checks for the Conversion Factor

● Conversion key figures must be stored key figures.


● All root attributes of the conversion key figure, except for the (UOM) conversion target attribute must be
contained as a root attribute in the base planning level of the key figure.

 Caution

If you encounter any of the following errors, please make sure that you resolve them, as the planning area
can't be activated as long as they exist:

● Conversion key figure <Key Figure ID> does not exist.


● Attribute <Attribute ID> of conversion KF is not assigned to base planning level.

Checks Related to Fixing Key Figure Values

● Not more than 20 key figures are enabled for fixing.


● Each key figure that is enabled for fixing is stored and editable.
● Each key figure that is enabled for fixing is neither a snapshot key figure, nor an output or input/output key
figure for time-series based supply planning.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 287
● Each key figure enabled for fixing does not have a promotion-related business meaning assigned.
● For a key figure that is enabled for fixing, only the following combinations of aggregation mode and
disaggregation mode are allowed:

Aggregation Mode Disaggregation Mode

SUM Equal distribution

ACG Copy value

● The key figures enabled for fixing are not time independent. (A key figure is time independent if its base
planning level contains no time attributes as root attribute or if it has PERIODID as the only root time
attribute.)

Checks Related to Planning Notes

● Only stored key figures can be enabled for planning notes.


● External key figures cannot be enabled for planning notes.
● A planning area can contain up to 20 key figures enabled for planning notes.
● The planning level for planning notes must contain a subset of attributes from the base planning level of
the key figure, and mustn't contain attributes that are not included in the base planning level of the key
figure.

If any of the above checks fail, the planning area cannot be activated. Change the configuration so that
planning notes are enabled for not more than 20 key figures, and each of them is a stored key figure, and a
suitable planning level is assigned as the planning level for planning notes.

17.6 Suppressible Errors

For certain releases, you have the possibility to suppress the activation errors below and activate your planning
area with limited scope. After this grace period is over, and the suppressible errors have turned into errors, you
can no longer activate your planning areas if these errors occur. Correct the invalid configurations as soon as
possible to be able to activate your planning areas.

For more information about how to suppress these errors and activate with limited scope, see Activating
Planning Areas [page 257].

*S* Calculation &1@&2: Expression doesn't start with aggregation function

In the calculation for the key figure at the planning level, the input planning level contains one or more root
attributes that aren't root attributes of the output planning level, or the output planning level doesn't contain

Model Configuration Guide


288 PUBLIC Modeling Requirements (Checks and Errors)
these attributes at all. Such a calculation is an aggregation, and its calculation expression must start with one
of the aggregation functions: SUM, MIN, MAX, AVG, or COUNT.

To correct the configuration and activate with full scope, make one of the following changes:

● Split up the calculation into two calculations: an aggregation and a defaulting, for example. Pay attention to
the sequence of these calculations.
● In case you assign a value to a key figure, and the output planning level doesn't contain all root attributes of
the input planning level. Specify the aggregation function (SUM, MIN, MAX, or AVG).
● Choose a different input planning level that has the same set of root attributes as the output planning level.

*S* PL &1 and PL &2: Both cannot be used as base PL of stored key figures

There are planning levels that share the same set of root attributes (not considering the time attribute), but
they have different sets of non-root attributes (not considering the time attribute). Both planning levels are
used as the base planning level of one or more stored key figures.

To correct the configuration and activate with full scope, make one of the following changes:

● Change one of the planning levels, so that they have the same set of root attributes and the same set of
non-root attributes. Only attributes from master data types are taken into consideration, the time
attributes don't need to match.
● Decide which of the planning levels you want to use as the base planning level of stored key figures. Choose
a different base planning level for each stored key figure whose base planning level is the other planning
level. Each planning level that is used as the base planning level of stored key figures must have a different
set of root attributes.

For more information see, SAP Knowledge Base Article 2875816 .

*S* Stored values of KFs, with different base PLs, are read from PL &1

In multiple key figure calculations, where the stored values of key figures are used at the same input planning
level, the key figures cannot have different base planning levels.

All key figures that are used as stored inputs at the same planning level must have the same base planning
level.

To correct the configuration and activate with full scope, make one of the following changes:

Before making any corrections, check your activation log and look for the error message Stored key figure read
from an incompatible planning level. If you have run into this error during activation as well, fix it first as it might
solve the problem of stored key figures with different base planning levels.

If the problem still persists, proceed as follows:

The attachment of the messages in the activation log contains a list of calculations divided into the sections
below:

● Calculations where the input planning level of stored key figures is their base planning level.
● Calculations where the input planning level of stored key figures does not match their base planning levels.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 289
Depending on your business requirements, make one of the following changes:

● Use the base planning level of the key figures as the input planning level in the calculation definitions.
Change only the calculations where the input planning level (where the stored value of a key figure is used)
is not the base planning level of the key figure. As result, all stored key figures will be sourced from their
base planning levels, which are the recommended approach.
● If your business requirements justify that you use the stored values of key figures at a planning level other
than their base planning levels, create a copy of each base planning level (with the same set of root and
non-root attributes), and use the stored value of the key figure at this compatible planning level.
As a result, all stored key figures will be sourced from a planning level that is compatible with their base
planning level, that is, they share the same root and non-root attributes.
● Select one of the base planning levels listed in the attachment, and for each key figure use it as its base
planning level.
As a result, all stored key figures sourced from the same input planning level, will have the same base
planning level.

*S* Calc. &1@&2: PL of input KF &3 has more attr. than base PL &4

In calculation definitions, an input planning level where the stored value of a key figure is used cannot have
more attributes than the base planning level of the given key figure. That is, the input planning level of a
calculation cannot contain attributes that cannot be sourced from the base planning level.

To correct the configuration and activate with full scope, make one of the following changes:

● Use the base planning level of the key figure as the input planning level.
● If you want to use the extra attributes that are not available from the base planning level, create a
calculation (if not yet available) and use the calculated value of the key figure instead of the stored value.
● Remove these extra attributes from the planning level where the stored value of a key figure is used.
● Use a planning level that has the same attributes as the base planning level.

*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation does not exist.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

To correct the configuration and activate with full scope, make one of the following changes:

● Use the base planning level of the key figure as the input planning level.
● Create a calculation on the input planning level and use the calculated value of the key figure instead of the
stored value. If the aggregation level of the input key figure is lower, use Split Factor Calculation [page 392];
if it is higher, use an aggregation.
● Use a planning level that has the same attributes as the base planning level.

Model Configuration Guide


290 PUBLIC Modeling Requirements (Checks and Errors)
*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation exists.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

To correct the configuration and activate with full scope, make one of the following changes:

● Since there is a calculation already defined on the input planning level, use the calculated value of the key
figure instead of the stored value.
● Use the base planning level of the key figure as the input planning level.
● Use a planning level that has the same attributes as the base planning level.

*S* Calc. &1@&2: PL of input KF &3 doesn't contain root attr. of base PL.
(Calculation is not used.)

In calculation definitions, an input planning level where the stored value of a key figure is used must contain all
root attributes of the base planning level of the given key figure.

Furthermore, the calculation is not used in any REQUEST level calculation in the calculation graph.

To correct the configuration and activate with full scope, make one of the following changes:

1. If you do not want to create a REQUEST level calculation in the calculation graph that is based on this
calculation, delete this calculation and all other calculations that are built on it.
If you want to use the calculation, make one of the following changes depending on your business
requirements:
○ Use the base planning level of the key figure as the input planning level.
○ Create a calculation (for example, an aggregation) on the input planning level and use the calculated
value of the key figure instead of the stored value.
○ Use a planning level that has the same attributes as the base planning level.

*S* Key Figure &1 has generated key figure assignment problem

The fixing­enabled key figure is inconsistent for either of the following reasons:

● There is a missing or inconsistent database entry for the mapping between the fixing­enabled key figure
and its generated key figures.
● The fixing­enabled key figure has one or two generated key figures missing.

If a key figure is enabled for fixing, it needs to have two generated key figures with an active or inactive (but not
pending deletion) mapping between the fixing­enabled key figure and the generated key figures.

To resolve the inconsistency, perform the following steps:

1. Activate the planning area (choose Limited Scope, with Dependencies or Limited Scope, No Dependencies).
There will be cases when your activation fails. Go on to step 2 nevertheless.

Model Configuration Guide


Modeling Requirements (Checks and Errors) PUBLIC 291
2. Select the Enable Fixing checkbox and save the key figure.
3. Deselect the Enable Fixing checkbox and save the key figure.
4. Again: deselect the Enable Fixing checkbox and save the key figure.
5. Again: select the Enable Fixing checkbox and save the key figure.

 Note

These two steps might seem redundant but they are needed to resolve some special cases of the
problem, therefore should not be skipped.

6. Perform a check on the planning area, and - provided it doesn't contain any errors - perform a full-scope
activation. If the planning area does contain errors, choose Limited Scope for your activation.

*S* Key Figure &1 has version assignment problem in Version &2

The fixing­enabled key figure is inconsistent for either of the following reasons:

● There is a version that the fixing­enabled key figure itself is not assigned to but its generated key figure is.
● There is a version that the fixing­enabled key figure is assigned to but its generated key figure is not.

If a key figure is enabled for fixing, its generated key figures need to be assigned to the same versions that the
key figure itself is assigned to.

To resolve the inconsistency, perform the following steps:

1. Deselect the Enable Fixing checkbox for the key figure.


2. If the key figure isn't assigned to the version, assign it and save it.
3. Select the Enable Fixing checkbox and save the key figure again.
4. Perform a check on the planning area, and - provided it doesn't contain any errors - perform a full-scope
activation. If the planning area does contain errors, choose Limited Scope for your activation.

Model Configuration Guide


292 PUBLIC Modeling Requirements (Checks and Errors)
18 Copy Options for Planning Areas

Copy options enable you to create an exact copy of an existing planning area, combine two planning areas, or
overwrite an existing planning area.

You can use the copy options to create copies of non-sample planning areas or the sample ones. SAP
Integrated Business Planning offers the following options for copying planning areas:

● Create new (formerly known as simple copy: create new)


● Merge with existing (formerly known as simple copy: merge)
● Replace existing (formerly known as simple copy: overwrite existing (replace))
● Create new with dependencies (formerly known as advanced copy: create new)
● Replace existing including dependencies (formerly known as advanced copy: select existing in)

When you copy the unified planning area (SAPIBP1) using the create new with dependencies option, you can
also apply the partial copy option and copy analytics and alerts. When you copy the unified planning area
(SAPIBP1) using the replace existing including dependencies option, you can also apply the partial copy
option.

 Note

The create new, merge with existing, and replace existing options don't copy master data types, time
profiles, or attributes associated with a planning area. To copy these entities, use the create new with
dependencies or the replace existing including dependencies options. You can't copy favorites, templates,
or user­defined filters with any of the copy options.

To copy any of the planning areas delivered with SAP Integrated Business Planning, launch the Sample Model
Entities app, select the sample planning area you want to copy and choose Copy.

To access the copy options for your own planning areas, launch the Planning Areas app, select the planning
area you want to copy and choose Copy.

The Overview of Copy Options table contains a high-level overview of the configuration objects that you can
copy using create new and create new with dependencies. For more information, see the detailed description of
the specific copy option.

Overview of Copy Options

Create New Create New with Create New with


Dependencies of Dependencies of
SAP Sample Plan­ Non-sample Plan­
ning Area ning Area

Planning area details Yes Yes Yes

Planning area–time profile assignments Yes Yes Yes

Time profile used in the planning area No Yes Yes

Planning area–attribute assignments Yes Yes Yes

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 293
Create New Create New with Create New with
Dependencies of Dependencies of
SAP Sample Plan­ Non-sample Plan­
ning Area ning Area

Attributes used in the planning area No Yes No

Master data type–attribute assignments Yes Yes Yes

Master data types used in the planning area No Yes Yes

Planning levels used in the planning area Yes Yes Yes

Planning level–attribute assignments Yes Yes Yes

Key figures used in the planning area Yes Yes Yes

Attributes as key figures used in the planning area Yes Yes Yes

Versions and scenarios used in the planning area Yes Yes Yes

Snapshots used in the planning area Yes Yes Yes

Planning area–planning operator assignments Yes Yes Yes

Planning profiles Yes Yes Yes

Order-based planning settings Yes Yes Yes

Analytics and alerts (SAPIBP1 only) No Yes No

Partial copy (SAPIBP1 only) No Yes No

Related Information

Create New [page 295]


Merge with Existing [page 303]
Replace Existing [page 295]
Create New with Dependencies [page 297]
Replace Existing Including Dependencies [page 301]

Model Configuration Guide


294 PUBLIC Copy Options for Planning Areas
18.1 Create New
The create new (formerly known as simple copy: create new) copy option creates an exact copy of the source
planning area with a new ID.

 Recommendation

Use this option to copy your own planning area if you want to use the same set of master data types and
the same time profile and only want to make changes to the configuration in the target planning area.

 Note

You can't use this option to copy a sample planning area.

You use the create new copy option to create a new planning area by copying the following configuration from
the source planning area:

● Planning area details and settings


● Planning area–time profile assignment
● Planning area–attribute assignments
● Planning levels used in the planning area
● Planning level–attribute assignments
● Attributes as key figures used in the planning area
● Key figures used in the planning area
● Versions used in the planning area
● Snapshots used in the planning area
● Planning area–planning operator assignments
● Planning profiles
● Order-based planning settings

The master data types, the time profile, and the attributes associated with the planning area are not copied.

18.2 Replace Existing


The replace existing (formerly known as simple copy: overwrite existing (replace)) copy option updates the
existing target planning area based on the source planning area while keeping the ID of the target planning
area.

 Recommendation

Use the replace existing option if you want to recreate a planning area with an ID that is already in use. You
can overwrite a non-sample planning area with another non-sample planning area or a sample planning
area if the source and target planning areas include the same set of master data types, that is, the master
data types have the same prefix, ID, and configuration in both planning areas. If you use this option to
overwrite a planning area with a sample one, the master data types must have one type of prefix and it
must be the same in both the source and the target planning area. If you use this option to overwrite a non-
sample planning area with another non-sample one, the master data types can have different prefixes.

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 295
You can use replace existing to create a copy of the source planning area in an existing target planning area,
that is, delete configuration in the target planning area that is not included in the source planning area, add the
new configuration from the source planning area, and update the existing configuration in the target planning
area based on the source planning area.

 Note

The target planning area must be active.

The resulting planning area contains the following configuration:

● Planning area ID of the target planning area


● Planning area details and settings of the source planning area
● Planning area–time profile assignment of the target planning area

 Note

If you replace a non-sample planning area with a sample planning area, make sure that the time profile
assigned to the sample planning area has already been copied with the same ID as in the sample
content.

● Planning area–attribute assignments of the source planning area


● Planning levels of the source planning area
● Planning level–attribute assignments of the source planning area

 Caution

If you have the same planning level in the source and target planning areas but with different root
attributes, the planning levels in the resulting planning area will have the root attributes of the source.
This might lead to inconsistencies in the existing key figure data records because the root attributes
must always contain unique values. To avoid inconsistencies in the database, make sure that the new
configuration is compatible with the existing data records, or delete the data records and upload the
data again.

● Attributes as key figures of the source planning area


● Key figures of the source planning area
● Versions of the source planning area
● Snapshots of the source planning area
● Planning area–planning operator assignments of the source planning area
● Planning profiles of the source planning area

 Note

The planning profiles of the target planning area are deleted.

● Order-based planning settings


● Sources of change of the source planning area that you selected in the Settings for Change History app.

 Note

After you have copied a planning area using this option, you need to make sure that the sources of
change you selected in the Settings for Change History app for the source planning area are also
tracked in the resulting planning area. To do that, first activate the planning area, then synchronize the

Model Configuration Guide


296 PUBLIC Copy Options for Planning Areas
sources of change for the resulting planning area in the Settings for Change History app. For more
information about the synchronization functionality, see Settings for Change History.

The master data types, the time profile, and the attributes associated with the planning area are not copied.

18.3 Create New with Dependencies

The create new with dependencies (formerly known as advanced copy: create new) copy option creates an
exact copy of the source planning area with a new ID and copies the master data types and the time profile of
the planning area as well.

 Recommendation

Use this option to copy a sample planning area if you want to copy the attributes, the master data types,
and the time profile associated with the given sample planning area.

Use this option to copy a non-sample planning area if you want to create a planning area that contains a
different set of master data types and that uses a different time profile.

The create new with dependencies option allows you to copy the attributes, the master data types, and the
time profile associated with a planning area.

 Note

If you copy an attribute from a sample planning area with this option, change it, and then copy the same
planning area again, the changes you made to the attribute will be overwritten. However, if you have
extended the length of such an attribute, a subsequent advanced copy of the same sample planning area
will not overwrite the changed length. For more information see Extending the Length of an Attribute [page
16].

You use the create new with dependencies option to create a new planning area by copying the following
configuration from the source planning area:

● Planning area details and settings


● Time profile used in the planning area
● Attributes used in the planning area

 Note

When you copy an SAP sample planning area using the create new with dependencies option, the
attributes are copied with the ID that they have in the source planning area. When you copy a non-
sample planning area using the same option, the attributes are not copied.

● Planning area–attribute assignments


● Master data types used in the planning area
● Planning levels used in the planning area
● Planning level–attribute assignments
● Attributes as key figures used in the planning area
● Key figures used in the planning area

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 297
● Versions used in the planning area
● Snapshots used in the planning area
● Planning area–planning operator assignments
● Forecast models
● Planning profiles
● Order-based planning settings

When you copy a planning area using create new with dependencies, you have the following options for copying
the master data types in the planning area:

● Copy the source master data type “as is”

 Note

This option is only available when copying an SAP sample planning area.

● Replace the existing prefix in the master data type ID with a different one

Special Copy Options for Specific Sample Planning Areas

Partial Copy
When you copy the unified planning area (SAPIBP1) using the create new with dependencies option, you can
also apply the partial copy option.

You can use the partial copy option to create a subset of the key figures available in the unified planning area by
applying one or more of the following filters:

● Demand planning
● Demand sensing
● Inventory optimization
● Sales and operations planning and supply planning

If you select the demand planning or demand sensing filter, the planning profiles of the planning area are
copied.

 Note

The content of the filters is predefined and cannot be changed.

To use the partial copy option, open the Sample Model Entities app, find the SAPIBP1 planning area and choose
Copy. Select the create new with dependencies or the replace existing including dependencies option and
choose a filter for partial copy.

 Note

If you have created a partial copy of the unified planning area that does not include supply planning, that is,
you did not apply the sales and operations planning and supply planning filter, make sure you deselect the
Enable Supply Planning checkbox in the planning area settings in the Planning Areas app.

Copying Analytics and Alerts


When you copy the unified planning area (SAPIBP1) or the SAP Sample Model 7 planning area (SAP7) using
the Create New with Dependencies option, you can also select the Copy Analytics and Alerts option to copy

Model Configuration Guide


298 PUBLIC Copy Options for Planning Areas
sample analytics and alerts. Using these sample analytics and alerts, you can reduce the manual configuration
work for the processes described in the SAP Best Practices for SAP Integrated Business Planning available in
the SAP Best Practices Explorer .

 Note

The ad-hoc filters are set to the sample data coming with the SAP Best Practices for SAP Integrated
Business Planning. To use them with your own data, you need to adjust the pre­configured ad-hoc filters to
the values used in your data.

To copy analytics and alerts, select the checkbox. The following content types are copied:

● Sample alert definitions


● Sample alert subscriptions
● Sample alert overviews
● Sample dashboards
● Sample analytics charts
● Sample supply chain network charts

The sample content is based on the processes described in the SAP Best Practices for SAP Integrated
Business Planning available in the SAP Best Practices Explorer .

 Note

If you apply filters for partial copy and also select Copy Analytics and Alerts when you copy the sample
planning area, only those sample analytics and alerts are copied for which all key figures are part of the
target planning area.

After the copying process is completed, you have to perform the following steps:

1. Share the dashboards with user groups or users in the Dashboards - Advanced app.
2. Share the alert definition and alert subscriptions with user groups or users in the Define and Subscribe to
Custom Alerts app.
3. Optional: Create categories in the Manage Categories app.
4. Optional: Assign categories to dashboards in the Dashboards - Advanced app.
5. Load best practices sample data or your own data.

Specifying External MDT Data Sources for Additional Demand Attributes

When you copy the SAP Sample Model 7 planning area (SAP7) using the Create New with Dependencies option,
you can specify one or two external master data type data sources for additional demand attributes. For more
information, see 2633495 .

Related Information

SAP Note 2633495

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 299
18.3.1 Copying an SAP Sample Planning Area with Create
New with Dependencies

Use the Sample Model Entities app to copy a sample planning area.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Procedure

1. In the Sample Model Entities app, select the sample planning area that you want to copy and choose Copy.

For example, copy the SAP6 sample planning area.


2. Select Create New with Dependencies and create a new planning area.

This option copies the sample planning area including its attributes, master data types, and time profile.
3. Enter an ID for the target planning area.

Use an ID that is up to 10 characters long, contains alphabetic or alphanumeric characters, and starts with
a letter, for example, ABCMODEL2. When copying an SAP sample planning area, you can keep the ID of the
source planning area, or enter an ID of your own.
4. Enter an ID for the new time profile.

Use an ID that is up to nine characters long and only contains numeric characters. You can keep the ID of
the source time profile, or enter an ID of your own.
5. Enter a target prefix for the master data types.

A prefix must only contain alphanumeric characters and can be one to three characters long. It must start
with a letter.

Depending on what the desired end result is, you have the following options when specifying the source
and target prefixes:
○ To copy the master data types “as is”, enter the source prefix as target prefix.
○ To replace the master data type prefix, enter the source prefix and a target prefix that is not identical to
the source.
6. Copy the planning area.

Model Configuration Guide


300 PUBLIC Copy Options for Planning Areas
Results

A new planning area along with a new time profile is created in your work area with the IDs that you selected.
The new planning area contains master data types with names corresponding to your selection. The names of
the attributes, key figures, and planning levels remain unchanged.

Related Information

Create New with Dependencies [page 297]

18.4 Replace Existing Including Dependencies

The replace existing including dependencies (formerly known as advanced copy: select existing) option
updates an existing target planning area as well as its master data types based on the source planning area and
its master data types.

 Recommendation

Use the replace existing including dependencies option if you want to recreate a planning area with an ID
that is already in use and you also want to update the master data types in the target planning area.

You use this option to create a copy of the source planning area in an existing target planning area while
keeping the IDs of the target planning area and master data types. The master data types are updated as
follows:

● If the source planning area contains a master data type that is not available in the target planning area:
○ If the master data type doesn't exist with the target prefix yet, a new master data type is created with
the target prefix and the source configuration, and it is assigned to the target planning area.
○ If the master data type already exists with the target prefix, it is updated based on the source master
data type and assigned to the target planning area.
● If the target planning area contains a master data type that is not available in the source planning area, the
master data type is removed from the target planning area.

 Note

The master data type is only removed from the planning area, it is not deleted from the system.

● If a master data type is available in both planning areas, the master data type with the target prefix is
updated based on the configuration of the source master data type.

All other configuration settings come from the source planning area.

 Note

The time profile of the target planning area is not deleted either, only its assignment to the planning area.

When using this copy option, the target planning area must be active.

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 301
The resulting planning area contains the following configuration:

● Planning area ID of the target planning area


● Planning area details and settings of the source planning area
● Planning area–time profile assignment of the source planning area

 Note

If you replace a non-sample planning area with a sample planning area, make sure that the time profile
assigned to the sample planning area has already been copied with the same ID as in the sample
content.

● Planning area–attribute assignments of the source planning area


● Planning levels of the source planning area
● Planning level–attribute assignments of the source planning area

 Caution

If you have the same planning level in the source and target planning areas but with different root
attributes, the planning levels in the resulting planning area will have the root attributes of the source.
This might lead to inconsistencies in the existing key figure data records because the root attributes
must always contain unique values. To avoid inconsistencies in the database, make sure that the new
configuration is compatible with the existing data records, or delete the data records and upload the
data again.

● Attributes as key figures of the source planning area


● Key figures of the source planning area
● Versions of the source planning area
● Snapshots of the source planning area
● Planning area–planning operator assignments of the source planning area
● Planning profiles of the source planning area

 Note

The planning profiles of the target planning area are deleted.

● Order-based planning settings


● Sources of change of the source planning area that you selected in the Settings for Change History app.

 Note

After you have copied a planning area using this option, you need to make sure that the sources of
change you selected in the Settings for Change History app for the source planning area are also
tracked in the resulting planning area. To do that, first activate the planning area, then synchronize the
sources of change for the resulting planning area in the Settings for Change History app. For more
information about the synchronization functionality, see Settings for Change History.

Model Configuration Guide


302 PUBLIC Copy Options for Planning Areas
Copy Options for the SAPIBP1 Planning Area

Partial Copy
When you copy the unified planning area (SAPIBP1) using the replace existing including dependencies option,
you can also apply the partial copy option.

You can use the partial copy option to create a subset of the key figures available in the unified planning area by
applying one or more of the following filters:

● Demand planning
● Demand sensing
● Inventory optimization
● Sales and operations planning and supply planning

If you select the demand planning or demand sensing filter, the planning profiles of the planning area are
copied.

 Note

The content of the filters is predefined and cannot be changed.

To use the partial copy option, open the Sample Model Entities app, find the SAPIBP1 planning area and choose
Copy. Select the create new with dependencies or the replace existing including dependencies option and
choose a filter for partial copy.

 Note

If you have created a partial copy of the unified planning area that does not include supply planning, that is,
you did not apply the sales and operations planning and supply planning filter, make sure you deselect the
Enable Supply Planning checkbox in the planning area settings in the Planning Areas app.

18.5 Merge with Existing

The merge with existing (formerly known as simple copy: merge) copy option combines two planning areas.

 Recommendation

Use this option to combine two planning areas that contain different planning area settings but are based
on the same set of master data types. You can merge a sample planning area with a non-sample planning
area or you can merge two non-sample planning areas if the source and target planning areas include the
same set of master data types, that is, the master data types have the exact same ID and configuration in
both planning areas.

The merge with existing option keeps all the configuration in the target planning area, adds everything new
from the source planning area, and updates the intersect configuration based on the source configuration.

Before you use the merge with existing option, make sure that the source and the target planning areas meet
the following requirements:

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 303
● They contain the same set of master data types with identical IDs and configuration.
● Their master data types have one type of prefix and the prefix is the same in both planning areas.
● They have the same storage time profile level.
● Their time profiles have the same number of time profile levels.
● The target planning area is active.

 Note

After combining two planning areas using merge with existing, you need to check certain configuration
settings in the resulting planning area to make sure that it is still consistent. For more information, see
Updating the Resulting Planning Area After Using Merge with Existing [page 305].

The resulting planning area contains the following configuration:

● Planning area ID of the target planning area


● Planning area details and settings of the source planning area
● Planning area–time profile assignment of the source planning area

 Note

If you merge a sample planning area with a non-sample planning area, make sure that the time profile
assigned to the sample planning area has already been copied with the same ID as in the sample
content.

● Planning area–attribute assignments of the source and the target planning area
● Planning levels of the source and the target planning area
● Planning level–attribute assignments of the source and the target planning area

 Caution

If you have the same planning level in the source and target planning areas but with different root
attributes, the planning levels in the resulting planning area will have the root attributes of the source.
This might lead to inconsistencies in the existing key figure data records because the root attributes
must always contain unique values. To avoid inconsistencies in the database, make sure that the new
configuration is compatible with the existing data records, or delete the data records and upload the
data again.

● Attributes as key figures of the source and the target planning area
● Key figures of the source and the target planning area
● Versions of the source and the target planning area
● Snapshots of the source and the target planning area
● Planning area–planning operator assignments of the source and the target planning area
● Planning profiles of the source and the target planning area
● Order-based planning settings

 Note

Version settings are only merged if your source planning area has a version that doesn't exist in your
target planning area. In this case, the full set of order-based planning settings for this version is added
to the target planning area. If, however, you have the same versions in your source and target planning
areas but some of their order-based planning settings are different, the new settings from the source
planning area are not merged. You have to add these settings manually. Also, if you have versions in

Model Configuration Guide


304 PUBLIC Copy Options for Planning Areas
your target planning area that don't exist in your source planning area, these are not deleted by the
merge.

The master data types, the time profile, and the attributes associated with the planning area are not copied.

18.5.1 Updating the Resulting Planning Area After Using


Merge with Existing

Make these changes to the planning area that you created using the merge with existing (formerly known as
simple copy: merge) copy option to make sure it contains all the configuration settings you need.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You have combined two planning areas using the merge with existing option. The resulting planning area
contains the planning area settings of the source planning area and you want to change certain settings based
on your target planning area settings.

Procedure

1. Check the supply planning setting of the planning area.

You can check this setting by selecting your resulting planning area in the Planning Areas app.

Option Description

Turn on the Enable Supply Planning switch. The target planning area was enabled for supply planning
and you want to use supply planning in the resulting plan­
ning area.

Turn off the Enable Supply Planning switch and clear the The target planning area was enabled for supply planning
Input/Output for Supply Planning field for the key figures and you do not want to use supply planning in the result­
that have a value in this field. ing planning area.

2. Check the external time series setting of the planning area.

You can check this setting by selecting your resulting planning area in the Planning Areas app.

Model Configuration Guide


Copy Options for Planning Areas PUBLIC 305
Option Description

Turn on the Enable External Time Series switch and make The target planning area was enabled for external time
sure the Data Source for External Key Figure Definition series and you want to use response management in the
and the External Key Figure Qty fields contain the correct resulting planning area.
values.

Turn off the Enable External Time Series switch and save. The target planning area was enabled for external time
series and you do not want to use response management
 Note in the resulting planning area.

As a result, the system automatically clears the


External Key Figure Qty and the Data Source for
External Key Figure Definition fields.

3. Check your planning area for attributes that are assigned to both a time profile level and the planning area,
and delete any assignments that you don't need.

The same attribute is assigned to a time profile level in the source and to the planning area in the target (or
the other way around). After merge with existing, this attribute is assigned to both the time profile level and
the planning area. Since an attribute can be assigned to only one of these entities at a time, you need to
remove the attribute from the entity in which you don’t need it.
4. Check that the aggregation mode of the key figures and their request level calculation definitions are still
consistent.

The same key figure has different aggregation modes in the source and the target planning areas. In the
resulting planning area, this key figure has the aggregation mode of the source planning area, and the
request level calculation of the target planning area.

Option Description

Modify the request level calculation. You want to use the aggregation mode that comes from
the source planning area.

Change the aggregation mode. You want to use the aggregation mode that was specified
in the target planning area.

5. Check the stored and calculated settings of your key figures and modify the calculation definitions if
needed.

The same key figure is set as stored in the source planning area and as calculated in the target planning
area (or the other way around). In the resulting planning area, this key figure has the setting of the source
planning area.
6. Select the Root checkbox for all attributes in the base planning level of the key figures for which the
Aggregated Constraint checkbox is selected.

The Aggregated Constraint checkbox is selected for the key figures in the target if it is selected in the
source as well.
7. Check that the key figures assigned to the versions are version­specific key figures.

If the Version­Specific Master Data checkbox is selected, all key figures assigned to the version must be
version­specific.
8. Check the existing data records and upload data again if necessary.

If the time profile and related time periods in the source planning area and the time profile and the related
time periods in the target planning area are not identical, you need to update the existing key figure data
records or upload the data again.

Model Configuration Guide


306 PUBLIC Copy Options for Planning Areas
19 Restore Active Instance

The restore active instance option enables you to reinstate the active instance of your model entities after
changing them.

Use

You use the restore active instance option when you have a model entity that has been activated and has
changed since, that is, it has both an active and an inactive instance. In such a case, if you select the restore
active instance option, it deletes the inactive instance of your model entity and reinstates the active one. You
can also use this option to cancel the deletion of a model entity in pending deletion status.

The restore active instance option is available for planning areas, master data types, time profiles, planning
levels, and snapshot definitions. If you use this option on a planning area, it restores the following settings and
entities of the active instance:

● Planning area settings


● Planning area-attribute assignments

 Note

The active instances of attribute assignments in pending deletion status are reinstated.

● Time settings
● Planning levels
● Attributes as key figures
● Key figures
● Snapshot definitions
● Versions

Entities to Check After Restore Active Instance

In general, the restore active instance option can reinstate the active instance of the entities that have a status
and the settings that inactivate the planning area. The following entities of the planning area don’t have a
status:

● Planning operators
● Planning profiles

If these entities of the active planning area have changed and then you restore the active instance of the
planning area, you need to check if these entities and profiles are still consistent in the planning area. For more
information about the types of inconsistencies that may occur, see the Restore Active Instance After Copy
[page 308] section.

Model Configuration Guide


Restore Active Instance PUBLIC 307
Settings to Check After Restore Active Instance

There are changes that don’t inactivate the entity affected, therefore restoring the active instance of the entity
doesn’t revert the change. In these cases, you need to undo your changes manually.

The following changes don’t inactivate the planning area or the assignment status of the assigned entity:

● Description of the planning area


● The current period offset setting for the planning area
● Planning area attribute description of the assigned attribute
● Business meaning of the assigned attribute
● Attribute category of the assigned attribute

Changing the following settings doesn’t inactivate the key figure:

● Name and description of the key figure


● Hashtags
● Business meaning of the key figure
● Display settings for the key figure (eg. decimals, display as percentage, display format)

You can also change the following settings without inactivating the objects affected:

● Description of the master data type


● Name and description of the time profile
● Name of the time profile level
● Description of the planning level

19.1 Restore Active Instance After Copy

You can use the restore active instance option to reinstate certain items in the planning area after using the
replace copy options.

If you use the restore active instance option on a planning area after you have used the planning area as a copy
target for the replace existing or the replace existing including dependencies options, certain entities in the
planning area are no longer consistent. This is because certain entities in the planning area don’t have a status.
The Restore Active Instance After Replace Existing or Replace Existing Including Dependencies table describes
what happens with these elements if you restore the active instance of the planning area after copy.

Restore Active Instance After Replace Existing or Replace Existing Including Dependencies

Target Planning Area After Target Planning Area After


Source Planning Area Target Planning Area Copy Restore Active Instance

Snapshot operator is availa­ No snapshot operator is Snapshot operator is availa­ Snapshot operator is still
ble. available. ble. there, but its inactive key fig­
ures are deleted. As a result,
the snapshot operator won’t
work after activation.

Model Configuration Guide


308 PUBLIC Restore Active Instance
Target Planning Area After Target Planning Area After
Source Planning Area Target Planning Area Copy Restore Active Instance

No snapshot operator is Snapshot operator is availa­ Snapshot operator is deleted Snapshot operator is no lon­
available. ble. but still visible on the Manage ger available, but its key fig­
Planning Operators screen. ures are still in the database.

IO or COPY or KPI_PROFILE None of these operators is IO or COPY or KPI_PROFILE The operators remain as­
operator is available. available. operator is available. signed to the planning area.

None of these operators is IO or COPY or KPI_PROFILE None of these operators is None of these operators is
available. operator is available. assigned to the planning assigned to the planning
area. area.

Planning profile is available. No planning profile is availa­ Planning profile is available. Planning profiles are not de­
ble. leted from the database.

No planning profile is availa­ Planning profile is available. No planning profile is availa­ The planning profile is de­
ble. ble. leted.

To avoid such inconsistencies, always make sure that the configuration of these entities and profiles in the
source planning area is correct and you don’t need to reinstate the active instance of the target planning area. If
you have used the restore active instance option and ended up with inconsistencies that you can’t undo, please
contact SAP.

There are some settings in the planning area that don’t inactivate the planning area when you change their
active instance. Check these settings manually and make sure that they still meet your business requirements.
For a list of these settings, see the Restore Active Instance [page 307] section.

Model Configuration Guide


Restore Active Instance PUBLIC 309
20 Viewing Historical States of Modeling
Objects

In SAP Integrated Business Planning, historical states of various model entities are available for analysis and
comparison. The configuration state of model entities is automatically saved after each upgrade and states of
planning areas are also saved before copy and transport, and after each activation. Besides states, deltas are
automatically saved for each object when a change has been made to the object.

The Show History function allows you to view the various historical states saved for an object and thus to get an
understanding of how the object has changed over time.

The function is available in the Planning Areas, Master Data Types and Time Profiles apps. You can use it to view
the history of planning areas, master data types, and time profiles; and the change history of the following
planning area subobjects:

● Planning levels
● Key figures
● Versions

Procedure

You can view the history of a master data type, time profile or planning area as follows:

1. Select the object in the relevant app (Master Data Types, Time Profiles or Planning Areas app) and go to the
object details screen.
2. Click the Show History button.
3. In the dialog displayed, you can view the list of states saved for the object after major operations, such as a
copy, activation or upgrade.
4. By clicking a state hyperlink in the dialog, you can navigate to the list of deltas preceding and following the
state selected.
5. By clicking the row containing a state or delta in the dialog, you can get to the details screen for the
relevant historical state of the object.

For planning area subobjects (planning levels, key figures and versions), the Show History button calls up the
list of deltas that have been saved for the item selected, providing an object change history. You can select any
delta from the list to view its details.

Model Configuration Guide


310 PUBLIC Viewing Historical States of Modeling Objects
21 Setting Up Multilanguage Support for
Modeling Objects

Set up multilanguage support for your applications so that you can handle the supported modeling objects in
multiple languages. Enable the function, make the required settings and then upload the translations you’d like
to use in your applications.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

If you set up multilanguage support, the supported modeling object properties are displayed in the logon
language of your SAP IBP applications where translations are available. In cases when the relevant text isn’t
available in the logon language, the property is displayed in the default language. When editing the properties,
the default language is used.

Multilanguage settings are system specific, so you need to specify them for each of your systems.

The function is supported for the following objects:

● Key figures (name and description)


● Attributes (name and description)
● Planning area attributes (description)

 Note

SAP provides translations for some of its sample content, but for all other content you need to upload the
translations needed yourself.

Procedure

1. In the Multilanguage Support app, choose Turn On Multilanguage Support to enable the function.

Model Configuration Guide


Setting Up Multilanguage Support for Modeling Objects PUBLIC 311
 Caution

Once you’ve turned on multilanguage support, you can't turn it off in the application. If you still need to
disable it, please contact SAP.

2. When enabling the function, specify a default language and at least one additional language in the Set
Languagues dialog. All your existing entries are assigned to the language that you set as the default
language.

 Caution

You can change your language settings later using the Set Languages button; however, if translations
are already available in your system, such changes might result in a loss of data. For example, if you
remove a language from your selection, all the entries in that language are deleted. If you set a default
language that has some entries missing, there will be no basis for further translations for those entries.

3. Download available translations (recommended).


After setting up the function, the supported objects in the system are displayed in the Translations section.
You can download available translations for those objects in CSV format, and you can then use the CSV as
a basis for uploading further translations.
SAP provides translations for the supported modeling object properties that are included in its sample
planning models. If you have created your planning area by copying one of the sample planning models,
you can download translations for the properties in any of the languages supported by SAP IBP.
4. Upload translations for the supported object types.
Once you have downloaded a CSV containing available translations, you can add further entries to the CSV
file and upload them to the system. You can also compile your own CSV from scratch, but you should
always follow the same structure; for example, the header should contain the same column headers in the
specified order.
Please make sure that the following requirements are met:
○ The file should be a UTF-8 encoded CSV file.
○ The file size shouldn’t exceed 3 MBs and the file name should be no longer than 100 characters.
○ The file should use one of the following separators: comma (,), semicolumn (;), or TAB.
○ Translations for different object types should be uploaded in separate CSV files but translations for
several planning areas can be uploaded in the same file.
If your file doesn’t answer the above requirements, the upload doesn't take place and you are informed of
the fact in an error message.
If the upload does take place but any of the entries can’t be uploaded, you can view the details in the
Application Logs app.
Existing translations are not overwritten by empty entries in the uploaded file.

 Note

If you have enabled multilanguage support for your system and want to transport your model entities to
another system, please keep in mind the following:

● If multilanguage is supported in the target system, you need to make sure that the same language is
set as the default language in both systems, otherwise the transport fails. If the two systems have the
same default language set, all the translated content is transported along with the model entities.
● If multilanguage isn’t supported in the target system, only the entries in the default language are taken
over for the relevant object types.

Model Configuration Guide


312 PUBLIC Setting Up Multilanguage Support for Modeling Objects
● If you don’t have multilanguage support set up for your system, you can't transport your model entities
to a target system where multilanguage support is enabled.

Model Configuration Guide


Setting Up Multilanguage Support for Modeling Objects PUBLIC 313
22 Export and Import of Extension Items

Overview of extension items that can be exported and imported in a system landscape enabled for extensibility
development.

If your system landscape is enabled for extensibility development, the export and import of extension items is
based on the Adaptation Transport Organizer. You can create software collections, add extension items to
software collections, export and import software collections in your landscape, and check dependencies
between various extension items.

 Note

If your system landscape isn’t yet enabled for extensibility development, the transport of model entities is
based on the Change and Transport System in Application Server ABAP and you can continue to use the
Transport Model Entities app. If your system landscape is enabled for extensibility development and you
choose to start using the Export Software Collection and Import Collection apps, you won’t be able to
continue to use the Transport Model Entities app.

You can add the following extension items to a software collection and export and import them in your
landscape:

Model Configuration Guide


314 PUBLIC Export and Import of Extension Items
Area Extension Item

Model configuration A planning area with the following dependent entities:

● Planning levels
● Key figures
● Versions
● Planning operators

 Note
If you export a planning area, the export will include all
available planning operators:

● Planning operators assigned to the planning area


being transported
● Planning operators assigned to other planning
areas
● Planning operators not assigned to any planning
area

As a result, after the import has taken place, the target


system will contain the set of operators that are availa­
ble in the source system.

 Note
When you export a planning area, the following depend­
ent entities won’t be included automatically in the ex­
port and you have to select them manually:

● Attributes
● Master data types
● Time profiles

Model configuration Master data types with their attributes

Model configuration Lag-based snapshots

Analytics Analytics

Analytics Dashboard

Analytics Network visualization

Exception management Alert definitions

Exception management Alert overview

Model Configuration Guide


Export and Import of Extension Items PUBLIC 315
Area Extension Item

Identity and access management Business roles

 Note
The assignment of business roles to business users isn’t
exported along with the roles.

Identity and access management Attribute permissions

Identity and access management Permission filters

Cross applications Settings for change history

Cross applications ABC/XYZ segmentation profiles

User interface SAP Fiori launchpad pages

User interface SAP Fiori launchpad spaces

Demand-driven replenishment Demand-driven replenishment operator profiles

Driver-based planning Driver-based planning

Business network collaboration Data sharing plans

Demand planning Forecast models

Demand planning Forecast automation profiles

Demand planning Realignment projects

Time-series-based supply planning Time aggregation profiles

Time-series-based supply planning Forecast consumption profiles

Time-series-based supply planning S&OP operator profiles

Cross applications Copy operator profiles

End-to-end visibility Intelligent Visibility profiles

 Recommendation

We recommend that you create separate software collections for your extension items as follows:

● Attributes
● Time profiles
● Shared master data types

Model Configuration Guide


316 PUBLIC Export and Import of Extension Items
 Note

Depending on the complexity of your data model, you could include attributes, time profiles, and
shared master data types in one collection.

● Master data types and planning areas in one collection per planning area
● Forecast models and operator profiles in one collection per planning area
● Permission filters in one collection per planning area
● Business roles and attribute permissions
● SAP Fiori launchpad pages and spaces

In addition, create software collections per organizational unit, business process, project, project phase,
and so on. This will help you export and import different collections independently. For example, if you have
a demand configuration team, you must create software collections so that the team can make changes to
demand forecast models, demand planning area, and demand SAP Fiori launchpad pages and spaces. You
can only export collections, and once a collection is exported, you can’t move items from one collection to
another. If extension items for two different teams are mixed in one collection, the two teams will have to
align on the timelines for the export and import of the collection.

Export and Import of Multilanguage Content

To ensure that multilanguage content is exported and imported for the relevant modeling objects,
multilanguage support needs to be set up for both the source and the target system, and the same language
needs to be set as the default language. If the default language is different, the export and import will fail.

If multilanguage isn’t supported in the target system, only the entries in the default language are taken over for
the relevant object types, even if there are entries in other languages in the source system.

If multilanguage isn’t supported in the source system, you can’t import your model entities into a target system
where multilanguage support is enabled.

For more information about multilanguage support, see Setting Up Multilanguage Support for Modeling
Objects [page 311].

Related Information

Apps for Export and Import of Extension Items

Model Configuration Guide


Export and Import of Extension Items PUBLIC 317
22.1 Export and Import of Extension Items in Your System
Landscape

Overview of the export and import of extension items in different system landscapes enabled for extensibility
development.

If your system landscape is enabled for extensibility development, the export and import of extension items is
based on the Adaptation Transport Organizer. The following rules apply:

● An extensibility development system, which is a system used to create extension items, is always the
starting point of a multiple system landscape. Extension items can only be exported from the extensibility
development system.
● The production system is always one of the end points of a multiple system landscape.
● The extensibility development system can’t be changed. For example, in a two-system landscape, the
extensibility development system is A and the production system is B. A test system C can be added in the
landscape only between system A and B. If the landscape needs to be reduced later, the only system that
can be removed is test system C.
● Any manual repairs of extension items that are exported will be overwritten by the next import. No export
of repairs is allowed from any system other than the extensibility development system.
● It’s possible that your system landscape includes a development system, a test system that is set up as the
extensibility development system, and a production system. Extension items can then only be exported
from the test system.

Two-System Landscape

The following graphic shows a system landscape with a test system that is used to create and export extension
items. The extension items are then imported into the production system.

The following graphic shows a system landscape with a test system that is used to create and export extension
items. The extension items can then be imported in the production system and the training system. No exports
are possible from the training system.

Model Configuration Guide


318 PUBLIC Export and Import of Extension Items
Three-System Landscape

The following graphic shows a system landscape with a development system that is used to create and export
extension items. The extension items are imported into the test system. After a successful test of the imported
extension items in the test system, the export from the development system can be forwarded to allow the
import into the production system.

The following graphic shows a system landscape with a development system that is used to create and export
extension items. The extension items are imported into the test system. After a successful test of the imported
extension items in the test system, the export from the development system can be forwarded to allow the
import into the production system. Note that only the extension items that are created in the development
system are imported into the production system. Any extension items that are created in the test system aren’t
part of the import into the production system.

The following graphic shows a system landscape with a development system that is used to create and export
extension items. The extension items are imported into the test system and the training system. After a
successful test of the imported extension items in the test system, the export from the development system

Model Configuration Guide


Export and Import of Extension Items PUBLIC 319
can be forwarded to allow the import into the production system and the second training system. No exports
are possible from the training systems.

Four-System Landscape

The following graphic shows a system landscape with more than one test systems and training systems. The
export and import process works in the same way as described for a three-system landscape.

22.2 Best Practices for Exporting Planning Models

Best practices for exporting planning models in a two-system landscape that is enabled for extensibility
development.

 Recommendation

We recommend the following approach for setting up planning areas and exporting them from the test
system and importing them into the production system.

Carry out configuration tasks and user testing in the test system that is enabled for extensibility
development. For these activities, you require at least two planning areas in the test system as follows:

● Configuration planning area for ongoing configuration work


● Consolidation planning area for consolidating the configuration changes and for initial integration and
unit testing (which is typically performed by consultants and expert business users)

Model Configuration Guide


320 PUBLIC Export and Import of Extension Items
Planning Areas in the Test System

Provided that no major changes are expected to the master data structure, these planning areas can share
master data types.

The consolidation planning area typically has a smaller data set than its counterpart in the production system.
Nonetheless, the test data set must be representative of actual production data. However, the consolidation
planning area can contain a copy of the full production system data set. Whether the consolidation planning
area has a full or reduced data set depends on the size of the test system and on customer requirements.
Consolidation of changes from the configuration planning area to the consolidation planning area is done in the
Planning Areas app by selecting Copy Replace Existing .

Once you have completed the configuration and user testing, you can export the consolidation planning area
using the Export Software Collection app. You can then import the planning area into the production system
using the Import Collection app.

 Caution

Each time a planning area is exported, the entire planning area and all related configuration must be
exported.

We recommend that you do regular exports and imports each time you change and activate a planning
area. Do not collect changes of different kinds in one software collection, for example, removing an
attribute from a master data type, changes in key figure definitions, and adding attributes to a master data
type. Having different kinds of changes in one software collection may lead to issues in activation in the
target system, because certain changes must be executed in a given sequence.

Make sure that in the target system you perform the activation of the model entities in the following order:

1. Time profiles
2. Master data types
3. Planning areas

Model Configuration Guide


Export and Import of Extension Items PUBLIC 321
In projects that require a lot of integration work (for example, development in SAP Cloud Integration for data
services), you have to keep data sets for application consultants and integration consultants separate. In such
cases, we recommend that you use an additional, independent data integration planning area for data
integration activities. Ideally, this planning area should have its own master data types. With this approach, you
can proceed with development and testing of integration content without interfering with configuration tasks.
Note that if you use a separate data integration planning area in the integration service, you will require
additional effort to change the test integration tasks to the final tasks.

Best Practices: Exporting and Importing Planning Areas to the Production System

Related Information

Activating Planning Models [page 242]

Model Configuration Guide


322 PUBLIC Export and Import of Extension Items
22.3 Exporting Planning Areas in a 2-Phase Configuration
Project

Steps for exporting planning areas in a two-system landscape enabled for extensibility development in a two-
phased configuration project where changes to phase 1 configuration and configuration settings for phase 2
are made in parallel.

Prerequisites

There is a configuration and a consolidation planning area for phase 1 in the test system. Phase 1 is complete,
and you have exported the consolidation planning area for phase 1 from the test system and imported it into
the production system.

Context

SAP Integrated Business Planning projects are usually implemented in a phased approach, that is, the
implementation team performs the following two activities in parallel:

● Make configuration changes for the next phase of the project.


● Make minor maintenance-related changes in the active planning area for phase 1 that is actively used by
business users.

For such a phased implementation, at least two planning areas are needed for each phase in the test system:
one for configuration and another one for consolidation.

Procedure

1. Create the planning areas for phase 2 in the test system.

Model Configuration Guide


Export and Import of Extension Items PUBLIC 323
Creating the Planning Areas for Phase 2

a. In the Planning Areas app, using the create new with dependencies copy option, create a copy of the
consolidation planning area for phase 1.

A configuration planning area and all its related master data types are created for phase 2.
b. Using the create new copy option, create a copy of the configuration planning are you just created for
phase 2.

A consolidation planning area is now available for phase 2.


c. Activate the consolidation planning area for phase 2.
2. Make the changes for phase 2 of the project.

Changes can include creating additional attributes, master data types, or key figures.

a. Make the configuration changes in the configuration planning area for phase 2.
b. Using replace existing copy option, copy these configuration changes to the consolidation planning
area for phase 2.
c. Activate the consolidation planning area.
3. Make any minor configuration changes needed for phase 1.
a. Make the configuration changes in the configuration planning area for phase 1.
b. Using replace existing copy option, copy these configuration changes to the active consolidation
planning area for phase 1.
c. Activate the consolidation planning area for phase 1.
d. Using the Export Software Collection app, export the active consolidation planning area and import it
into the production system.
4. Repeat the configuration changes you made to the planning area for phase 1 manually in the configuration
planning area for phase 2.
5. Using replace existing copy option, copy these configuration changes to the consolidation planning area for
phase 2.
6. Activate the consolidation planning area for phase 2.

Model Configuration Guide


324 PUBLIC Export and Import of Extension Items
7. Using replace existing including dependencies copy option, copy the consolidation planning area for phase
2 to the configuration planning area for phase 1.
8. Using replace existing copy option, copy the phase 1 configuration planning area to the consolidation
planning area for phase 1.

Consolidating the Planning Areas for Phase 1 and Phase 2


9. Activate the resulting consolidation planning area for phase 1.
10. Using the Export Software Collection app, export the planning area and import it into the production
system.

Model Configuration Guide


Export and Import of Extension Items PUBLIC 325
23 Transport of Model Entities

 Note

If your system landscape is not enabled for extensibility development, the transport of model entities is
based on the Change and Transport System in Application Server ABAP. If your system landscape is
enabled for extensibility development, the export and import of extension items is based on the Adaptation
Transport Organizer. For more information, see Export and Import of Extension Items [page 314].

Prerequisites

Make sure that the following settings are made in your systems:

1. You have set up a transport route between the two SAP Integrated Business Planning systems involved.
2. Both in the source and the target systems, check, and if required, change the values of the ATTRIBUTES
and TARGET_GROUP parameters of the TRANSPORT parameter group. To do so, open the Global
Configuration app.
○ TARGET_GROUP
Defines the transport layer. The default value is /IBP_DMT/. In case you use a different transport layer,
enter it as the value for the TARGET_GROUP parameter.
○ ATTRIBUTES
Transport requests may require one or more attributes, depending on the setup of your system.
Define the attribute in the source system by entering a value for the ATTRIBUTES parameter. Use the
following syntax: <attribute1>="<value1>";<attribute2>="<value2>". The default value of
this parameter is ADD-ON=”SCMIBP”.

Transportable Model Entities

You can transport the following model entities and parts of the planning model:

● A planning area with all its dependent entities:


○ Attributes
○ Master data types
○ Time profile
○ Planning levels
○ Key figures
○ Versions
○ Planning operators

 Note

If you transport a planning area, the transport request will include all available planning operators:

Model Configuration Guide


326 PUBLIC Transport of Model Entities
○ Planning operators assigned to the planning area being transported
○ Planning operators assigned to other planning areas
○ Planning operators not assigned to any planning area
As a result, after the transport has taken place, the target system will contain the set of operators
that are available in the source system.

● A master data type with its attributes


● A forecast model
● A permission filter
● A data sharing plan
● An ABC/XYZ segmentation profile
● An S&OP operator profile
● A forecast automation profile
● A time aggregation profile
● A forecast consumption profile
● A lag-based snapshot
● A realignment project
● The Copy Operator (Advanced)
● Analytics
● Demand-driven replenishment
● An alert definition
● An alert overview
● A dashboard
● A driver planning view for driver-based planning
● An attribute permission
● An intelligent visibility profile
● Network visualization

If you want to transport business roles, follow the steps below:

1. Log into the source system.


2. Launch the Maintain Business Roles app under Identity and Access Management.
3. Select the roles you want to transport, and choose Download.
4. Import the file you have downloaded to the target system.

 Note

The assignment of roles to business users are not transported along with the roles.

Transporting Multilanguage Content

To ensure that multilanguage content is transported for the relevant modeling objects, multilanguage support
needs to be set up for both the source and the target system, and the same language needs to be set as the
default language. If the default language is different, the transport fails.

If multilanguage is not supported in the target system, only the entries in the default language are taken over
for the relevant object types, even if there are entries in other languages in the source system.

Model Configuration Guide


Transport of Model Entities PUBLIC 327
If multilanguage is not supported in the source system, you cannot transport your model entities to a target
system where multilanguage support is enabled.

For more information about multilanguage support, see Setting Up Multilanguage Support for Modeling
Objects [page 311].

23.1 Exporting a Model Entity from the Source System

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

The planning area, the master data type, and the data sharing plan that you want to transport must be active.
There is no such requirement for forecast models and for visibility filters.

Steps

1. Log on to SAP Integrated Business Planning in the source system.


2. Launch the Transport Model Entities app by clicking the corresponding tile on the launchpad.
3. Select the model entity you want to transport. If you want to transport a complete planning model, you
select it by selecting the planning area.
4. Choose Export.
The system creates and releases a transport request that contains the entity you selected, and, if
applicable, the dependent entities of that entity. For example, if you select a master data type, its attributes
are also included in the transport request.
The transport runs in the background. Refresh the screen to see the progress. You can check the export
information and the infrastructure logs by choosing the Exports tab. To see details about the progress and
any errors that may occur, go to the Application Logs app.

23.2 Importing a Model Entity into the Target System

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Model Configuration Guide


328 PUBLIC Transport of Model Entities
Steps

1. The import of the transport request takes place according to the configuration of your system
(automatically or manually, using the Change and Transport System of the Application Server ABAP)
2. To check the status of the import, log on to the launchpad of the target SAP Integrated Business Planning
system
3. Launch the Transport Model Entities app. Look for the model entity you previously exported from the
source system. Select the entity type, then the model entity, then choose the Imports icon to display the
list of previous imports. You can also display the log information for the completed imports.
4. After a successful import, activate the planning area.
5. Optional: If you have transported a planning area in which you use change history and you have selected
any sources of change in the Settings for Change History app for this planning area, you need to
synchronize the sources of change in the Settings for Change History app after you have activated the
planning area. This is to ensure that the sources of change are still tracked after activation.

Related Information

Settings for Change History

23.3 Best Practices for Transporting Planning Models

 Recommendation

SAP recommends the following approach for setting up planning areas and moving them from the test
system to the production system.

Carry out configuration tasks and user testing in the test system. For these activities, you require at least
two planning areas in the test system:

● Configuration planning area for ongoing configuration work


● Consolidation planning area for consolidating the configuration changes and for initial integration and
unit testing (which is typically performed by consultants and expert business users)

Model Configuration Guide


Transport of Model Entities PUBLIC 329
Planning Areas in the Test System

Provided that no major changes are expected to the master data structure, these planning areas can share
master data types.

The consolidation planning area typically has a smaller dataset than its counterpart in the production system.
Nonetheless, the test dataset must be representative of actual production data. However, the consolidation
planning area can contain a copy of the full production system dataset. Whether the consolidation planning
area has a full or reduced dataset depends on the size of the test system and on customer requirements.
Consolidation of changes from the configuration planning area to the consolidation planning area is done in the
Planning Areas app by selecting Copy Replace Existing .

Once you have completed configuration and/or user testing, you can export the consolidation planning area
using the Transport Model Entities app.

The exported planning area can then be imported into production system using the steps outlined above.

 Caution

Each time a planning area is exported, the entire planning area and all related configuration are
transported.

SAP recommends that you do regular transports each time you change and activate a planning area. Do
not collect changes of different kinds in one transport request – for example, removing an attribute from a
master data type, changes in key figure definitions, and adding attributes to a master data type. Having
different kinds of changes in one transport request may lead to issues in activation in the target system,
because certain changes must be executed in a given sequence.

Make sure that in the target system you perform the activation of the model entities in the following order:

1. Time profiles
2. Master data types
3. Planning areas

In projects that require a lot of integration work (for example, development in SAP Cloud Integration for data
services), you have to keep data sets for application consultants and integration consultants separate. In such

Model Configuration Guide


330 PUBLIC Transport of Model Entities
cases, SAP recommends that you to use an additional, independent data integration planning area for data
integration activities. Ideally, this planning area should have its own master data types. With this approach, you
can proceed with development and testing of integration content without interfering with configuration tasks.
Note that if you use a separate data integration planning area in the integration service, you will require
additional effort to change the test integration tasks to the final tasks.

Best Practices: Transporting Planning Areas to Production System

Related Information

Activating Planning Models [page 242]

23.4 Transporting Planning Areas in a 2-Phase Configuration


Project

Make changes to phase 1 configuration and make configuration settings for phase 2 in parallel.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the

Model Configuration Guide


Transport of Model Entities PUBLIC 331
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

There is a configuration and a consolidation planning area for phase 1 in the test system. Phase 1 is complete,
and you have transported the consolidation planning area for phase 1 from the test system to the production
system.

Context

SAP Integrated Business Planning projects are usually implemented in a phased approach, that is, the
implementation team does the following two activities in parallel:

● Make configuration changes for the next phase of the project.


● Make minor maintenance-related changes in the active planning area for phase 1 that is actively used by
business users.

For such a phased implementation, at least two planning areas are needed for each phase in the test system:
one for configuration and another one for consolidation.

Procedure

1. Create the planning areas for phase 2 in the test system.

Creating the Planning Areas for Phase 2

a. Using the create new with dependencies (formerly known as advanced copy: create new) copy option,
create a copy of the consolidation planning area for phase 1.

A configuration planning area and all its related master data types are created for phase 2.

Model Configuration Guide


332 PUBLIC Transport of Model Entities
b. Using the create new (formerly known as simple copy: create new) copy option, create a copy of the
configuration planning are you just created for phase 2.

A consolidation planning area is now available for phase 2.


c. Activate the consolidation planning area for phase 2.
2. Make the changes for phase 2 of the project.

Changes can include creating additional attributes, master data types, or key figures.
a. Make the configuration changes in the configuration planning area for phase 2
b. Using replace existing (formerly known as simple copy: overwrite existing (replace)) copy option, copy
these configuration changes to the consolidation planning area for phase 2.
c. Activate the consolidation planning area.
3. Make any minor configuration changes needed for phase 1.
a. Make the configuration changes in the configuration planning area for phase 1.
b. Using replace existing (formerly known as simple copy: overwrite existing (replace)) copy option, copy
these configuration changes to the active consolidation planning area for phase 1.
c. Activate the consolidation planning area for phase 1.
d. Using the Transport Model Entities app, transport the active consolidation planning area to the
production system.
4. Repeat the configuration changes you made to the planning area for phase 1 manually in the configuration
planning area for phase 2.
5. Using replace existing (formerly known as simple copy: overwrite existing (replace)) copy option, copy
these configuration changes to the consolidation planning area for phase 2.
6. Activate the consolidation planning area for phase 2.
7. Using replace existing including dependencies (formerly known as advanced copy: select existing) copy
option, copy the consolidation planning area for phase 2 to the configuration planning area for phase 1.
8. Using replace existing (formerly known as simple copy: overwrite existing (replace)) copy option, copy the
phase 1 configuration planning area to the consolidation planning area for phase 1.

Consolidating the Planning Areas for Phase 1 and Phase 2

Model Configuration Guide


Transport of Model Entities PUBLIC 333
9. Activate the resulting consolidation planning area for phase 1.
10. Using the Transport Model Entities app, transport the planning area to the production system.

Model Configuration Guide


334 PUBLIC Transport of Model Entities
24 Emergency Access to Production System

Manual changes to configuration in a production system and often even in a test system should be avoided to
ensure the integrity of the planning area being used productively or tested. However, in exceptional
circumstances you may need to configure and activate planning models in a production system. For this
purpose, a special business role can be assigned to your business user that provides you with temporary
access to the production system. This business role should have the Planning Model and Planning Model
Activation business catalogs assigned to it.

 Note

● SAP recommends that emergency access is used only after it has been decided that the system is in an
exception state (also known as a firecall state), and that the business uses are unassigned after all
updates have been completed.
● Most configuration activities require model activation and may have an impact on runtime user
interfaces or data integration, for example.

Model Configuration Guide


Emergency Access to Production System PUBLIC 335
25 Reason Codes

Reason codes are a set of tags that you can use to keep track of decisions and changes made throughout the
planning process.

Reason codes are available in various areas throughout IBP: In the IBP Excel add-in, in the Web-Based Planning
app, and in certain application job templates. They can be viewed in change history and can be shared in SAP
Jam.

A user can enter a reason code when saving data in the planning view using the Save Data button or when
scheduling an application job. If your organization uses SAP Jam, users can share the reason code and
information about the change and SAP Jam. If your organization uses change history, reason codes are saved
for changes to change-history-enabled key figures they apply to and can be viewed in the change history views.

You can create your own reason codes in the Reason Codes app. Some useful reason codes are provided with
SAP Integrated Business Planning.

25.1 Creating Reason Codes

Use the Reason Codes app to create reason codes.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Procedure

1. Open the Reason Codes app.


2. Create a new reason code.
3. In the popup window provide the details for the reason code.
4. Save your changes.

Model Configuration Guide


336 PUBLIC Reason Codes
26 Global Configuration

Global configuration lets you maintain application-level defaults.

The global configuration parameters are organized in parameter groups. The following groups are available in
the system:

Group Area Defaults Relate To

ANALYTICS Analytics: charts and dashboards

COLLABORATION SAP Jam integration

FORECAST Statistical forecasting

HOME_PAGE Dashboards

INTEGRATION Data integration

INVENTORY Inventory optimization

MASTER_DATA_OP Master data

OUTPUT_MANAGEMENT Output management

PLAN_VIEW Microsoft Excel planning views

PLCNTRL Planning controller for simulations

REALIGNMENT Data realignment

RESPONSE Order-based planning

SCENARIO Versions

SOP Time-series-based supply planning

TRANSPORT Transport request parameters

SCHEDULING Application jobs

 Recommendation

We recommend that you maintain the following defaults when you install your system:

● Planning area for data integration and dashboards


● Time profile for data integration

Model Configuration Guide


Global Configuration PUBLIC 337
26.1 Managing Global Configuration Parameters

Use the Global Configuration app to change the values of global configuration parameters.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Once you have set up your system, you want to change the number of days an alert is snoozed when you select
the Snooze Indefinitely option.

 Note

SAP delivers default values for some global configuration parameters. You can change the default value
based on your business requirements. If you want to delete the value that you provided, use the Reset to
Default option.

Procedure

1. In the Global Configuration app, find the SNOOZE_NUM_OF_DAYS parameter in the ANALYTICS parameter
group.
2. Select the parameter and choose Edit.
3. In the Value field, specify the new value.
4. Optional: Provide a reason for the change.
5. Save your changes.

26.2 Global Configuration Parameters

In the Global Configuration app, you set values for the parameters that control various features of the IBP
applications. The following table lists the global configuration parameters in the system that you can set in line
with your business requirements.

Model Configuration Guide


338 PUBLIC Global Configuration
 Note

There are also technical parameters in the system. Contact SAP to request to set a technical parameter in
your system.

Parameter Group Parameter Name Default Value Parameter Description

ANALYTICS CHARTS_PUBLIC TRUE All charts are private by default. If set to TRUE,
charts are public.

ANALYTICS DASHBOARDS_PUBLIC TRUE All dashboards are private by default. If set to


TRUE, dashboards are public.

ANALYTICS MAX_ATTR_VALUES 300 Represents the maximum number of records dis­


played in the drilldown lists for alerts. For exam­
ple, if you select a time period on a daily level,
you get 365 lines for each year of data.

ANALYTICS MAX_RECORDS Limits the number of records that are retracted


from the SAP HANA database when alerts gener­
ate a SQL string. Unlike the parameter
MAX_ALERT_PER_SUBSCRIPTION, this parame­
ter controls the number of records coming from
the SAP HANA DBs and not just the number of
records displayed in the Analytics chart on the
UI.

ANALYTICS MAX_ALERTS_PER_SUBS 2 Limits the number of alerts that are displayed in


CRIPTION the custom alerts monitor.

If an alert is not defined correctly, it could gener­


ate a large number of alerts (one subscription
can lead to millions of alerts). This parameter
limits the number of alerts retrieved for each
subscription and therefore prevents performance
problems. This parameter does not limit the
number of records retracted from SAP HANA.

ANALYTICS SNOOZE_NUM_OF_DAYS 5 Defines the number of days an alert is snoozed.

Model Configuration Guide


Global Configuration PUBLIC 339
Parameter Group Parameter Name Default Value Parameter Description

ANALYTICS BUFFERING TRUE Controls the buffering of data in the Analytics –


Advanced, Dashboards – Advanced, and Custom
Alerts apps.

To help improve performance, the data shown in


a chart is only updated when the chart is re­
freshed manually. Otherwise, the data is read
from a cache if it is available. The time of the last
refresh is then shown as a relative time. For ex­
ample, it is shown as 5 minutes ago in a chart or
for a custom alert subscription.

This is achieved by buffering the chart data. By


default, the BUFFERING parameter is set to
TRUE. This is the recommended setting. If re­
quired, you can also change this setting to
FALSE, which disables the buffering, but this is
not recommended.

We recommend that you use the default setting.

ANALYTICS OLD_VERSION TRUE This parameter was used in 1705 to set whether
the older versions of the Analytics and
Dashboard apps were available. If set to TRUE,
the older apps displayed in the launchpad. If set
to FALSE, the Analytics – Advanced and
Dashboard – Advanced apps displayed.

Navigation from the Monitor Custom Alerts app


to one of the two analytics app versions de­
pended on the global parameter OLD_VERSION.
When set to true, the navigation from monitor
custom alerts triggered the Analytics app, when
set to false, the navigation triggered the Analytics
– Advanced app.

Because the older versions of the Analytics and


Dashboard were discontinued in 1708, this pa­
rameter is no longer needed as of 1708.

ANALYTICS AUTO_REFRESH TRUE This parameter is used to improve performance.


When this parameter is set to FALSE, records are
read from the database instead of using the de­
fault buffering mechanism.

ANALYTICS COUNT_ALERT_TILE TRUE This parameter is used to count the number of


alerts and display the count on the Alerts tiles. If
the parameter is set to FALSE, N/A is displayed
instead of the count.

Model Configuration Guide


340 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

CHANGE_HIST MAX_RESULT_LIMIT See default Specifies the row limit for the change history re­
value for
sults shown in the IBP Excel add-in and the
MAX_RESULT_R
OW_SIZE Change History app.

By default, the row limit for change history re­


sults depends on the MAX_RESULT_ROW_SIZE
global configuration parameter. However, if you
want to control the row limit for change history
independently from this parameter, for example
if you want fewer rows to be displayed for change
history than are defined by the
MAX_RESULT_ROW_SIZE global configuration
parameter, you can use the MAX_RESULT_LIMIT
global configuration parameter. If this global con­
figuration parameter is set, the
MAX_RESULT_ROW_SIZE global configuration
parameter will not be taken into account for
change history.

To set the MAX_RESULT_LIMIT global configura­


tion parameter, enter the maximum number of
rows you want to have displayed for change his­
tory.

Note that the use of this global configuration pa­


rameter results in a longer runtime when you
query data from the database. However, the ad­
vantage is that the use of this parameter helps
ensure that the expected number of rows as de­
fined in this parameter are returned.

COLLABORATION COLLABORATION_ENABL False Flag that enables/disables collaboration via SAP


ED Jam.

DEMAND_SENSING DISABLE_BASEBAL_FOR NO The default NO value means that baseline de­


_NEGBIAS mand balancing is permitted to reduce the
sensed demand values for the weeks with pre­
dicted negative bias.

If the value is set to YES, baseline demand bal­


ancing will not reduce the sensed demand values
for the weeks with predicted negative bias.

Model Configuration Guide


Global Configuration PUBLIC 341
Parameter Group Parameter Name Default Value Parameter Description

DISAGGREGATION NUMBER_OF_PROCESSIN 5 Running the DISAGG operatort can potentially


G_PACKAGES consume a lot of system memory and cause
time-out situations depending on a number of
factors, such as key figure configuration and the
aggregation level chosen.

You can use this global configuration parameter


to split the DISAGG operator run into packages,
which might improve system performance and
prevent time out situations.

To disable packaged processing, enter 1.

For more information, see Packaged Processing


of the DISAGG Operator [page 231].

3
DISAGGREGATION PARALLEL_PROCESSES_ During the execution of a copy operator profile
CLEAR with key figure selections where the option Clear
Values is set to Yes and no source key figure is
specified, this parameter determines how many
parallel threads are used for processing. If the
value is set to 0 or 1, no parallel execution is trig­
gered. If you enter a higher value than the de­
fault, you risk running into out-of-memory situa­
tions. The maximum you can enter is 5.

1
DISAGGREGATION PARALLEL_PROC­ During the execution of a copy operator profile
ESSES_BASE_COPY with key figure selections where the selected
copy level consist of the root attributes of the
base planning level of the source and target key
figure (base level copy), this parameter deter­
mines how many parallel threads are used for
processing. The maximum value you can enter is
3. If you set the value to 0 or 1, no parallel execu­
tion is triggered.

Model Configuration Guide


342 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

DISAGGREGATION MIN_RECORDS_FOR_MEM 10000000 Running the DISAGG operator runs that can po­
ORY_WARNING tentially consume a lot of system memory de­
pending on a number of factors, such as key fig­
ure configuration, an the aggregation level
chosen, for example. The system therefore dis­
plays a warning in the log for the DISAGG opera­
tor in the following cases:

● Data for more than one period is changed.


● Disaggregation changes more than <n> re­
cords on base planning level.

You can define the threshold for the number of


warnings (<n>) in the DISAGG operator by enter­
ing an appropriate value for this global configura­
tion parameter.

For more information, see Packaged Processing


of the DISAGG Operator [page 231].

FLEXQUERY MAX_RECORDS 2000 Limits the number of records in the result set re­
turned by the /IBP/EXTRACT_ODATA_SRV
OData service when querying data from IBP.

You can use this global configuration parameter


to improve the performance of the service.

FLEXQUERY PLANNINGAREA You can use this global configuration parameter


to define which planning areas you want to ex­
pose to the /IBP/EXTRACT_ODATA_SRV OData
service.

List the relevant planning areas separated by


commas.

FORECAST FORECAST_ESCAPENULL 1 Adds and initializes the value of the forecast in­
put key figure to a small value when historical
data is missing for some periods. Setting this
value to 0 will not have this effect.

FORECAST PARAM_OPTIMIZATION_ 10 Time limit for the optimization process per­


MAX_TIME formed when the automated exponential
smoothing algorithm is selected in a forecast
model. The time unit is second and the value
should be larger than zero.

Model Configuration Guide


Global Configuration PUBLIC 343
Parameter Group Parameter Name Default Value Parameter Description

FORECAST HISTORY_MIN_VALUE 0.000 You have to enter a value for


HISTORY_MIN_VALUE if the history data is NULL,
that is, unavailable. If no entry is made for this
parameter, the default 0.000 is used. This pa­
rameter is used only if FORECAST_ESCAPENULL
has a value other than 0. You have to enter this
parameter as a numerical value with integer or
decimal format.

FORECAST MIN_FORECAST -9999999 If you are using the double or triple exponential
smoothing method, forecast values may some­
times be negative. If required, you can prevent
such negative values from being returned by set­
ting this parameter, for example, to 0. Any nega­
tive values are then changed to the value entered
for this parameter. If you do not specify this pa­
rameter, negative values are returned, the lowest
possible value being the default value -9999999.

FORECAST FCSTASSIGN_SUPPR_RC None Controls whether a user can select a reason code
_COMMENT and make a comment when changing a forecast
model assignment. If the value is TRUE, the list of
available reason codes and the comment field
are not displayed on the UI.

FORECAST CREATE_MISSING_PLAN X During the background forecasting it can happen


NING_OBJECT that a planning object that has sales history is
not yet created on the level where the forecast is
stored. In such a case the missing planning ob­
ject is created automatically on the base plan­
ning level of the output key figure. By default, this
function is active. Accordingly, the default value
is set to X.

FORECAST FCSTASSIGNMENT_LOG_ 10 During the maintenance of forecast model as­


MAX_TIME signments the changes are recorded (who
changed the assigned forecast model, old value,
new value, reason code, comment). The parame­
ter describes how long the changes are kept for
traceability purposes. It takes an integer value
that describes the number of years that the
changes are kept.

FORECAST DETAILED_LOG NULL During the background forecasting a detailed log


can be generated showing additional messages
for each planning object that was processed. To
enable it, set the parameter to X.

Model Configuration Guide


344 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

SEASONALITY_TEST_TH
FORECAST 0.3 The autocorrelation threshold from which a sea­
RESHOLD
sonality pattern should be considered by the au­
tomated exponential smoothing and auto-
ARIMA/SARIMA algorithms.

PARAM_OPTIMIZATION_
FORECAST 100 The maximum number by which the automated
MAX_ITERATION
exponential smoothing algorithm should repeat
the optimization process during a forecasting
job.

NUM_OF_CHANGE_POINT
FORECAST 10 The number of the most recent change points
S_CONSIDERED
that forecasting algorithms should leverage when
the Consider Change Points option is selected for
them.

FORECAST DISABLE_HYBRID_GBDT NULL Controls whether the gradient boosting of


decision trees algorithm should run on historical
data with trends. If you keep the default value,
you allow the use of the hybrid method for calcu­
lations and, therefore, historical data with trend
will be considered by the algorithm.

DEMAND_SENSING CALENDAR_1_FOR_WORK YES Controls whether 1 should represent a workday


DAY or a holiday in the calendar key figure. If the de­
fault YES value is used, 1 represents a workday
and 0 a holiday. If the parameter is set to NO, 1
represents a holiday and 0 a workday.

HOME_PAGE DEFAULT_PLAN_AREA NULL Indicates the default planning area to view on the
SAP Integrated Business Planning dashboards.
This parameter also represents the default plan­
ning area for the user interface of SAP Integrated
Business Planning add-in for Microsoft Excel.

Model Configuration Guide


Global Configuration PUBLIC 345
Parameter Group Parameter Name Default Value Parameter Description

INTEGRATION ENABLE_SNAPSHOT_KFS NO You can use this global parameter if you want to
integrate snapshots from an external system or if
you want original snapshots to be supported in
the Copy Version and Delete Version operator.

Integration of original snapshots: By default,


snapshot key figures of type Original are not
available for upload using data integration. Using
this parameter, you can determine whether val­
ues for snapshot key figures can be imported to a
given planning area using the data integration
process. Typically, this is only necessary in ex­
ceptional cases, for example, if you have been
working with an external system before and you
now want to migrate the snapshot data from this
external system into your IBP system.

Because you would typically upload snapshots


only one time and would not upload them on a
regular basis, we recommend that you change
the parameter value back to the default value af­
ter you have uploaded the snapshot data and re-
activate the planning area for the change to take
effect.

Use in Copy Version and Delete Version opera­


tor: By default, snapshot key figures of the
Original type are neither supported in the Copy
Version operator nor in the Delete Version opera­
tor. To enable snapshot key figures for these op­
erators, you need to add the corresponding plan­
ning area to this global configuration parameter
and reactivate that planning area.

You enter the parameter value as a list of plan­


ning areas, separated by commas. For example, if
the parameter value is PLAREA1, PLAREA2,
PLAREA3, then the snapshot key figures are
available for upload using data integration in the
planning areas PLAREA1, PLAREA2, and
PLAREA3.

Model Configuration Guide


346 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

INTEGRATION KF_UPLOAD_EXT_AT_BA Controls whether you can upload key figure data
SE_LEVEL_ONLY at an aggregated time level from an external
source, such as SAP Cloud Integration for data
services. Enter x or X as the value to restrict the
upload of key figure data to uploading at the base
planning level only, and with that, disable time
disaggregation.

INTEGRATION KF_UPLOAD_INT_AT_BA Controls whether you can upload key figure data
SE_LEVEL_ONLY at an aggregated time level in the Data
Integration Jobs app. Enter x or X as the value to
restrict the upload of key figure data to uploading
at the base planning level only, and with that, dis­
able time disaggregation.

INTEGRATION KF_UPLOAD_NO_PROPOR You can use this parameter to disable propor­


TIONAL_DISAGG tional disaggregation when uploading key figure
values to the system.

If you set the value to X or x, No Proportional


Disagfregation is used as Proportionality, that is,
the key figure values are disaggregated accord­
ing to their disaggregation mode (Equal or Copy).
If a period weight factor is defined, it is consid­
ered.

INTEGRATION STAGCLEANUP 7 Controls the duration after which data import


batches will be purged from your system. Your
system comes with a default duration of 7 days.
You can overwrite the default by entering a posi­
tive integer. After data import batches are
purged, they are permanently removed from your
system. Afterward, data import reporting is not
available for the purged batches. You would typi­
cally set a production system to 2 days. If you are
importing very large volumes of data every day,
then you should not set this duration to more
than 1 day, otherwise you will accumulate data in
your system. After a data import batch has been
processed, it has fulfilled its purpose. The only
reason you may want to retain that data for 1 or 2
days is purely for data import reporting pur­
poses. This data does not participate in any other
system function; it just occupies space. The
sooner you purge it, the better it is for your sys­
tem.

Model Configuration Guide


Global Configuration PUBLIC 347
Parameter Group Parameter Name Default Value Parameter Description

INTEGRATION JOB_THREAD_COUNT 1 Controls how many import jobs or batches can


be processed concurrently.

The default value is 1, meaning that only one


data import job that is waiting in the queue is
processed at a time. The next data import job is
picked up for processing only after the previous
one has finished.

If you want to allow parallel processing of import


jobs, you can override the default value of 1 with
a value that fits your requirements. The system
then processes up to those many import jobs
from the queue in parallel.

 Caution
If you override this value, you assume the re­
sponsibility to orchestrate your data integra­
tion jobs and ensure that the ones that are
processed in parallel do not interfere with
one another. You should test it to verify that
your data imports run smoothly.

You should, for example, avoid the following:

● Allowing more than one key figure im­


port job for the same planning level in a
planning area to be processed in paral­
lel.
● Allowing more than one master data im­
port job for the same planning area to
be processed in parallel.

INTEGRATION SPACE_TO_NULL Attribute values consisting of SPACE characters


only are not allowed during master data import.
To indicate an empty (initial) value for an attrib­
ute, NULL must be used instead. If you enter the
value 1 for this parameter, the system automati­
cally converts the value of an NVARCHAR attribute
that consist of spaces only to the value NULL.

INTEGRATION PERSONAL_DATA_CHANG 90 By default, changes to personal data in master


E_LOG_AGE data records are purged after 90 days. Using this
parameter, you can increase or decrease the de­
fault retention time for changes to personal data.
The integer value that you enter determines the
number of days for which the changes will be
kept.

Model Configuration Guide


348 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

INTEGRATION USE_DATAINTEGRATION If you have been using IBP before the 1711 re­
_PERMISSION lease, you can use this parameter to control
whether restrictions are applied in the Data
Integration Jobs app. By default, this parameter
is deactivated. If you want to apply the restric­
tions, you must add this parameter and enter x
or X as the value to activate it.

 Note
This global parameter is only relevant for
customers who have been using IBP before
the 1711 release and are upgrading to 1711 a
higher release.

If you have installed IBP for the first time


with the 1711 or a later release, you don’t
need to set this parameter to apply the re­
strictions. These restrictions are active by
default.

INTEGRATION INTERACTIVE_DATA_UP By default, data integration jobs submitted via


LOAD the Data Integration Jobs app are set on a queue
so the system can process them serially.

If you want these data integration jobs to be


processed directly, you need to set this parame­
ter to X or x.

 Note
Increasing this value may result in a dead­
lock because the system needs to process
too many jobs at a time. We therefore recom­
mend that you use the default setting.

Model Configuration Guide


Global Configuration PUBLIC 349
Parameter Group Parameter Name Default Value Parameter Description

INTEGRATION MAX_REPORT_ROWS 50000 This parameter limits the number of rows that
are included in a data integration report from the
Data Integration Jobs app. By default, 50000
rows are included. You can adjust this default
value according to your needs.

 Note
We recommend that you do not enter a value
that is higher than the default value, because
the creation of a data integration report that
contains a large number of rows may lead to
out-of-memory problems.

INTEGRATION CHECK_ARIBA_CHARACT N/A This parameter is only shown for technical rea­
sons. Do not use this parameter.
ERISTIC_IN

INVENTORY DECIMAL_LT_DEMAND_P Round Up Used by the Calculate Target Inventory


ROPAGATION Components operator to handle the calculation
of propagated demand mean when there are
fractional values for transportation or production
lead time.

When set to Round Up(default), rounds up any


fractional lead time value to the next integer
value. For example, a lead time of 0.2 is rounded
up to 1 and a lead time of 1.6 is rounded up to 2.

When set to Round Down, rounds down any frac­


tional lead time value to the previous integer. For
example, a lead time of 0.2 is rounded down to 0
and a lead time of 1.6 is rounded down to 1.

When set to Round Nearest, rounds to nearest


integer value. For example, a lead time of 0.2 is
rounded to 0, a lead time of 1.6 is rounded to 2,
and a lead time of 1.49 is rounded to 1.

All calculation of inventory outputs (target and


average) that are based on propagated demand
mean adjust according to round option, for ex­
ample, cycle stock, on hand stock, pipeline stock,
in process stock, vendor in-transit stock, inven­
tory position, and re-order point.

If the setting is missing or set to any value other


than Round Up, Round Down, or Round
Nearest, the default value (Round Up) is used.

Model Configuration Guide


350 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

INVENTORY ENABLE_DYNAMIC_LAG NO When set to YES, dynamic lag is considered.


When set to NO or any other value, dynamic lag is
not considered. The default parameter value is
NO.

INVENTORY LOOP_HANDLING REMOVE If the parameter value is set to LOG, then the
loops (cyclical sourcing in algorithms) are logged
in business logs. If the parameter is set to
REMOVE, then the loops, up to six levels, are log­
ged and removed. Any remaining loops are log­
ged as WARNING (limited to 500 per type of loop).
If the parameter value is set to ENABLE, the in­
ventory optimization algorithms run successfully
when time-varying sourcing ratios create loops.
Loops are logged as WARNING (limited to 500 per
type of loop). If any other value besides LOG,
REMOVE, or ENABLE is provided or the parameter
is missing, then the loops are logged and re­
moved (default behavior).

For detailed information about loop handling


logic, and how loops are logged, see Loop Han­
dling.

INVENTORY SAME_ISL_ACROSS_COM YES If the parameter value is set to YES, then the
PONENTS Global (multi-stage) inventory optimization oper­
ator assumes that each bill of material compo­
nent has the same internal service level (compo­
nent non-stockout probability).

If the parameter value is set to NO, then the


Global (multi-stage) inventory optimization oper­
ator allows each bill of material component's in­
ternal service level (component non-stockout
probability) to be calculated individually.

If the setting is missing or set to any value other


than YES or NO, the default value (YES) is used.

INVENTORY STORAGE_CAPACITY_CO IGNORE Set whether to ignore or consider storage ca­


NSTRAINTS pacity constraints. IGNORE is the default value.
When set to CONSIDER, IO operators consider
storage capacity constraint key figures. If the set­
ting is missing or set to any value other than
IGNORE or CONSIDER, the default value
(IGNORE) is used.

Model Configuration Guide


Global Configuration PUBLIC 351
Parameter Group Parameter Name Default Value Parameter Description

INVENTORY STORAGE_PENALTY_OPT VARIABLE Sets how to manage the cost of storage con­
ION straint violations. When set to FIXED, the param­
eter minimizes number of stocking nodes where
storage constraint is violated, and assuming a
large fix­cost to resolve the storage problem. The
VARIABLE option minimizes total cost of storage,
and assumes a variable cost for each instance of
additional required storage.

LAG_BASED_SNAPSHOT LAG_BASED_BATCH_SIZ Enables packaging for lag-based snapshots. If


you activate this parameter by entering a positive
E
integer for its value, lag-based snapshot applica­
tion jobs will run on one batch of planning objects
at a time. Each batch can only contain as many
planning objects as the value you specify for the
parameter.

MASTER_DATA_OP MAX_BATCH_SIZE 10000 The maximum number of records that a user can
download or upload using the mass management
of master data function in the IBP Excel add-in.

MASTER_DATA_OP SORT_REQFIELD_FIRST YES Controls the order of the columns in the mass
management of master data in the IBP Excel
add-in. If the value of the parameter is YES, the
columns of the required attributes follow the col­
umns of the key attributes. Otherwise, the sys­
tem puts the columns of the key attributes first,
and displays the columns of the remaining attrib­
utes in alphabetical order.

MODEL_CONFIGURATION COPY_PLANNING_PROFI TRUE Controls whether planning profiles are copied


LE when you copy a planning area using simple or
advanced copy. The default setting is true, that
is, planning profiles are copied. If you don't want
to copy the planning profiles, change the value to
FALSE.

MODEL_CONFIGURATION SHOW_STPL FALSE Controls whether the system displays the


Storage Time Profile Level field in the Planning
Areas app.

OUTPUT_MANAGEMENT EMAIL_SENDER_ADDRES You can define the email address of the sender of
S a notification email.

Model Configuration Guide


352 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

OUTPUT_MANAGEMENT EMAIL_SENDER_NAME You can define the name of the sender of a notifi­
cation email.

 Note
If you decide to change the sender name,
you cannot leave the email address blank,
you will have to change the email address as
well.

PLANNING_CALENDAR DEFAULT_FACTORY_CAL You can use this parameter to define a default


ENDAR factory calendar that serves as the basis for ex­
isting planning calendars in case their related
factory calendars have been deleted.

PLANNING_CALENDAR NW_CAL_ODATA_INT Defines whether factory calendar data can be in­


tegrated to IBP to be used in time-series-based
planning.

To enable data integration, set the value of this


parameter to X.

PLAN_VIEW ALLOW_SAVE_DURING_C YES Allows saving data in Excel during the run of a
OPY copy operator for same planning area.

PLAN_VIEW ALLOW_SAVE_DURING_D YES Allows the key figure values from a planning view
ATA_LOAD in Excel to be saved while a data integration job is
running for the same planning area.

PLAN_VIEW ALLOW_SAVE_DURING_S YES Allows saving data in Excel during the run of a
NAPSHOT snapshot for the same planning area.

PLAN_VIEW ALLOW_SAVE_DURING_V YES Allows saving data in Excel during the run of a
ERSION_COPY version copy for the same planning area.

PLAN_VIEW DEL_COMB_KF_CHECK_F YES Controls whether choosing Delete Planning


OR_NULL Object in the IBP Excel add-in deletes only those
planning objects where all the cells have NULL
key figure values, or deletes those planning ob­
jects as well that have key figure values.

Model Configuration Guide


Global Configuration PUBLIC 353
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW DISABLE_LEADZEROS_T Before 1802, it was not possible to use the for­
matting based on the RELATIVE property for
IME_RELATIVES
time periods in the EPM formatting sheet. This
was because EPM sorted the values in an incor­
rect order (1 10 11 12 2 20 21 22 ...), which made
the formatting in the planning view yield unex­
pected results. To correct the sorting, leading ze­
roes have been added to the identifiers of the
time periods, and the result is sorted correctly
(0001 0002 0003 ... 0010 0011 0012 ...).

If this global configuration parameter is set to


any value, for example YES, the logic without
leading zeroes for the RELATIVE property in the
EPM formatting sheet is used. When the parame­
ter is not set at all or set with an empty value the
logic using leading zeroes is used.

PLAN_VIEW ENFORCE_REASON_CODE NO If the value of the parameter is set to YES, the


users of the IBP Excel add-in are forced to select
a reason code when they save data in the IBP Ex­
cel add-in.

PLAN_VIEW FORCE_PLANNING_VIEW NONE Controls whether users are forced to set up an


_FILTER attribute filter when creating or editing a plan­
ning view. The parameter has the following val­
ues:

● WARNING
The user receives a warning when they try to
open a planning view without an attribute fil­
ter.
● MANDATORY
The user can't proceed without defining an
attribute filter for the planning view they are
trying to open.

PLAN_VIEW HOME_PAGE /sap/bc/ This parameter indicates the default path for
ui5_ui5/ui2/ constructing the SAP Fiori Launchpad.
ushell/
shells/abap/
FioriLaunchp
ad.html

Model Configuration Guide


354 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW MAX_DIM_MEMBERS 100000 By default, up to 100,000 master data attributes


are displayed in the value help of the following
apps:

● IBP Excel add-in


● Web-Based Planning
● Web-Based Planning - Customers
● Web-Based Planning - Suppliers
● Driver-Based Planning

If the number of values for an attribute in your


system is larger than the value you set for this
parameter, not all of the values are displayed in
filtering and planning view definition. Users can
display all of the values by explicitly searching for
them.

Using this global configuration parameter, you


can control how many master data attributes are
shown in the value help by default. Decreasing
the default value can help improve performance
because the system needs to load fewer master
data attribute values.

Model Configuration Guide


Global Configuration PUBLIC 355
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW MAX_RESULT_CELL_SIZ 1000000 This global configuration parameter defines the


E maximum number of cells diplayed in a planning
view in the Excel add-in, thereby allowing to avoid
system performance issues due to excessively
large planning views.

The MAX_RESULT_CELL_SIZE parameter is par­


ticularly useful, when end users generate plan­
ning views without applying enough planning fil­
ters to limit the amount of data read from the da­
tabase to a manageable level. In such cases, the
system cuts off the part of the data that exceeds
the limit established by the parameter, not to
dramatically increase the runtime of queries.

Users are notified of the phenomenon through a


system warning and advised to review their plan­
ning view definition with special attention to the
filter criteria used to mark out the scope of their
queries.

 Note
The MAX_RESULT_CELL_SIZE parameter
offers a limit to the amount of processed
data in a query. This upper threshold is con­
sidered when the data is collected and proc­
essed in the SAP IBP backend system. How­
ever, certain conditions can influence
whether in the end, the planning view shows
more or less data than what was collected
from the database. An additional logic can be
applied following data collection, but still be­
fore the generation of the planning view, to
obtain an output that is meaningful from a
business perspective.

 Example
Potential use cases that result in less data
shown in the planning view:

● Not all planning data combinations that


are returned from the database are valid
for the planning view, for example, due
to base planning level constraints. As a
consequence, invalid combinations are

Model Configuration Guide


356 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

removed in a validation step that follows


the data collection.
● The overall number of cells with data is
divided among time levels (including
time totals), versions, and user­defined
scenarios, proportionally to the number
of periods per time level before reading
the data. Since it is possible that not all
the time levels, versions, and user de­
fined scenarios contain the same
amount of data, the number of cells
used by the planning view can be less
than the limit set in the parameter.
● Any planning object not contained com­
pletely in the result set of each time
level, version, and user­defined sce­
nario, is removed from the result. Order­
ing of the result for checking complete­
ness is by the planning object attributes
in the planning view, as they appear in
the planning view, regardless of where
periods, key figures, version, and user­
defined scenario appear in the planning
view.

Potential use case that results in more


data shown in the planning view:

● In some cases, time series data does


not exist for all planning combinations
returned for the time periods defined by
the user in the time settings. The miss­
ing data for such combinations is added
in a complementary step to ensure that
the planning view layout is kept consis­
tent, which leads to more cells being
shown than what the global configura­
tion parameter setting allows.

Model Configuration Guide


Global Configuration PUBLIC 357
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW MAX_RESULT_CELL_SIZ 10000000 This global configuration parameter defines the


maximum number of cells in a master data work­
E_PLEVEL
book in the Excel add-in, when you use the mas­
ter data workbook to view, edit, and create plan­
ning objects and stored key figure data for a se­
lected planning level. The purpose of this param­
eter is to avoid potential memory dumps caused
by a master data workbook having too many
cells. For more information, see Planning Object
Maintenance with Key Figure Data

PLAN_VIEW MAX_RESULT_ROW_SIZE 2000 Controls the number of combinations shown in a


change history planning view, provided no value
has been maintained for parameter
MAX_RESULT_LIMIT. For further details, see the
documentation of parameter
MAX_RESULT_LIMIT, in parameter group
CHANGE_HIST.

PLAN_VIEW MAX_SUB_TOTALS 0 You can use this global configuration parameter


to enable attribute-based totals in the IBP Excel
add-in. The number you enter as the value of this
parameter specifies the number of attribute-
based totals that are allowed per worksheet.

PLAN_VIEW MINIMUM_ADDIN_VERSI If you provide a version here, then, upon logon to


ON SAP Integrated Business Planning in the IBP Ex­
cel add-in, the system checks the version of the
IBP Excel add-in. In case the version is lower than
the one defined in the parameter, the system dis­
plays a warning message.

 Note
Please note the two periods in the format for
this global parameter, 1911.4.0 for example.

PLAN_VIEW SUPPRESS_RC_COMMENT X Having an entry with this parameter (regardless


of the value) suppresses the dialog where the
user is asked to provide a reason code or com­
ment, and where they can share the changes on
SAP Jam. Applying this parameter suppresses
the dialog for reason codes, comments, and
sharing throughout the SAP Integrated Business
Planning (such as when saving data of a planning
view, or changing a master data).

To re-enable the dialog for reason codes and


comments, delete the entry for this parameter.

Model Configuration Guide


358 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW VALID_NULL_VALUES_N Yes Determines whether rows containing null values


ON_ROOT_ATTR for a non-root attribute should be displayed in
the planning view or not. The default behavior is
to display the rows containing null values. If you
set the global configuration parameter
VALID_NULL_VALUES_NON_ROOT_ATTR to NO,
and you have selected a non-root attribute as a
master data attribute of a key figure, then the
rows that are based on null values for this non-
root attribute will not be displayed.

This parameter doesn't affect subtotal calcula­


tions since it is only a display filter and therefore
sub-total values may differ from the sum of the
displayed attribute combinations. The reason for
this is that the displayed attribute combinations
may be incomplete.

 Note
Null values of attributes which are not part of
the key figure's base planning level are al­
ways valid, and are therefore displayed, even
if the value of the global configuration pa­
rameter
VALID_NULL_VALUES_NON_ROOT_ATTR is
set to NO.

PLAN_VIEW PV_COUNT_MAX 5 The maximum number of open Microsoft Excel


workbooks that contain planning views.

PLAN_VIEW SESSION_PRELOAD_CS 5 The number of calculation scenarios created in


advance during session preload in Excel plan­
ning. It should be equal to the number of versions
(including base version) times the number of
scenarios (including baseline) which are typically
selected in a planning view, so that the loading
time of the planning view is reduced. Each com­
bination of version and scenario results in a sepa­
rate calculation scenario.

PLAN_VIEW SESSION_PRELOADCS_W 30 Time in seconds the Excel query waits for the
AIT session preload to finish before creating calcula­
tion scenarios on its own. It should be at least
equal to the loading time of a template which re­
quires as many calculation scenarios as config­
ured with parameter SESSION_PRELOAD_CS.

Model Configuration Guide


Global Configuration PUBLIC 359
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW SHARE_WITH_NONE FIRST Controls the entries the user sees in the field
Share With when saving changes in the SAP Inte­
grated Business Planning add-in for Microsoft Ex­
cel. The following values are available:

● FIRST: (None) is displayed as the first entry


of the list
● LAST: (None) is displayed as the last entry of
the list
● NO: (None) is not displayed at all

PLAN_VIEW ACTIVATE_VBA_HOOKS Allows you to enable your own Visual Basic for
Applications (VBA) scripts that run in the follow­
ing instances:

● Before simulation
● Before creating a simulation
● Before saving data
● After using the refresh button

The parameter has the following values:

● Mandatory
If there is no implementation available, the
IBP code stops.
● Optional
If there is no implementation of the VBA
hook available, the IBP code continues run­
ning.

(These values are not case-sensitive.)

Model Configuration Guide


360 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW ACTIVATE_MD_VBA_HOO Allows you to enable your own Visual Basic for
KS Applications (VBA) scripts that run in the follow­
ing instances during the mass maintenance of
master data:

● Before Update
Your custom VBA code is called before the
changes in the mass master data view are
sent to the back end.
● After Refresh
Your custom VBA code is called when the
mass master data view is created or re­
freshed.

The parameter has the following values:

● Mandatory
If there is no implementation available, the
IBP code stops.
● Optional
If there is no implementation of the VBA
hook available, the IBP code continues run­
ning.

(These values are not case-sensitive.)

PLAN_VIEW MAX_TIME_LEVELS 1 The number of time levels that can be used in a


planning view. You can use this parameter to ena­
ble the use of flexible time axis, by setting the pa­
rameter value to a value greater than 1.

PLAN_VIEW MAX_ADD_NEW_PLAN_OB 100000 You can use this parameter to set the maximum
JECT number of new planning objects that can be cre­
ated from the IBP Excel add-in. If the number of
new planning objects is larger than the value you
enter for the parameter, the creation of the plan­
ning objects is canceled.

Model Configuration Guide


Global Configuration PUBLIC 361
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW USE_XML_TABLE_FOR_Q NO The result set size of large queries in the IBP Ex­
UERY cel add-in might exceed the internal limit of 2GB
for data serialization. This global configuration
parameter can be used to overcome such prob­
lems by serializing data into a table of char(8192)
instead of serializing it into a string (with a maxi­
mum of 2GB size).

 Caution
Please do not change the default value of
this global configuration parameter.

Instead, please open an incident, and SAP


support will determine whether it is neces­
sary to activate serializing data into a table,
instead of a string.

WBP_PLAN_VIEW WBP_MAX_RESULT_CELL 100000 This global configuration parameter specifies the


_SIZE maximum number of cells displayed in a plan­
ning view in the Web-Based Planning app.

The total number of cells with data provided is


divided among versions and scenarios, propor­
tional to the number of periods for the time axis.
The system checks for each planning object
whether all requested data can be shown. Any
planning object not contained completely in the
result set of version and scenario is removed
from the result.

Model Configuration Guide


362 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL MAX_FILTER_VALUES 200 The maximum number of filters for a planning


view. For example, for PRDID you could set the fil­
ters Product 01 and Product 02.

 Note
We recommend that you don't exceed the
default value of 200. If you need more, you
could use other filter criteria, for example,
for PRDID you could use Product Group.

 Caution
When you want to select all attributes as fil­
ters in the planning view, the system lets you
do so if the total number of attributes does
not exceed 1000, even if you set a higher
value for the global configuration parameter
MAX_FILTER_VALUES.

Model Configuration Guide


Global Configuration PUBLIC 363
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL MAX_SORTING_VALUES 100 You can sort attribute values within a planning
view based on different logics, including custom
rules that you set based on business preferences.

By fixing the position of selected values within


your attribute value list, you can add clarity to the
planning view and increase your efficiency.

For example, you may pin your top three custom­


ers to the beginning of the attribute value list and
put the worst performing three customers to the
end. In between, you can set the sorting rule to
ascending (A-Z).

 Note
Only a limited number of attribute values can
be used to define custom sorting rules. The
limit is handled by the global configuration
parameter MAX_SORTING_VALUE. The de­
fault is set to 100 attribute values per attrib­
ute. As an administrator, you can increase
this limit in the Global Configuration
Parameter app in the group PLAN_VIEW.

 Caution
The maximum number of attribute values
that can be selected is 1000.

Model Configuration Guide


364 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL EXT_MISSING_TIMEPER NO You can use this global configuration parameter


in the exceptional case when a time period is
IOD_CREATION
missing for an existing planning object. This can
happen, for example, when a missing key figure
value is defaulted from the value of another fig­
ure that is stored on a different base planning
level than the key figure whose value is missing.
In such a case, it might happen that the missing
key figure value cannot be saved due to the time
period missing from the database.

If you set the parameter value to YES, the system


checks the existence of time periods for all
changed cells during basic simulation, and where
required, creates the missing time periods for the
existing planning objects.

If you leave the default parameter value NO, the


system only checks the existence of initially
empty cells and this could result in a change in a
key figure value during basic simulation being re­
verted back to the key figure's default value ac­
cording to calculation rules.

 Caution
Setting the value of this global configuration
parameter to YES can have a detrimental ef­
fect on system performance. Moreover, it is
rather exceptional case that a key figure
value cannot be saved due to the situation
described above, since there are tools availa­
ble to keep the planning data consistent and
up-to-date, for example, running the Copy
(COPY) operator with the parameter
CREATE_TIMEPERIODS, or planning data up­
load.

We recommend that you activate this global


configuration parameter temporarily only in
situations described above and retry chang­
ing the key figure value. If the change is
taken over, the parameter should be deacti­
vated due to the performance impact on the
remaining consistent and up-to-date data. If
the change is not taken over, the parameter
should be deactivated as the root cause of
the error is not the missing time period.

Model Configuration Guide


Global Configuration PUBLIC 365
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL SCM_LOCAL_MODE No Enables the local mode for time-series-based


supply planning, which ensures that deficit,
shortage, and projected stock are consistent
within a particular location product. Note that
these calculations can be quite heavy on per­
formance.

Model Configuration Guide


366 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL SESSION_GROUP_POOL_ 15 This parameter controls the preferred minimum


LOWER_LIMIT number of premade planning session groups
pending in the pool. If the number of planning
session groups in the pool drops below this
specified number, an asynchronous process will
start and fill up the pool to the given number of
planning session groups again.

The delivered default value is 15.

Too many users requesting planning session


groups from the pool in a short time frame, may
result in the pool running out of premade ses­
sions. In this case a planning session group is
created to serve the user’s request and a mes­
sage is displayed informing the user. Slightly in­
creasing the value of this parameter and adjust­
ing the value of the pool’s upper limit is advised if
this occurs frequently.

 Note
When working with non-normalized planning
areas, some planning sessions required
users to logon to IBP in the IBP Excel add-in
and were kept in a user specific storage.

In case of normalized planning areas, plan­


ning session groups are created in advance
and are independent from user logon.
They’re kept in a cross-user storage (pool)
available for any user who is logging on in the
IBP Excel add-in.

During user activity in the IBP Excel add-in,


planning session groups are taken from this
pool and are assigned to users.

 Caution
Don’t increase the parameter value exces­
sively because each planning session group
requires HANA memory and unnecessary
planning session groups can waste resour­
ces.

Model Configuration Guide


Global Configuration PUBLIC 367
Parameter Group Parameter Name Default Value Parameter Description

PLCNTRL SESSION_GROUP_POOL_ 30 This parameter controls the maximum number


UPPER_LIMIT of planning session groups in the cross-user stor­
age (pool).

The delivered default value is 30.

If a user logs off from the IBP Excel add-in or


closes a workbook, the planning session groups
of this user or the workbook, are refreshed and
returned to the pool.

If the number of planning session groups in the


pool would exceed the setting, the planning ses­
sion group isn’t returned to the pool, but is in­
stead dropped.

PLCNTRL SESSION_TIMEOUT 7200 The number of seconds before an SAP Integrated


Business Planning session times out and re­
quires you to log back in.

REALIGNMENT LOG_ATTACHMENT_LIMI 500000 This parameter limits the number of rows in the
T attachments of log messages of realignment
runs, both simulation and actual runs. By limiting
the number of rows, you can limit the memory
consumption of realignment runs, especially
those containing large data sets. The default and
maximum value of the parameter is 500,000.

REALIGNMENT APPROVAL_FOR_RESCHE YES Realignment projects with the status


DULING Successfully Executed must be set to the status
Approved before they can be scheduled again. If
you set this parameter to NO, the user can di­
rectly reschedule realignment projects with the
status Successfully Executed.

ATTR_SUFFIX
RESPONSE Using this parameter, you can specify a suffix
that will be added to an attribute name in case
you are copying the SAP7 sample planning area
with additional demand attributes and run into
the following issue: an attribute you are trying to
copy already exists in one of your other planning
areas and this existing attribute is not compati­
ble with the attribute you are trying to copy. If no
suffix is specified, a planning area copy is
aborted with a warning message.

Model Configuration Guide


368 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

RESPONSE CONT_COPY_IF_CONFLI This parameter handles the following behavior


CT when copying versions using the Order-Based
Planning: Copy Version Data application job: You
want to copy order data from a source version to
a target version, but the source data and the tar­
get data share an order or orders, and these du­
plicates cause the application job to fail. You can
set this parameter to X to remove any order du­
plicates and their dependent objects from the
data before it is copied, allowing the application
job to continue. The duplicates are listed in an at­
tachment to the application log, regardless of
whether the parameter is set or not.

RESPONSE DESCRIPTION_ATTRIBU The language of attributes description of master


TE_LANGUAGE data transferred from SAP ERP system to order-
based planning in IBP. Use the two-character lan­
guage code to set the language. By default, de­
scriptions are displayed in English.

RESPONSE ENG_DIAGNOSIS_LEVEL 0 This parameter is for support purposes. For more


information about the parameter, see 2380705
.

Do not change the parameter value, unless ad­


vised by SAP support.

RESPONSE EXT_PLEVEL_UPLOAD_L 0 Using this parameter, you can run a preliminary


OCK_TIMEOUT check to determine a number of records to be
uploaded with the Order-Based Planning: Key
Figure Upload for External Planning Level applica­
tion job. If no records are found, you save the
time needed to execute the full job.

By default, this parameter is inactive. To activate


it, set the value to X.

Model Configuration Guide


Global Configuration PUBLIC 369
Parameter Group Parameter Name Default Value Parameter Description

RESPONSE EXT_PLEVEL_UPLOAD_P Using this parameter, you can prevent running of


RECHECK multiple Order-Based Planning: Key Figure
Upload for External Planning Level application
jobs for the same planning area at the same time.

You can use the following values for this parame­


ter:

● 0: The job fails if another Order-Based


Planning: Key Figure Upload for External
Planning Level job is already running for the
same planning area.
● -1: You can run multiple Order-Based
Planning: Key Figure Upload for External
Planning Level jobs for the same planning
area.
● Integer value between 30 and 600: The job
will fail only after the maintained timeout (in
seconds) is reached and another Order-
Based Planning: Key Figure Upload for
External Planning Level job is still running for
the same planning area.

RESPONSE OPENAPI_JOB_STATUS_ 1800 Time in seconds the automatic order processing


TIMEOUT during the Data Integration Using SAP HANA SDI
(Outbound) job is kept in process if SDI connec­
tion to SAP ERP, supply chain integration add-on
for SAP Integrated Business Planning or SAP S/
4HANA, supply chain integration add-on for SAP
Integrated Business Planning is interrupted. If
connection is not recovered during this time, the
job fails. The value should be larger than zero.

RESPONSE OPENAPI_LOG_ATTACHM 100000 The maximum number of warning messages of


ENT_LIMIT the same type that are displayed in the log at­
tachments of the Data Integration Using SAP
HANA SDI (Inbound) application job. If you enter
0, it means that the maximum allowed number of
warning messages (100000), including mes­
sages that are displayed in the application job log
details, are displayed in the attachment. To dis­
play fewer warning messages for the next inte­
gration run, update the parameter value accord­
ingly. To display all messages in the log details
only, enter X.

Model Configuration Guide


370 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

RESPONSE OPENAPI_LOG_DISPLAY 10 The maximum number of warning messages of


_LIMIT the same type that are displayed in the log de­
tails of the Data Integration Using SAP HANA SDI
(Inbound) application job. You can download the
attachment to check the rest of the warnings. To
display more warning messages in the log for the
next integration run, update the parameter value
accordingly.

FIRST_VALID
RESPONSE PLANNING_RUN_MALO_F Using this parameter, you can choose to run
ILTER_MODE planning run as operator jobs if there are multiple
planning levels in your planning area with the
STD_MALO data source and some of these plan­
ning levels do not have planning objects assigned
to them.

You can use the following values for this parame­


ter:

● CHECK_ALL: All the listed planning levels are


checked and filtered in the given order. All
the location materials are collected from ev­
ery valid planning level and an aggregated
result is provided for the planning run. This
can be used if there are sets of location ma­
terials on multiple planning levels and these
sets do not match.
● FIRST_VALID: The listed planning levels are
checked and filtered in the given order until
one of them returns data. Location materials
from that planning level are provided for the
planning run. This is the default behavior.
● FIRST_ONLY: The first element in the list of
planning levels is checked and filtered. The
planning run will end with an error message
if planning objects do not exist on that plan­
ning level. We recommend that you use this
setting only in exceptional cases.

SCENARIO SCN_COUNT_MAX 3 The maximum number of versions allowed in an


SAP Integrated Business Planning system.

Model Configuration Guide


Global Configuration PUBLIC 371
Parameter Group Parameter Name Default Value Parameter Description

SCHEDULING JOB_RETENTION_TIME 90 Number of days that executed jobs are retained.


This parameter is valid for the following operator
jobs:

● ABC/XYZ Segmentation
● Copy Operator
● Copy and Disaggregate Key Figure Operator
● Copy Operator With Time Period Filter
● Copy Version Operator
● Delete Version Operator
● Forecast Automation
● Forecast Error Calculation Operator
● Inventory Optimization Operator
● Redo Snapshot Operator
● S&OP Operator
● S&OP Optimizer Explanation
● S&OP Forecast Consumption
● Snapshot Operator
● Statistical Forecasting

APJT
SCHEDULING This parameter controls if the Application Job
Template Ribbon Entry in Excel is shown or not.

If set to FALSE, the Application Job Template


Ribbon Entry is not shown in Excel and users
cannot schedule application jobs templates from
Excel with this.

SCHEDULING CONTINUE_AFTER_HCI_ False Controls whether a job chain will be stopped if a


FAIL step for Data Integration Using SAP HCI, which is
part of the chain, fails. If set to false (default), any
step related to Data Integration Using SAP Cloud
Integration for data services that fails will cause
the chain to stop.

DISABLE_EXCEL_APJT_
SCHEDULING False When a user logs into the IBP Excel Add-In, using
CPIDS
the DISABLE_EXCEL_APJT_CPIDS parameter
set to TRUE restricts the list of Application Job
Templates within a Planning Area. This parame­
ter filters out the templates with operators of
type Data Integration CI-DS (Data Integration Us­
ing SAP Cloud Integration for data services).

The DISABLE_EXCEL_APJT_CPIDS parameter


can be configured in the Global Configuration
app.

Model Configuration Guide


372 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

JOB_NOTIFICATION_US BLANK
SCHEDULING You use this global parameter to trigger a notifi­
ER_GROUP
cation when a scheduled application job has
failed, ended in user error or was cancelled dur­
ing execution.

This notification can be set up for one or multiple


user groups.

If you’re using this for multiple user groups, the


values must be separated by a semicolon (;).

For example, ADMIN;EUROPE_USERS triggers a


job notification for ADMIN and EUROPE_USERS.

By default, the user who scheduled the job re­


ceives the notification with a link to navigate to
the application log. The default value of the pa­
rameter JOB_NOTIFICATION_USER_GROUP is
set as BLANK and the notification is sent only
once per user.

For example, if the user who scheduled a job is


part of ADMIN and EUROPE_USERS, they receive
the notification once only.

PROCESS_MGMT_AUTO_F 30
SCHEDULING In process automation, this parameter controls
REQUENCY
how frequently the system checks whether the
condition for automation is met and triggers the
automated actions accordingly.

The parameter value represents the time in mi­


nutes. The default value is 30. You can choose to
enter any value between 3 and 30 minutes to re­
duce the waiting time for the next event to be
triggered.

SOP OPT_DIAGNOSIS_LEVEL 0 This parameter is for support purposes. For more


information about the parameter, see 2380705
.

Do not change the parameter value, unless ad­


vised by SAP support.

SOP PLNG_OPR_DIAGNOSIS_ 0 This parameter is for support purposes. For more


END_TIMESTAMP information about the parameter, see 2380705
.

Do not change the parameter value, unless ad­


vised by SAP support.

Model Configuration Guide


Global Configuration PUBLIC 373
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW MAX_DETAIL_LOG 10000 With this parameter, you can define the maxi­
mum number of business log messages that can
be downloaded in the SAP IBP, add-in for Micro­
soft Excel.

PLAN_VIEW PLANNING_NOTE_DISPL 1000000 With this setting you can limit the number of cells
AY_CELL_LIMIT for a given key figure, attribute, time period and
version combination that has planning notes. If
this limit is exceeded, no planning notes are dis­
played and the end user will get a warning mes­
sage.

 Note
Raising this threshold can have a negative
impact on the performance for end users.

Model Configuration Guide


374 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

PLAN_VIEW PARTIAL_READ_ACTIVE The term partial-read means that because of


cells with changed key figure values, the system
determines which other cells need to be re-calcu­
lated. You can find possible reasons for other
cells to be re-calculated listed below.

● Calculated key figures that depend on the


key figures being changed in the planning
view.
● Filter blocks implied on periods or attributes
because of the calculations of the key fig­
ures being changed, for example, because of
L-code.
● For all the cells which do not depend on the
cells being changed, the results of the calcu­
lations are read from the buffer, as long as
the validity of the buffer has not timed out.
This timeout is maintained by means of pa­
rameter PARTIAL_READ_TIMEOUT.

 Note
No partial read is executed when any
operator simulation, for example, a sup­
ply planning simulation, or advanced
simulation is involved.

The planning view has to always be fully


rendered, even for the cells that don't
have to be re-calculated because of the
partial-read.

If the PARTIAL_READ_ACTIVE parameter is set


to YES, the system buffers the result of key figure
calculations that are required to open or to re­
fresh a favorite or a planning view that has the
same set of attributes and key figures as a favor­
ite.

When the business user runs a basic simulation


in such a planning view, the system executes a
partial-read of the key figure values. Basic simu­
lation can be an extra step triggered by the user,
or part of saving the data, when the user has not
explicitly triggered a simulation before.

Model Configuration Guide


Global Configuration PUBLIC 375
Parameter Group Parameter Name Default Value Parameter Description

 Recommendation
Parameter PARTIAL_READ_ACTIVE can
have a positive impact when users have im­
portant favorites with key figures that are
changed frequently, and there are other key
figures with extensive calculations that don't
depend on the changed key figures. You can
find possible reasons for extensive calcula­
tions listed below.

● Calculations being complex.


● The pure amount of calculations to be
carried out when calculated key figures
are shown at a more aggregated level
than the base planning level, or when
planning views are large.

PLAN_VIEW PARTIAL_READ_TIMEOU You can specify the timeuntil the buffer of key fig­
T ure calculations becomes invalid in minutes. This
is used when the parameter
PARTIAL_READ_ACTIVE has been set to YES
and business users simulate data in favorites.

SYSTEM MAX_ACTLOG_ROWS 0 You can specify the maximum number of rows


the system displays in the activation log header
on the Planning Area and Details screen. The de­
fault value is 0, meaning that the number of rows
displayed is 19999. Specify an integer value
greater than 0 to define the maximum number of
rows. The smaller the number you specify, the
less time it takes for the activation log to load.

PERMISSIONS ATTPERM_ASSIGN_NEW_ X This parameter controls whether a new user will


USER be automatically assigned to the
SAP_ALL_ATTRIBUTES read attribute permis­
sion. If the value of the parameter is X (true, de­
fault value), the system automatically assigns the
new user to SAP_ALL_ATTRIBUTES. If the value
is left blank or empty, there is no automatic as­
signment and the user will have to be manually
assigned to an attribute permission.

TIMEZONE CURRENT_PERIOD_CALC UTC Defines the time zone of your SAP IBP system.
ULATION_TZ You can find all valid time zones and their abbre­
viations in the table TTZZ in your on-premise sys­
tem.

Model Configuration Guide


376 PUBLIC Global Configuration
Parameter Group Parameter Name Default Value Parameter Description

TIMEZONE CURRENT_PERIOD_CALC NOT This parameter can be used to enable the use of
ULATION_TYP BUSINESS_USE business­user­specific time zones. To do so,
R_LOCAL change the default value to
BUSINESS_USER_LOCAL.

Model Configuration Guide


Global Configuration PUBLIC 377
27 Configuration History

You can download a history of changes made to the model configuration for a selected date range. You can also
filter the download by planning area and user. The history captures changes to attributes, master data types,
time profiles, and certain aspects of planning areas (that is, attributes, planning levels, key figures, and
versions). The data is downloaded to a comma-separated values (CSV) file that shows all changes caused by a
user inserting, updating, or deleting data.

Steps

To download the configuration history, go to the Planning Areas app, select the planning area and choose
Download Configuration History. Enter your selection criteria and choose Download. The system downloads the
data and you can save the file.

The information in the CSV file includes the following:

● User who made the change


● Time of the change
● Type of change (insert, update, or delete)
Note that for an update from the UI, the record on the database is deleted and then inserted. In this case,
the file therefore contains one row with the action DELETE and one row with the action INSERT.
● Name of the table affected (for example, SOPDM_PLANLEVELATTR is the table that is affected by changes
to planning level attributes).
● Change ID and change item ID
For changes on the UI that a user saves together (that is, by choosing Save once on the UI), the following
applies:
○ All changes share the same change ID in the history even if the changes are stored in different
database tables.
○ For changes to the same database tables, the change item ID increases incrementally by 1 for each
change.
● The following fields for the attributes:
○ ATTRIBUTE_ID: Contains a comma-separated list of all table column names affected by the change.
○ ATTRIBUTE_OLD_VALUE: Contains a comma-separated list of old values from the table columns.
○ ATTRIBUTE_NEW_VALUE: Contains a comma-separated list of new values from the table columns.

Example: Example

You create a new key figure TOTALRECEIPTS. You enter the following values:

● Name: TOTALRECEIPTS
● Description: TOTALRECEIPTS

Model Configuration Guide


378 PUBLIC Configuration History
● Base Planning Level: PERPRODLOC
● Aggregation Mode: Sum
● Stored: Selected
● Edit Allowed: Not Editable

You also enter a calculation definition.

All entries are saved together. Since you have created a new key figure, the relevant action shown in the table is
INSERT, with entries for the database tables used for key figures, key figure texts, key figure calculations, and
key figure calculation inputs.

The following is a simplified extract from the configuration history for the above example:

CHANGE_US CHANGE CHANGE_ITE TABLENAME AC­ ATTRIBUTE ATTRIB­


ER _ID M_ID TION UTE_NEW_VALUE

MILLER 384 1 SOPDM_KEYFIGURE INSE LASTMODIFIEDDA 2015-05-18 14:20:57;


RT TE; CONV_KFID; NULL;

MILLER 384 1 SOPDM_KEYFIGURE_T INSE DESCR; KFNAME Total Receipts; Total Re­
RT ceipts;

MILLER 384 1 SOPCM_KEYFIGCALC INSE CODEID; NULL; MILLER;


RT CREATEDBY; 2015-05-18 14:20:57
CREATEDDATE;

MILLER 384 1 SOPCM_KEYFIGCALC_I INSE CREATEDBY; MILLER; 2015-05-18


NPUT RT CREATEDDATE;INP 14:20:57; 0
UTTYPE

Other fields in the configuration history include planning area, key figure ID, calculation ID, planning level,
attribute ID, LCODE, scenario, and active status. In the above example, the following additional information
would be provided:

● KEYFIGURE_ID: TOTALRECEIPTS
● CALCULATION_ID: 209318
● ACTIVE: I

Model Configuration Guide


Configuration History PUBLIC 379
28 Advanced Modeling Topics

Once you set up a planning area in the system, you can make further settings.

SAP Integrated Business Planning enables you to make the following advanced configuration settings in a
planning area:

● Time-independent key figures


● Currency conversion
● Unit of measure conversion
● Attribute transformation
● Weighted average calculation
● Price and cost for currency and unit of measure
● Split factor calculation
● Change history for key figures and planning areas
● Period-to-period comparison with time profile attributes
● Change-history-based calculations

Related Information

Time-Independent Key Figures [page 380]


Configuring Currency Conversion [page 381]
Configuring Unit of Measure Conversion [page 383]
Attribute Transformations [page 385]
Weighted Average Calculation [page 388]
Configuring Price and Cost for Currency and UoM Conversions [page 390]
Split Factor Calculation [page 392]
How to Enable Change History? [page 400]
Configuring Period-to-Period Comparison with Time Profile Attributes [page 412]
Setting up Change-History-Based Calculations [page 406]

28.1 Time-Independent Key Figures

Time-independent key figures are configured in a similar way to attributes as key figures, except that the key
figure value is not dependent on time periods. An example of a time-independent key figure is the Unit of
Measure Conversion Factor. Unlike an attribute as key figure, where an attribute value is copied to all time
periods in the time series for the planning object, time-independent key figures have just one record in the time
series for the planning object.

Model Configuration Guide


380 PUBLIC Advanced Modeling Topics
 Recommendation

The unified planning area SAPIBP1 uses time-independent key figures. We recommend that you check it as
a reference implementation that you can use to help you set up your own time-independent key figures.

You can load time-independent key figures only if they have been configured as attributes as key figures. You
configure them in just the same way, except that the planning level contains no time periods, for example, the
base planning level for Unit of Measure Conversion Factor is PRODUOMTO.

You can view and edit time-independent key figures in the IBP Excel add-in under Master Data Maintenance for
the master data type they are based on. You cannot, however, view these key figures in the Excel planning
views. If you want to be able to view them in Excel, you have to extend the configuration. For example, you have
to enter expressions such as the following:

UOMCONVERSIONFACTOR@REQUEST=AVG(UOMCONVERSIONFACTOR@MTHPRODUOMTO)
UOMCONVERSIONFACTOR@MTHPRODUOMTO=UOMCONVERSIONFACTOR@PRODUOMTO(<input_key_figure@
MTH>)

Note that the input key figure <input_key_figure@MTH> is not part of the expression but the input key figure
of the calculation. This could be any key figure that is aggregated to monthly level and that exists for all
months.

 Recommendation

We recommend that you use time-independent key figures instead of attributes as key figures in cases
where the key figure value does not vary over time and does not have to be maintained in Excel like a
regular key figure. This type of key figure provides much better performance than an attribute as key figure,
which stores the key figure value for all time periods.

 Caution

If you decide to use time-dependent conversion key figures, please be aware that using such key figures
can cause higher memory consumption, and have a detrimental impact on performance.

28.2 Configuring Currency Conversion

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Model Configuration Guide


Advanced Modeling Topics PUBLIC 381
Context

SAP Integrated Business Planning can convert currency on the fly, for example, when a user of the add-in for
Microsoft Excel or of Analytics selects Target Currency at runtime for a key figure such as Sales Forecast
Revenue. Prerequisites for currency conversion are that exchange rates exist in the system and that a currency
conversion calculation has been defined for the key figure involved.

The following example illustrates the configuration steps for currency conversion.

Steps

1. Define the attributes S2CURRID, S2CURRTOID, S2CURRDESCR, S2CURRTODESCR, S2EXCHGRATE.


2. In the Master Data Types app, create the following master data types:
1. A simple master data type for “Currency” (S2CURR)

Basic Data of the S2CURR Simple Master Data Type

Field Label Entry/Selection

Name* Currency

Description Currency

Type Simple

Attributes Description Key Req.

S2CURRDESCR Currency Desc.

S2CURRID Currency yes yes

2. A reference master data type for “Target Currency” (S2CURRTO)

Basic Data of the S2CURRTO Reference Master Data Type

Field Label Entry/Selection

Name* Target Currency

Description Target Currency

Type Reference

Referenced Master Data Type S2 Currency

Model Configuration Guide


382 PUBLIC Advanced Modeling Topics
Attributes Description Key Req. Ref. Attribute

S2CURRTODESCR Currency Desc. S2CURRDESCR

S2CURRTOID Currency yes yes S2CURRID

3. A compound master data type for “Exchange Rates” (S2EXCHANGERATE)

Basic Data of the S2EXCHANGERATE Compound Master Data Type

Field Label Entry/Selection

Name* Exchange Rate

Description Exchange Rate

Type Compound

Component Master Data Types S2CURR and S2CURRTO

Attributes Description Key Req.

S2CURR Currency yes yes

S2CURRTOID Target Currency yes yes

S2EXCHANGERATE Exchange Rate

3. On the Attributes tab of the Planning Area app, assign the following to the planning area:
○ The currency attributes (in the this example, S2CURRENCY and S2CURRENCYTO)
○ The “Exchange Rate” attribute as key figure (S2EXCHANGERATE)
4. On the Planning Levels tab, create currency planning levels. Select the Conversion Source and Conversion
Target.
5. On the Key Figures tab, add the conversion expression to the target key figures for currency conversion. For
example, under key figure TARGETREV, you would enter S2EXCHANGERATE for Convert Using.

28.3 Configuring Unit of Measure Conversion

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Model Configuration Guide


Advanced Modeling Topics PUBLIC 383
Context

Model configuration for SAP Integrated Business Planning (SAP IBP) supports unit of measure (UoM)
conversion, that is, conversion of key figures from the base unit of measure to a target unit of measure using a
configured conversion factor. The configuration steps necessary for unit of measure conversion are similar to
those for currency conversion. However, there are some differences:

● Units of measure are usually time-independent.


● Unit of measure is an attribute of a master data type such as Product.

The planning views and Analytics provide the user with the option to select the target unit of measure. The
conversion is handled by SAP Integrated Business Planning.

The following example illustrates the configuration steps for unit of measure conversion:

Steps

1. Launch the Attributes app.


Define the attributes S2UOMID, S2UOMDESCR, S2UOMTOID, S2UOMTODESCR, and S2UOMCONVFACTOR.
2. In the Master Data Types app, define the master data types S2UOMTO and S2UOMCONVERSION.

Basic Data of the S2UOMTO Simple Master Data Type

Field Label Entry/Selection

Name* Target UoM

Description Target UoM

Type Simple

Attributes Description Key Req.

S2UOMTODESCR Target UoM Desc.

S2UOMTOID Target UoM yes yes

Basic Data of the S2UOMCONVERSION Compound Master Data Type

Field Label Entry/Selection

Name* UoM Conversion

Description UoM Conversion

Type Compound

Component Master Data Types S2PRODUCT and S2UOMTO

Model Configuration Guide


384 PUBLIC Advanced Modeling Topics
Attributes Description Key Req.

S2PRDID Product yes yes

S2UOMCONVFACTOR Conversion factor

S2UOMTOID Target UoM yes yes

3. On the Attributes tab in the Planning Areas app, assign the unit of measurement attributes to your planning
area, and assign the attribute S2UOMCONVFACTOR as key figure.
4. On the Planning Levels tab, create unit of measure planning levels. Select the Conversion Source and
Conversion Target.
5. On the Key Figures tab, add the conversion expression to quantity key figures for unit of measure
conversion. For example, for the key figure TARGETQTY, you would enter S2UOMCONVFACTOR for Convert
Using.

28.4 Attribute Transformations

Attribute transformation transforms the value of an attribute based on a calculation expression. You can use
attribute transformation to offset key figure values, for example.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

SAP Integrated Business Planning supports a special type of transformation that allows you to transform the
value of an attribute based on a calculation expression. The calculation expressions in the attribute
transformation can be as simple as ATTR1 + ATTR2; or they can include key figures, combination of attributes
and key figures, or combination of attributes and constants.

Attribute transformations are marked by a truck icon.

 Example

● Time Period Shift: The attribute PERIODID is transformed with the value for the number of time
periods offset.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 385
● Product Substitution: You use attribute transformation to implement product substitution.
● Alert Flag: An attribute can be set to 1 when there is an alert on a key figure. This is used to filter for
alerts.

 Restriction

Attribute transformation is not possible for the S_CHINPERIODID and S_CHINPERIODIDx history
attributes.

All input key figures have to be sourced from the same input planning level, and the input planning level has to
have the same structure as the output planning level.

Recommendations for Attribute Transformation

We recommend that you follow the steps below before you create attribute transformation.

1. Aggregate all attributes at the input planning level that will not be directly transformed and that are
affected by the attribute transformation. This ensures that these attributes will stay consistent.

 Note

However, do not aggregate those attributes at the input planning level that will not change due to the
attribute transformation at all. This ensures that you can filter for these attributes and improve
performance.

2. Create attribute transformation for the attributes you want to be transformed.


To create an attribute transformation, go to the Key Figures tab in the Planning Areas app and select New
and Attribute Transformation.
3. Create a calculation to retrieve the attributes you have aggregated previously using the transformed
attribute.

Example: Time Period Shift

The following example of attribute transformation shows how to offset Actuals Qty by 12 months.

1. Create the new planning levels MTHPRODCUST and MTHPRODCUST1. (From the time dimension, this
planning level has only Month as a root attribute.)
2. Add a calculation for ACTUALSQTY@MTHPRODCUST that drops all the non-root time dimension attributes:
ACTUALSQTY@MTHPRODCUST = SUM(ACTUALSQTY@MTHQTRYEARPRODCUST).
3. Add a calculation that offsets the actuals quantity by a lead time value of 12 periods (here 12 months):
PERIODID0@MTHPRODCUST1 = PERIODID0 + 12
The attribute transformation has ACTUALSQTY@MTHPRODCUST as an additional input, which is the output
from step 2.
The input key figure is indirectly defined at the output planning level by the attribute transformation (step
3).
The key figure ACTUALSQTY@MTHPRODCUST now has the attribute transformation listed among its
calculation definitions, marked by the truck icon .

Model Configuration Guide


386 PUBLIC Advanced Modeling Topics
4. Add a calculation that assigns the shifted key figure values from Actuals Quantity to Actuals Quantity 1 Year
Offset:
ACTUALSQTY1YROFFSET@MTHPRODCUST1 = ACTUALSQTY@MTHPRODCUST1
5. Add a calculation to reinclude the other key figure time dimensions. (The input key figures are
ACTUALSQTY1YROFFSET@MTHQTRYEARPRODCUST and another key figure K3@MTHQTRYEARPRODCUST.):
ACTUALSQTY1YROFFSET@MTHQTRYEARPRODCUST = ACTUALSQTY1YROFFSET@MTHPRODCUST1

 Note

For K3@MTHQTRYEARPRODCUST, you can use any key figure that satisfies the condition, that is, a key
figure that has a planning level with at least Month, Quarter, and Year.

For this calculation to work, K3@MTHQTRYEARPRODCUST must have values for all attribute combinations for
all time periods to which ACTUALSQTY is shifted.
6. Save the calculation.
7. Activate your planning area.

 Note

If shifting a time period level would make the other time profile levels inconsistent, then aggregate the
affected time profile levels before creating attribute transformation. Afterwards, create a calculation to
retrieve the time profile levels you have aggregated previously using the transformed attribute. For
example, if you shift time period level MONTH with 1, then weeks cannot be shifted with 1 accordingly. In this
case, aggregate time period level WEEK before the attribute transformation, and then you can create a
calculation to retrieve the values for time period level WEEK after the transformation.

Example: Product Substitution

In this example, you use attribute transformation to implement product substitution. You have the following
planning levels and calculation in your planning model:

DAYPRODPRODTO: DAY, MONTH, QUARTER, YEAR, PRODUCTID, PRODUCTFAMILY,…, PRODUCTTO

DAYPRODPRODTO2: DAY, MONTH, QUARTER, YEAR, PRODUCTID, PRODUCTFAMILY,…, PRODUCTTO

PRODUCTID = PRODUCTTO(INPUTKF: KF1@DAYPRODPRODTO)

1. Aggregate the attributes below.


DAYPRODAGGPRODTO: DAY, MONTH, QUARTER, YEAR, PRODUCTID, PRODUCTTO
KF1@DAYPRODAGGPRODTO = SUM(KF1@DAYPRODPRODTO)

 Note

In this example, all the uploaded products belong to the same product family, that is PRODUCTFAMILY
is the same for all PRODUCTIDs. This way, PRODUCTFAMILY is not affected by attribute transformation,
that is, it will not change after PRODUCTID is transformed. This means that you do not have to
aggregate this attribute, and you will be able to filter for it.

It is always the responsibility of the modeling expert to ensure that the uploaded data complies with the
modeling requirements. That is, if an uploaded product belongs to a different product family, the
calculation will produce incorrect results in the example below.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 387
2. Create attribute transformation.
PRODUCTID@DAYPRODAGGPRODTO2 = PRODUCTTO(INPUTKF: KF1@ DAYPRODAGGPRODTO)
3. Retrieve the rest of the product-related attributes from another source
KF1@ DAYPRODPRODTO2 = KF1@DAYPRODAGGPRODTO2 (Additional input: DUMMYKF@PROD)

Related Information

Creating Time Profiles [page 40]


PERIODID and PERIODID(n) Attributes in Time Profile Levels [page 40]

28.5 Weighted Average Calculation

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

This example shows how to use request level calculations to achieve weighted averages.

This example for weighted average calculation is based on the calculation for consensus demand revenue:

Consensus Demand Revenue = Consensus Demand Qty * Unit Price

Weighted average calculation is an example of a calculation at request level. Unit Price is a weighted average of
Revenue and Qty. Unit Price is both a stored and an editable key figure.

Model Configuration Guide


388 PUBLIC Advanced Modeling Topics
Weighted Average Calculation of Unit Price

Example

Calculation of Actuals Price

Weighted average is used to calculate the actuals price at request level for the ACTUALSPRICE key figure, which
is a calculated key figure. (Such a key figure exists in the SAPIBP1 sample planning area.)

Replace the proposed calculation for ACTUALSPRICE@REQUEST with the following:


IF(ISNULL("HACTUALSQTY@REQUEST") OR "HACTUALSQTY@REQUEST" = 0 , 0,
"ACTUALSREV@REQUEST"/"HACTUALSQTY@REQUEST").

 Note

HACTUALSQTY is a helper key figure that is needed to handle the currency conversion.

Simplified Weighted Average Calculation

The weighted average function IBP_WEIGHTEDAVG has been introduced to simplify this rather complex
calculation.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 389
For more information, see Weighted Average [page 156].

28.6 Configuring Price and Cost for Currency and UoM


Conversions

Key figures such as Price and Cost are expressed as currency / unit of measure, for example, 10 USD / case.
When a user selects the target unit of measure or target currency, the value for the Price key figure changes
to correspond to the user’s selection. Price can be configured as follows in IBP:

● Stored key figure that can be maintained in IBP


● Calculated key figure based on Revenue and Quantity, both of which are stored

For both of the above options, the following aggregations are possible:

● Average
● Weighted average based on Revenue and Quantity, both of which have currency and unit of measure
conversions.

The base planning level for a Price key figure, for example, PERPRODCUSTCURR includes the base currency
and the base unit of measure from the Product master data type.

Sample Configuration for Price Key Figure with Conversions

The following table shows the Price key figure:

Key Figure Name Price

Key Figure ID PRICE

Base Planning Level PERPRODCUSTCURR

Convert Using EXCHANGERATEBYUOM

Aggregation: Average Price Calculation with Conversions

Set the aggregation mode for the key figure Price to Avg (Average). If the Price key figure is stored and
editable, the disaggregation mode is Copy.

Calculations:

● PRICE@REQUEST = AVG(PRICE@PERPRODCUSTCURRUOMFRTO)
● If Price is a stored key figure:
PRICE@PERPRODCUSTCURRUOMFRTO = PRICE@PERPRODCUSTCURR (stored) *
EXCHANGERATEBYUOM@PERPRODCUSTCURRUOMFRTO

Model Configuration Guide


390 PUBLIC Advanced Modeling Topics
● If Price is a calculated key figure based on Revenue (stored) and Qty (stored):
PRICE@PERPRODCUSTCURR = REVENUE@PERPRODCUSTCURR / QTY@PERPRODCUST
PRICE@PERPRODCUSTCURRUOMFRTO = PRICE@PERPRODCUSTCURR (calc) *
EXCHANGERATEBYUOM@PERPRODCUSTCURRUOMFRTO
Where EXCHANGERATEBYUOM@PERPRODCUSTCURRUOMFRTO = IF(UOMCONVFACTOR@PRDUOMTO =0 OR
EXCHGRATE@MTHCURRCURRTO = 0, NULL, EXCHGRATE@PERCURRFRTO /
"UOMCONVFACTOR@PRDUOMTO" )

Aggregation: Weighted Average Based on Revenue and Quantity with


Conversions

Set the aggregation mode of the key figure to CUSTOM. If the Price key figure is stored and editable, the
disaggregation mode is Copy.

Calculations:

● PRICE@REQUEST = HREVENUE@REQUEST / HQTY@REQUEST


Where REVENUE@REQUEST = SUM(REVENUE@PERPRODCUSTCURRFRTO)
● If Revenue is a stored key figure:
REVENUE@PERPRODCUSTCURRFRTO = REVENUE@PERPRODCUSTCURR(stored) *
EXCHANGERATE@PERCURRFRTO
● If Revenue is a calculated key figure based on Qty (stored) and Price (stored):
REVENUE@PERPRODCUSTCURR = QTY@PERPRODCUST (stored) * PRICE@PERPRODCUSTCURR (stored)
REVENUE@PERPRODCUSTCURRFRTO = REVENUE@PERPRODCUSTCURR (calc) *
EXCHANGERATE@PERCURRFRTO
QTY@REQUEST = SUM(QTY@PERPRODCUSTUOMTO)
QTY@PERPRODCUSTUOMTO = QTY@PERPRODCUST * UOMCONVFACTOR@PRODUOMTO
HREVENUE@REQUEST = SUM(HREVENUE@PERPRODCUSTCURRUOMFRTO)
HREVENUE@PERPRODCUSTCURRUOMFRTO = REVENUE@PERPRODCUSTCURRFRTO (Input :
QTY@PERPRODCUSTUOMTO)
HQTY@REQUEST = SUM(HQTY@PERPRODCUSTCURRUOMFRTO)
HQTY @PERPRODCUSTCURRUOMFRTO = QTY@PERPRODCUSTUOMTO (Input :
REVENUE@PERPRODCUSTCURRFRTO)

 Note

To avoid divide by zero conditions, check for ISNULL and 0 conditions.

Simplified Weighted Average Calculation

The weighted average function IBP_WEIGHTEDAVG has been introduced to simplify this rather complex
calculation.

For more information, see Weighted Average [page 156].

Model Configuration Guide


Advanced Modeling Topics PUBLIC 391
28.7 Split Factor Calculation

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

You use a split factor calculation when you want to show a key figure that is defined at an aggregated level at a
lower level of granularity. You do so by splitting the value for the aggregated key figure proportionally according
to the value for another key figure.

In this example, the key figure AggDemandQty, which is defined at planning level Product/Key Customer, is
to be disaggregated proportional to the SalesQty, which is defined at planning level Product/Customer. Using
split factor configuration, AggDemandQty, which is defined at aggregate level is available at detailed level
Product/Customer based on a proportional split of Sales Qty.

Imagine that the key customer group CG1 has achieved a sales quantity of 300 for product P1:

Product Key Cus­ Key Cus­ Key Fig­ Oct '14 Nov '14 Dec '14 Jan '15 Feb'15 March'15 ...
ID tomer tomer ID ure

P1 CG1 C1 AggDema 200 200 200 200 200 ...


ndQty

SalesQt 100 100 100 100 100


y

C2 AggDema 400 400 400 400 400 ...


ndQty

SalesQt 200 200 200 200 200


y

Steps

1. Add a helper key figure (for example, HSALESFCSTAGG) that aggregates SALESFORECASTQTY to planning
level PRODCUSTGRP. (You need a helper key figure because you cannot use the same key figure name twice
in a single calcuation.).

Model Configuration Guide


392 PUBLIC Advanced Modeling Topics
Calculation Definitions:
○ HSALESFCSTAGG@PERPRODCUST = “SALESFORECASTQTY@PERPRODCUST”
○ HSALESFCSTAGG@PERPRODCUSTGRP = SUM(“HSALESFCSTAGG@PERPRODCUST”)
2. Define the split factor:
HSPLITFACTORSALESQTY@PERPRODCUST = IF(ISNULL(“HSALESFCSTAGG@PERPRODCUSTGRP”)or
“HSALESFCSTAGG@PERPRODCUSTGRP = 0,0, SALESFORECASTQTY@PERPRODCUST /
HSALESFCSTAGG@PERPRODCUSTGRP”)
3. AGGDEMANDQTY@PERPRODCUST = “AGGDEMANDQTY@PERPRODCUSTGRP”*
HSPLITFACTORSALESQTY@PERPRODCUST
4. At request level, change the planning level for the input key figure AggDemandQty from @PERPRODCUSTGRP
to @PERPRODCUST,

28.8 Cross-Period Calculations


Cross-period calculation is a calculation which uses input from the previous periods. You can use, for example
the IBP_CAGGR (cumulative aggregation) function, to configure certain types of cross-period calculations in
one step.

You can define SUM, AVG, MIN, MAX, or COUNT calculations across periods by using the IBP_CAGGR (cumulative
aggregation) function.

 Caution

For the cumulative aggregation to calculate correct values, the input key figure must have values for all time
periods to be aggregated.

Make sure that key figure values exist for all periods to be aggregated. If this is not the case, upload NULL
values for the periods where key figure values are missing.

Only in cases when a calculation cannot be configured by using the available functions, you can submit a
request for L script.

Further examples of cross-period calculations:

● Cumulative Sum, Cumulative Average, Minimum or Maximum [page 394]


● Year-To-Date and Year-To-Go Calculations [page 396]
● Projected Stock Calculations [page 397]
● Cumulative Aggregation [page 137]
● Static Last Period Aggregation [page 139]
● Rolling Aggregation [page 143]
● Dynamic Rolling Aggregation [page 146]
● Period Shift [page 152]
● Coverage [page 162]

 Note

Cross-period calculations impose filter blocks in the calculation graph of a key figure, which might increase
the runtime of queries. For more information, see Filter Blocks [page 420].

Model Configuration Guide


Advanced Modeling Topics PUBLIC 393
Related Information

Simplified Key Figure Calculations [page 136]


SAP Note 2298382

28.8.1 Cumulative Sum, Cumulative Average, Minimum or


Maximum

Examples for calculating cumulative sum, cumulative average, or the minimum or maximum of key figure
values.

Use the IBP_CAGGR (cumulative aggregation) function to calculate the cumulative sum, cumulative average, or
the minimum or maximum of the key figure values.

 Caution

For cumulative aggregation to calculate correct values, the input key figure must have values for all time
periods to be aggregated.

Make sure that key figure values exist for all periods to be aggregated. If this is not the case, upload NULL
values for the periods where key figure values are missing.

Cumulative aggregation imposes filter blocks in the calculation graph of a key figure, which might increase
the runtime of queries. For more information, see Filter Blocks [page 420].

A cumulative aggregation calculates the sum or the average of the key figure values for the previous periods
and the current period, or finds the maximum or minimum of the values for the previous periods and the
current period. You can also provide a time profile level at which the cumulative aggregation should restart. For
example, you sum up monthly values within a quarter, but next quarter the sum should restart in the first
month of the quarter.

The IBP_CAGGR function has 4 mandatory and 1 optional parameters, as described in Cumulative Aggregation
[page 137]. Using the IBP_CAGGR function, you can define a cross-period calculation in one step.

Here are a few examples of parameter values of the IBP_CAGGR function, and the calculation results. In both
examples, time profile level 5 represents the quarter in the time profile assigned to the planning area, and
periods refer to months.

Example: Quaterly Cumulative Sum

In this example, we calculate the cumulative sum of monthly key figure values within a quarter.

Parameter Value

Input key figure DEMAND@PLIN

Model Configuration Guide


394 PUBLIC Advanced Modeling Topics
Parameter Value

Aggregation mode SUM

Direction FORWARD

Horizon PASTCURRENTFUTURE

Restart at 5

The IBP_CAGGR function executes the calculation like this:

Example: Quarterly Maximum

In this example, we calculate the maximum of monthly key figure values within a quarter.

Parameter / Calculation Value

Input key figure DEMAND@PLIN

Aggregation mode MAX

Direction FORWARD

Horizon PASTCURRENTFUTURE

Restart at 5

The IBP_CAGGR function executes the calculation like this:

Related Information

Cumulative Aggregation [page 137]

Model Configuration Guide


Advanced Modeling Topics PUBLIC 395
28.8.2 Year-To-Date and Year-To-Go Calculations

Examples for calculating year-to-date and year-to-go values using the IBP_CAGGR (cumulative aggregation)
function.

You can use the IBP_CAGGR (cumulative aggregation) function to calculate the sum of key figure values from
the beginning of the year up to the current period (year-to-date) in one step. Similarly, you can define a
calculation to calculate the sum of key figure values from the next period to the end of the year (year-to-go).
You can define similar calculations for quarters and other periods as well, by specifying a suitable value for the
fifth parameter (Restart At) of the IBP_CAGGR function.

 Caution

For cumulative aggregation to calculate correct values, the input key figure must have values for all time
periods to be aggregated.

Make sure that key figure values exist for all periods to be aggregated. If this is not the case, upload NULL
values for the periods where key figure values are missing.

Cumulative aggregation imposes filter blocks in the calculation graph of a key figure, which might increase
the runtime of queries. For more information, see Filter Blocks [page 420].

Here are a few examples of parameters values of the IBP_CAGGR function, and the calculation results. In the
example below, current period is period 6 (the 6th month of the calendar year), and time profile level 6
represents the year in the time profile assigned to the planning area.

Example

Year-To-Date

In this example, we calculate the cumulative sum of monthly key figure values from the start of the year up to
the current period. The output key figure is YTDATE_DEMAND@PLOUT.

Parameter Value

Input key figure DEMAND@PLIN

Aggregation mode SUM

Direction FORWARD

Horizon PASTCURRENT

Restart at 6

The FORWARD value of the 3rd parameter (direction) determines that the sum is calculated by taking the key
figure value in the first period, then in the next one. The PASTCURRENT value of the 4th parameter (horizon)
determines that the function doesn't calculate values beyond the current period.

Year-To-Go

Model Configuration Guide


396 PUBLIC Advanced Modeling Topics
In this example, we calculate the sum of monthly key figure values from the period after the current one up to
the last period of the calendar year. The output key figure is YTGO_DEMAND@PLOUT.

Parameter Value

Input key figure DEMAND@PLIN

Aggregation mode MAX

Direction BACKWARD

Horizon FUTURE

Restart at 5

The BACKWARD value of the 3rd parameter (direction) determines that the sum is calculated by taking the key
figure value in the last period within the year, then the key figure value in the previous period. The FUTURE value
of the 4th parameter (horizon) determines that the function doesn't calculate values for the current period and
for the periods earlier.

Sample Calculations

The IBP_CAGGR function executes the year-to-go and the year-to-date calculations like this:

Related Information

Cumulative Aggregation [page 137]

28.8.3 Projected Stock Calculations

Examples for calculating the projected stock using the IBP_CAGGR (cumulative aggregation) function.

The projected stock is the stock of a product that is expected to be available at the location at the end of a
period. From the value of this key figure, you can see how the demand/stock balance develops over time and
whether critical stock situations occur. You can use the IBP_CAGGR (cumulative aggregation) function to
calculate the projected stock.

 Caution

For cumulative aggregation to calculate correct values, the input key figure must have values for all time
periods to be aggregated.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 397
Make sure that key figure values exist for all periods to be aggregated. If this is not the case, upload NULL
values for the periods where key figure values are missing.

Cumulative aggregation imposes filter blocks in the calculation graph of a key figure, which might increase
the runtime of queries. For more information, see Filter Blocks [page 420].

Here are a few examples of parameter values of the IBP_CAGGR function specified for calculating the projected
stock, and the calculation results.

In the examples, the value of the initial stock is available from the INIT_STOCK@PLIN key figure. Demands are
available from DEMAND@PLIN, and receipts from RECEIPT@PLIN.

Example: Projected Stock with Negative Stock Carried Over

In this example, we get the projected stock by defining two calculations.

1. Calculating the monthly values of the SUM_DEM_RECPT@PLIN key figure by adding the receipts
(RECEIPT@PLIN) to the initial stock (INIT_STOCK@PLIN), and subtracting the demands (DEMAND@PLIN):
SUM_DEM_RECPT@PLIN = "INIT_STOCK@PLIN" + "RECEIPT@PLIN" - "DEMAND@PLIN"
This calulation is necessary because cumulative aggregation has only one input key figure.
2. Calculating the projected stock as the cumulative sum of SUM_DEM_RECPT@PLIN:
PROJ_STOCK@ PLOUT = IBP_CAGGR("SUM_DEM_RECPT@PLIN" , ''SUM'' , ''FORWARD'' ,
''PASTCURRENTFUTURE'')

Parameter Value

Input key figure SUM_DEM_RECPT@PLIN

Aggregation mode SUM

Direction FORWARD

Horizon PASTCURRENTFUTURE

Restart at (not provided)

The IBP_CAGGR function executes the calculation like this:

Example: Projected Stock Without Going Below Zero

In this example, we get the projected stock without going below zero by defining four calculations.

Model Configuration Guide


398 PUBLIC Advanced Modeling Topics
1. Calculating the monthly values of the SUM_DEM_RECPT@PLIN key figure by adding the receipts
(RECEIPT@PLIN) to the initial stock (INIT_STOCK@PLIN), and subtracting the demands (DEMAND@PLIN):
SUM_DEM_RECPT@PLIN = "INIT_STOCK@PLIN" + "RECEIPT@PLIN" - "DEMAND@PLIN"
This calulation is necessary because cumulative aggregation has only one input key figure.
2. Calculating the projected stock as the cumulative sum of SUM_DEM_RECPT@PLIN:
PROJ_STOCK_CARRY_OVER@PLOUT = IBP_CAGGR("SUM_DEM_RECPT@PLIN" , ''SUM'' ,
''FORWARD'' , ''PASTCURRENTFUTURE'')
3. Finding when the projected stock would go below zero by defining a cumulative aggregation for the
minimum value of PROJ_STOCK_CARRY_OVER@PLOUT:
MIN_TO_DATE_PROJ_STOCK@PLOUT = IBP_CAGGR("PROJ_STOCK_CARRY_OVER@PLOUT" ,
''MIN'', ''FORWARD'' , ''PASTCURRENTFUTURE'')
4. Defining a condition: going forward with the projected stock if the minimum value
(MIN_TO_DATE_PROJ_STOCK@PLOUT) is still positive, otherwise with the difference between the projected
stock and the minimum value.
PROJ_STOCK_NO_CARRY_OVER@PLOUT = IF("MIN_TO_DATE_PROJ_STOCK@PLOUT" > 0 ,
"PROJ_STOCK_CARRY_OVER@PLOUT" , "PROJ_STOCK_CARRY_OVER@PLOUT" -
"MIN_TO_DATE_PROJ_STOCK@PLOUT"

Parameter / Calculation Value for the First Cumulative Aggreation

Input key figure SUM_DEM_RECPT@PLIN

Aggregation mode SUM

Direction FORWARD

Horizon PASTCURRENTFUTURE

Restart at (not provided)

Parameter / Calculation Value for the Second Cumulative Aggreation

Input key figure PROJ_STOCK_CARRY_OVER@PLOUT

Aggregation mode MIN

Direction FORWARD

Horizon PASTCURRENTFUTURE

Restart at (not provided)

Model Configuration Guide


Advanced Modeling Topics PUBLIC 399
The calculations are executed like this:

Related Information

Cumulative Aggregation [page 137]

28.9 How to Enable Change History?

Enabling change history includes several mandatory and optional steps.

Enabling change history includes several steps:

1. First you need to enable change history for the planning area that contains the key figures for which you
want to track changes.
2. After that, you also need to enable those stored key figures for change history.
3. You then need to enable business users to view the different change history views. Business users can view
change history either in the SAP Integrated Business Planning, add-in for Microsoft Excel in, in the Change
History app, or in the Change History Analysis app. Depending on which view users should use, you need to
assign the corresponding business catalogs to their roles.
4. Optionally, you can decide if you want to track additional sources of change where non-interactive changes
can originate from using the Settings for Change History app.

Lifecycle Management of Historical Records

If you enable the change history, the system tracks changes made to a key figure, including any interactive
changes. If the key figure is version­specific, changes within the version are also tracked. Consequently, the
number of historical records in your system increases when you activate the change history. You therefore need

Model Configuration Guide


400 PUBLIC Advanced Modeling Topics
to schedule the Purge Change History Data job on a regular basis to delete outdated historical records. For
more information, see Data Lifecycle Management.

 Caution

Non-normalized systems (relevant for customers who started with IBP before the 1908 release)

In non-normalized systems, an increased number of historical records can impact system performance.
You therefore need to decide carefully which key figures and sources of change you want to enable change
history for. We recommend that you select a maximum of 3 key figures for change tracking. Especially in
non-normalized systems, it is vital that you schedule the Purge Change History Data job on a regular basis
to help avoid performance problems.

For more information about normalization, see SAP note 2885767 .

Change History for Calculated Key Figures

To be able to track changes to a calculated key figure correctly, you need to enable all stored key figure inputs
to that calculated key figure for change history. Otherwise, the effect of changes on the calculated key figure
may be incorrect.

 Example

You have the calculated key figure Revenue that depends on two stored key figures, Price and Quantity.

Let’s assume you have only enabled change history for the key figure Quantity, but not for Price. If the key
figure value for Price is changed from 1 to 2, that change cannot be captured. Therefore, the effect of the
change for Quantity on the calculated key figure Revenue is misleading: Instead of calculating 30*1, the
system calculates 30*2, and the result will be 60 instead of 30.

However, if you enable change history for both stored key figures Quantity and Price, the effect of the
changes to Quantity and Price are shown correctly. The system can use values of both the input key figures
and calculate 30*1 for Revenue as of change ID 2, and 30*2 for Revenue as of change ID 3.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 401
Related Information

Enabling Change History for Planning Areas [page 402]


Enabling Change History for Key Figures [page 403]
Enabling Users to View Change History [page 404]
Optional Settings for Change History [page 405]
Settings for Change History

28.9.1 Enabling Change History for Planning Areas

As a first step, you need to enable change history for a planning area.

Prerequisites

● You have access to the Planning Areas app.

Procedure

1. Open the Planning Areas app.


2. Select the planning area for which you want to enable change history.
3. Switch on change history in section Planning Area Settings.
4. Save your changes.

Model Configuration Guide


402 PUBLIC Advanced Modeling Topics
5. Activate the planning area.

Next Steps

As a next step, you need to enable the key figures of the planning area for which you want to track changes.

Related Information

Enabling Change History for Key Figures [page 403]

28.9.2 Enabling Change History for Key Figures

After you have enabled the change history for a planning area, you also need to enable it for the key figure of
that planning area that you want to track.

Prerequisites

● You have access to the Planning Areas app.


● You have enabled change history for a specific planning area.

Context

Change history tracks changes to stored key figures. Users can view the changes and their effects on a plan in
the IBP Excel add-in, or in the Change History app.

Procedure

1. In the Planning Areas app, choose the Key Figures tab.


2. Select the key figure for which you want to track data changes. Choose Edit.
3. Under Characteristics, select the Enable Change History checkbox.
4. Save your changes.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 403
Next Steps

You now need to enable users to view change history.

Related Information

Enabling Users to View Change History [page 404]

28.9.3 Enabling Users to View Change History

After you have enabled change history for a key figure and a planning area, you need to enable users to view
change history as a last step.

Prerequisites

● You have access to the Business User Roles app.


● You have enabled change history for a specific key figure and for the planning area this key figure belongs
to.

Procedure

1. Depending on where users work with change history, proceed as follows:

App Procedure

SAP Integrated Business Planning, add-in for Microsoft 1. In the Business User Roles app, assign the Basic
Excel Planning Tasks business catalog to the corresponding
business user role.
2. Maintain the restrictions for administration functions
for this business catalog:
○ To allow users to view the effects view, mark the
CHANGEHIST checkbox.
○ To allow users to view the original changes view,
mark the CHANGEORIG checkbox.
3. Save your changes.

Change History app, Change History Analysis app In the Business User Roles app, assign the Change History
business catalog to the corresponding business user role.

2. Independent of the app users work with, you also need to grant users read authorization for the key figures,
planning areas, and versions whose change history they should be able to view.

Model Configuration Guide


404 PUBLIC Advanced Modeling Topics
Next Steps

If required, you can now decide to configure additional optional settings for change history.

Related Information

Optional Settings for Change History [page 405]

28.9.4 Optional Settings for Change History

Once you have enabled change history, you can configure further optional settings if required.

Tracking Additional Sources for Non-Interactive Changes

If a key figure is enabled for change history, interactive changes are tracked by default and cannot be disabled.
For most cases, this is sufficient as the information which user changed a key figure and when is the most
valuable information. In contrast to this, the information about when a non-interactive change has happened is
in many cases not relevant.

However, if required, tracking can be switched on for sources of non-interactive changes. For a detailed list of
sources of change see What Does Change History Track?.

Tracking for the corresponding source of change can be done in the Settings for Change History app. Here you
can choose the relevant planning area and key figures that are enabled for change history. For each of those key
figures, you can select the sources of change that are relevant for that key figure.

 Caution

With each additional source of change that you track, the number of records in your system can increase
significantly, which can degrade your system's performance. We therefore recommend that you select
additional sources with caution.

Row Limit for Change History Results

By default, the row limit for the change history results shown in the SAP Integrated Business Planning, add-in
for Microsoft Excel and the Change History app depends on the MAX_RESULT_ROW_SIZE global configuration
parameter. This parameter is used for the planning view to restrict the maximum number of cells that can be
retrieved from the database for a key figure.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 405
If you want to define the row limit for change history independently from this parameter, you can set the
MAX_RESULT_LIMIT global configuration parameter. This allows you, for example, to display fewer rows for
change history than are defined by the MAX_RESULT_ROW_SIZE global configuration parameter.

Time Zone for Date and Time of Changes

Changes are captured with a time stamp in UTC time zone. Settings you made for the system time zone using
the global configuration parameter CURRENT_PERIOD_CALCULATION_TZ are not taken into account.

The Change History app can show the time stamp for changes in UTC time zone as well as in the business
user's local time zone. If you want users to be able to see the time stamp in their local time zone, you need to
maintain the time zone in the Maintain Business Users app.

For more information, see Change History (Deprecated).

Related Information

Settings for Change History

28.10 Setting up Change-History-Based Calculations

You can build change-history-based calculations on the key figure values in past data sharing events, or on the
values recorded in the change history of key figures.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

Regardless of where the historical data comes from, you make the same configuration steps to enable the
planning area for change-history-based calculations, to define the required planning levels, key figures, and
their calculations.

Model Configuration Guide


406 PUBLIC Advanced Modeling Topics
Procedure

1. Enable the planning area for change-history-based calculations.


2. Configure history-dependent key figure calculations.
3. Activate the planning area.

Related Information

Enabling Change-History-Based Calculations [page 407]


Configuring History-Dependent Key Figure Calculations [page 409]
Activation of a Planning Area Configured for Change-History-Based Calculations [page 411]
Change History for Key Figures
Change-History-Based Calculations
Sources of Historical Data
Tracking Your Shared Data

28.10.1 Enabling Change-History-Based Calculations

Use the change-history-based calculations feature to carry out calculations based on historical key figure
values.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

You have created a planning area with planning levels and key figures.

Procedure

1. Open the Planning Areas app.


2. Find the planning area that you want to enable for change-history-based calculations.
3. On the General tab, in the Planning Area Settings, enable the planning area for change history.
4. Select the Change-History-Based Calculations checkbox for the planning area.
5. Save your changes.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 407
6. Go to the Planning Levels tab.
7. Find the planning level that you want to use for change-history-based calculations and open it.
8. Under History Attributes, add the attributes you need.

 Note

These attributes are not listed in the Attributes app and you can't change them.

The following history and data sharing attributes are available:

Attribute ID Attribute Description Comment

S_CHANGEDBY Changed By ID of the user who changed the key


figure

TSCHANGEIDFR Change ID Corresponds to the existing Change


ID valid from column in key figure
value/time series table

TSCHANGEIDTO Change ID To Corresponds to the existing Change


ID valid to column in key figure value/
time series table. TSCHANGEIDTO =
-1 for current values

S_CHINPERIODID Changed in PERIODID Time of the change mapped to PERI­


ODID according to time profile defini­
tion

S_CHINPERIODIDx Changed in PERIODIDx Time level PERIODIDs corresponding


with S_CHPERIODID as defined in
time profile (S_CHPERIODID1,
S_CHPERIODID2, S_CHPERIODID3,
…)

S_DSPID Data Sharing Plan Data Sharing Plan ID

S_DSAID Data Sharing Arrangement Data Sharing Arrangement ID

S_DSEVENTID Data Sharing Event Data Sharing Event ID

9. Select the TSCHANGEIDFR attribute as a root.


10. Save your changes.

Related Information

Configuring History-Dependent Key Figure Calculations [page 409]


Activation of a Planning Area Configured for Change-History-Based Calculations [page 411]
Change History for Key Figures

Model Configuration Guide


408 PUBLIC Advanced Modeling Topics
Change-History-Based Calculations
Tracking Your Shared Data
Sources of Historical Data

28.10.2 Configuring History-Dependent Key Figure


Calculations

Set up key figures so that you can calculate and view their values based on the past values of the input.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

Context

To be able to capture the changed key figure values or shared key figure values, you must either change the
settings of the key figure, or create a dedicated stored key figure as the counterpart of the key figure whose
changes or shared values you want to record (the base key figure).

Procedure

1. Open the Key Figures tab of the planning area in the Planning Areas app.
Decide if you need a dedicated key figure to record the changes, or to track the shared values.
○ For recording the change history of a key figure, you don't need to set up a dedicated key figure.
○ In case of tracking past data sharing events, for each published key figure that you want to track, you
have to define a corresponding history key figure that is change-history enabled.
○ For received key figures, you have two options.
If you want to track the changes of the received values, create a dedicated history key figure. Using this
approach, IBP segregates the values that were received from your supplier (these values are captured in
the dedicated history key figure) and the values that were entered by a user (changes done directly to the
key figure to be tracked).
If you rather want to track all changes to the values of the key figure, no matter if your supplier changed it
or a user at your company, use the key figure itself for tracking.
2. If you're creating a dedicated key figure, choose New.
a. Enter a key figure ID, and select a base planning level from the list.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 409
We recommend that you add a suffix, such as DS or CHG, to the ID of the base key figure, and use it as
the ID of the history-enabled key figure.

Select the same base planning level as the key figure to be tracked has.
b. Fill out the characteristics as required.

Make sure you set the key figure as Stored and select the Enable Change History checkbox.

The dedicated history key figure and the key figure to be tracked must have the same base planning
level.

For Edit Allowed, choose System Editable.


c. Add a calculation at request level. Add additional calculations if needed.

For the key figure at a history planning level, both Select as Input and Stored Value must be selected.
With that, the history attributes and data sharing attributes the planning level contains will be available
for calculations, aggregation, and disaggregation.

A key figure can be an input at a history planning level only if the history planning level is compatible
with the base planning level of the input key figure. That is, the history planning level must contain
exactly the same set of attributes that the base planning level of the key figure contains, plus the
history attributes, and, optionally, the data sharing attributes. The history planning level must have the
same root attributes as the base planning level, plus the TSCHANGEIDFR history attribute.
d. Save your changes.
3. If you use the key figure itself to track the changes, make sure that the required settings are made for the
key figure.
○ The key figure must be stored and the Enable Change History checkbox must be selected.
○ You have added calculations at history planning levels.

Related Information

Key Figure Calculations [page 119]


Creating Key Figures [page 99]
Change History for Key Figures
Change-History-Based Calculations
Sources of Historical Data
Tracking Your Shared Data

Model Configuration Guide


410 PUBLIC Advanced Modeling Topics
28.10.3 Activation of a Planning Area Configured for Change-
History-Based Calculations

A list of additional checks that run when you perform a consistency check on a planning area that is enabled for
change-history-based calculations, or you activate such a planning area.

When you start the consistency check or the activation of a planning area that is enabled for change-history-
based calculations, the system performs the following checks on the planning area and on the model entities
that are activated together with a planning area (planning levels, key figures, and versions):

● Checks for the definition of the planning area


○ The planning area must be enabled for change history.
○ A version cannot contain a key figure that is enabled for change history.
● Checks for the planning levels
○ A planning level can contain history attributes only if the planning area is enabled for change-history-
based calculations.
○ Stored key figures cannot have a base planning level that contains history attributes or data sharing
attributes.
● Checks for the calculations of key figures
○ A key figure can be a stored input at a history planning level only if this input key figure is enabled for
change history.
○ A key figure can be a stored input at a history planning level only if the TSCHANGEIDFR attribute is set
to root.
○ A key figure can be an input at a history planning level only if the history planning level is compatible
with the base planning level of the input key figure.
The history planning level is compatible with the base planning level if it contains exactly the same set
of attributes that the base planning level of the key figure contains, plus the history attributes. The
history planning level must have the same root attributes as the base planning level, plus the
TSCHANGEIDFR history attribute.

You can activate a planning area that is enabled for change-history-based calculations only if – on top of the
general checks – all of the above listed checks are successful.

Related Information

Change-History-Based Calculations
Change History for Key Figures

Model Configuration Guide


Advanced Modeling Topics PUBLIC 411
28.11 Configuring Period-to-Period Comparison with Time
Profile Attributes

When you create a custom alert definition, normally you can only use one time attribute at the calculation level.
If you want to set up alerts to compare key figures across different time periods, you can configure time profile
attributes to facilitate period to period comparison.

Prerequisites

Make sure you have the necessary authorizations for this activity, that is, the business catalogs required for
this activity are assigned to a business role that is assigned to your business user. For more information see the
SAP Help Portal at http://help.sap.com/ibp, under Application Help for SAP Integrated Business Planning
Identity and Access Management Basic Concepts Business Catalogs .

You have already created a planning area and added all the master data types you want to use for the
comparison.

Context

Period to period comparison enables year to year comparison of actuals grouped by month or quarter as well
as quarter to quarter comparison of sales forecast quarterly, grouped by month in quarter.

Procedure

1. In the Attributes app, create the MONTHINQTY, MONTHNAME and PERIODNAME attributes.

All three attributes are of the NVARCHAR data type with a length of 20.
2. In the Time Profiles app, find the time profile assigned to your planning area and add the new attributes to
the lowest time profile level or to the time profile level at which the key figure you want to compare is stored
or calculated.

In this example, we want to create and compare the key figure ACTUALSQTY, which is calculated at the
monthly level. Assign the MONTHINQTY, MONTHNAME, and PERIODNAME attributes to the month level or
lower.
3. On the Planning Levels tab of the Planning Areas app, create the MTHPROD base planning level and add the
time profile attributes to this planning level.
4. On the Key Figures tab of the Planning Areas app, create the ACTUALSQTY key figure.

Enter the following details for the key figure:


○ Name: Actuals Qty
○ Description: Actuals Qty

Model Configuration Guide


412 PUBLIC Advanced Modeling Topics
○ Base planning level: MTHPROD
○ Aggregation mode: Sum
○ Disaggregation Mode: Equal
○ Stored: Yes
○ Edit Allowed: Editable in the Past
○ Calculation Definition: ACTUALSQTY@REQUEST = SUM("ACTUALSQTY@MTHPROD")
5. Activate the planning area with the dependent time profile and master data types.

Model Configuration Guide


Advanced Modeling Topics PUBLIC 413
29 Naming Conventions of Model Entities

The IDs of model entities must meet certain requirements.

When you create a new model entity, make sure that you observe the following rules when you select an ID for
the item.

Attribute ID

Attribute IDs can:

● be up to 32 characters long
● contain numbers and letters
● only start with a letter

Master Data Type ID

Master data type IDs can:

● be up to 32 characters long
● contain numbers and letters
● only start with a letter

Time Profile ID

Time profile IDs can:

● be up to 32 characters long
● only be positive integers

Planning Area ID

Planning area IDs can:

● be up to 10 characters long
● contain numbers and letters
● only start with a letter

Model Configuration Guide


414 PUBLIC Naming Conventions of Model Entities
Planning Level ID

Planning level IDs can:

● be up to 32 characters long
● contain numbers and letters
● only start with a letter

Key Figure ID

Key figure IDs can:

● be up to 32 characters long
● contain numbers and letters
● only start with a letter

Version ID

Version IDs can:

● be up to 10 characters long
● contain numbers and letters
● only start with a letter

29.1 Reserved Names and Naming Restrictions

Strings that have a special significance in SAP Integrated Business Planning mustn’t be used for IDs or values
of modeling entities.

Reserved Names

Do not use the IDs, names, descriptions, and values listed below when configuring and using your planning
model.

IDs for Attributes and for Key Figures


For attributes and key figures, don’t use any of the following IDs:

BASEPERIOD LASTMODIFIEDDATE PLANSESSION

Model Configuration Guide


Naming Conventions of Model Entities PUBLIC 415
BATCH LASTMODIFIEDEXT PLCHANGEIDFR

CACHEID MODIFIEDBY PLCHANGEIDTO

CHANGEID MODIFIEDDATE PLEVELID

CHID MSGID PLOBJCOUNT

CID MSGV1 PLOBJID

COMMENT MSGV2 REFDATE

COPYINDEX MSGV3 REVISIONDATE

DSID MSGV4 SCNID

DUMMY NEWVALUE SCNNAME

FILENAME NULL SCNNUM

FROM OBJECTID SETTINGSID

GROUP OBJECTNAME SIMID

ID OLDVALUE SUBCHANGEID

IDX PERIODDESCR TSCHANGEIDFR

KEYFIGUREDATE PERIODID TSCHANGEIDTO

KFID PERIODID(n) TXNID

LASTMODIFIEDBY PERIODLEVEL

IDs for Planning Levels


Do not create a planning level with any of the following IDs:

● STOREDVALUES
● SCMRESTRICTFILTER
● REQUEST

Attribute Values
When uploading data, you cannot use the following values for the attribute:

● NONE
● ALL
● BASELINE
● REALTIME

Model Configuration Guide


416 PUBLIC Naming Conventions of Model Entities
Naming Restrictions

Attributes
When you create attributes, do not create attributes that have any of the following dependencies between their
IDs:

ID of Attribute 1 ID of Attribute 2 Example

<ATTRIBUTEID> <ATTRIBUTEID>+A BATCH and BATCHA

<ATTRIBUTEID> <ATTRIBUTEID>+NUM BATCH and BATCHNUM

<ATTRIBUTEID> <ATTRIBUTEID>+ID BATCH and BATCHID

<ATTRIBUTEID>+ID <ATTRIBUTEID>+NUM BATCHID and BATCHNUM

Key Figures
Both the key figure ID and the key figure name must be unique within a planning area.

Attributes, Key Figures, and Versions


Within a planning area, the attribute ID, key figure ID, and version ID must all be unique values.

Model Configuration Guide


Naming Conventions of Model Entities PUBLIC 417
30 Monitoring and Troubleshooting

Once you have your planning models up and running, you might want to monitor and check your processes
every now and then. In this section, you can find useful techniques for monitoring your planning models,
investigating possible issues and implemeting best practices to avoid such matters in the future.

30.1 Where-Used Graphs

Key figure calculations can be represented in calculation graphs, which help you to get an overview of a key
figure's complete graph. A calculation graph displays a key figure's calculation definitions at different planning
levels, and their input-output relationships. In addition to that, key figure calculations can also be represented
in where-used graphs, which help you to get an overview of dependencies between calculations. A where-used
graph displays all the calculations that use a specific calculation as a direct or indirect input.

By loading a calculation's where-used graph, you can display all key figures and calculations that are
dependent on the calculation you have selected. This is especially useful when you change a calculation and
you would like to see which other calculations are affected by this change. Also, if a key figure calculation
consumes significant resources, you might want to know which request level calculations use the calculation in
question.

To display the where-used graph of a calculation, first you need to put the calculation into focus, and then you
can load the graph. To do so, follow the steps below.

1. Call up the Key Figure Calculations app.


2. Select a planning area and a key figure, then choose Go to display the calculation graph first.
3. Select the calculation you want to put into focus and load its where-used graph.
You have three options to display the where-used graph of a calculation:
○ On the Calculation Graph tab, select the node that contains the calculation you want to put in focus,
and then choose the Put into Focus and Load Where-Used Graph button (  ).
○ On the Calculation Graph tab, select the node that contains the calculation you want to put in focus and
load the where-used graph for, and then go to the Where-Used Graph tab.
○ On the Where-Used Graph tab, select the node that contains the calculation you want to put in focus,
and then choose the Put into Focus and Load Where-Used Graph button (  ).
4. Select from the dropdown whether you want to display the root attributes or the calculations in the nodes
of the graphs.

As a result, the selected calculation is put into focus (indicated by a purple background and dotted line). You
can now see all calculations that use the selected calculation as a direct input, as well as the direct inputs of the
calculation.

The three dots on the upper left corner of a node indicate that there are further nodes above or below the node.

Model Configuration Guide


418 PUBLIC Monitoring and Troubleshooting
 Note

When loading a where-used graph, please keep in mind that selecting a node does not put it into focus. You
need to select it and choose the Put into Focus and Load Where-Used Graph button (  ) to do so.

You can now select the calculation in focus and choose the Expand/Collapse All buttons to expand the graph,
and load all calculations that are built on the selected calculation and all inputs of the calculation you have
selected. By doing so, eventually you can display all key figures that are dependent on this calculation and all
the inputs of the selected calculation. By expanding and collapsing a graph, you will not change the focus.
Navigating with the Expand/Collapse All buttons, you can simply explore the where-used graph of the
calculation you have put into focus previously.

To get a list of all key figures that are dependent on the selected calculation, choose the Export Where-Used
Graph to Excel button (  ).

You have the option to share the graph you have just loaded with your colleagues. Choose the Share button
(  ), and send the URL of the current screen via email or save the graph as a tile. You can also copy the URL
directly from your browser and share the graph with others.

If you are interested in the where-used graph of another calculation in the graph, select the node that contains
the calculation and choose the Put into Focus and Load Where-Used Graph button (  ). Again, you can expand
and collapse the graph as you wish, and export the where-used graph to an Excel.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 419
30.2 Filter Blocks

SAP IBP usually works with huge data volumes, as planning models can easily contain hundreds of millions of
data records in the database tables. To enhance performance, queries are typically filtered. The most common
way to do so is to specify and use filters in SAP Integrated Business Planning, add-in for Microsoft Excel (SAP
IBP, add-in for Microsoft Excel) or the Planning Filters app. This reduces data volume in key figure calculations
and speeds up queries. For more information about filters, see Filters in Planning Views.

Key figure calculations can be represented in calculation graphs, which you can display in the Key Figure
Calculations app. When filters are used, all attributes are filtered as early in the calculation chain as possible,
ideally at the level of stored key figures. This ensures that data volume is reduced and calculations can be
performed on a filtered set of data. However, some modeling techniques prevent filtering on the level of stored
key figures by imposing - so-called - filter blocks on certain attributes in certain calculations. A filter block is
required for these calculations so that they provide correct results. By displaying where filter blocks might
occur in your calculation graphs, you can get a better understanding of how to filter data more effectively and
improve the performance of your queries.

You can view these filter blocks in the Key Figure Calculations app. Select a planning area and a key figure, then
choose Go to display the calculation graph. Choose the Filter Blocks tab and select Show All Attributes from the
dropdown to display attributes where filter blocks are raised, as well as attributes where filtering is possible. If
you are only interested in attributes that might cause filter blocks, select the Only Direct Filter Block Attributes
option from the dropdown. On the other hand, if you are looking for effective filters, select Only Filter Attributes.

Calculation graphs usually contain a huge number of attributes. We suggest that you only display filter blocks
and effective filtering possibilities for those attributes that you actually use for filtering in SAP IBP, add-in for
Microsoft Excel. If an attribute is not used as a filter in your Microsoft Excel template, it will not create a filter
block during the calculation, so it will not cause performance issues. Filter blocks affect performance only if the
attribute in questions is used for filtering. You can select the attributes to be displayed by choosing Select
Attributes and making your selection on the pop-up screen. This way, you can only see filtering information for
the selected attributes, and you can easily navigate in the graph as well.

To learn about the details and causes of the filter blocks, click on an attribute for which a filter block exists or
display the node info.

In the example below, there are no filter blocks at all, all nodes are green. It means that you can filter for all
attributes at the level of the stored key figure. This is the most effective way of filtering, as all the calculations in
the graph can be performed on a filtered set of data.

Model Configuration Guide


420 PUBLIC Monitoring and Troubleshooting
In the next example, there are several filter blocks, indicated with red nodes.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 421
We differentiate between direct filter blocks and inherited filter blocks. In the case of direct filter blocks,
filtering of attributes is blocked by the actual calculation, for example, by an attribute transformation. In this
case, filtering can only happen after the calculation has been performed. Inherited filter block means that
filtering of attributes is blocked by calculations that are built on the calculation in question. In both cases, you
cannot filter effectively, calculations are performed on large sets of data, and you might run into performance
issues.

In the example above, there is a direct block for LOCTYPE because of an attribute transformation.
Consequently, all occurrences of LOCTYPE have an inherited filter block in all the calculations that are below in
the calculation graph.

Also, you can see attributes, for example, LOCID, that act as filter blocks and filters as well within the same
node. This means that LOCID imposes a filter block before the calculation; however, it can be used for filtering

Model Configuration Guide


422 PUBLIC Monitoring and Troubleshooting
on the output of the calculation. As a result, data volume on which the calculation is performed cannot be
reduced, LOCID can only be an effective filter from the next calculation on.

Calculations that Cause Filter Blocks

Attribute transformation is a typical example of calculations that impose filter blocks.

Time Attribute Transformation


In the case of time attribute transformation, we shift the value of an attribute by a lead time. Before shifting the
time attribute, we need to drop all other time attributes with an aggregation. This is to ensure that these
attributes will stay consistent after the transformation. However, it means that we cannot filter for these
attributes, that is, attribute transformation creates a filter block for them. This filter block is not only present in
the actual transformation, but in all calculations that are below it in the calculation graph.

Master Data Transformation


In the case of master data transformation, we shift the value of an attribute to another attribute. Again, before
shifting the value of an attribute, we need to drop all other attributes that will not be directly transformed, but
they are affected by the attribute transformation. This ensures that these attributes will stay consistent, but it
means that the transformation creates a filter block for them.

For more information about attribute transformation, see Attribute Transformations [page 385].

Cross-Period Calculations
In the case of cross-period calculations (for example, rolling aggregation, cumulative aggregation, L-script
calculations etc.), when we retrieve data for one time period, the actual calculation happens across several
time periods. Since these calculations use input from several time periods, there is a filter block for all the time
attributes involved. The only exception is the new dynamic last period aggregation (IBP_LPA), which does not
impose a filter block on the time attributes. For that reason, we suggest that you use the dynamic IBP_LPA
function, instead of the old time attribute transformation. For more information, see Last Period Aggregation
[page 139].

For more information about cross-period calculations, see Cross-Period Calculations [page 393].

30.2.1 Example: Time Attribute Transformation

In this example, the calculation of the KF1OFFSET key figure takes a lot of time, Microsoft Excel templates are
loading very slowly. To investigate what the problem might be, let's call up the Key Figure Calculations app and
search for the KF1OFFSET key figure. By checking the calculation graph of the key figure, we learn that the
graph contains a time attribute transformation, which imposes filter blocks and probably causes the
performance issues. To analyze and fix this problem, follow the steps below.

1. Open the Key Figure Calculations app, select your planning area and key figure (KF1OFFSET in this case),
and then choose Go.
The calculation graph of the key figure is loaded.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 423
2. Choose the Calculations tab first to get an overview of the calculations in the graph.

Here, you can see that there is a time attribute transformation: PERIODID0@PERPRODLOC1SHIFT =
"PERIODID0" + 1. The period is shifted with one technical week. To ensure the consistency of this
calculation, all the other time attributes are dropped with the aggregation KF1@PERPRODLOC1 =
SUM( "KF1@PERPRODLOC") and removed from the planning level. After the transformation, they are
returned with an inner join.
3. Now, choose the Filter Blocks tab and select the Show All Attributes option from the dropdown.

Model Configuration Guide


424 PUBLIC Monitoring and Troubleshooting
You can see that filter blocks are imposed on the following time attributes: PERIODID0, PERIODID1,
PERIODID2, and PERIODID3 throughout almost the complete calculation graph. Filtering for PERIODID0
is directly blocked because of the time attribute transformation. Additionally, it entails an inherited filter
block on this attribute in all the calculations below the attribute transformation. Filtering for PERIODID1,
PERIODID2, and PERIODID3 is directly blocked because of the inner join that returns these attributes
after the transformation. Again, filter blocks are applied on these attributes in all the calculations that are
below in the graph.
Since there are several direct and inherited filter blocks in this calculation graph, you can only filter for time
attributes at a later step of the calculation processing (after the time attribute transformation). This means
that you can only reduce data volume almost at the very end of the calculation chain, that is, the query of
KF1OFFSET will probably take a lot of time.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 425
4. To improve performance and speed up your query, follow the recommendations below:
○ Use those attributes for filtering that can already be used for filtering at the level of the stored key
figure.
To find efficient filter attributes, select the Only Filter Attributes option from the dropdown. Look for
attributes that can be used for filtering at the level of the stored key figure.
For example, if planners are responsible for certain products or locations only, they can use the PRDID
or LOCID attribute for filtering. This is a very effective way of filtering, since it reduces data volume
right from the beginning of the calculation chain. Calculations will be performed on a smaller set of
data and most probably will result in performance improvements.
○ Consider simplifying the calculations below the time attribute transformation. This way you can avoid
peforming complex calculations on large data volumes and you can ensure that unfiltered data is
processed as quickly as possible.
○ Separate those key figures into different planning view templates (in SAP IBP, add-in for Microsoft
Excel) that cannot be filtered, and thus queried effectively together.
While filtering for an attribute might prove to be effective for several key figures, it might result in filter
blocks in case of other key figures. For example, a master data attribute can act as an effective filter in
case of key figures that have time attribute transformation in their calculation graphs. However, in case
of key figures that have master data transformation in their calculation graphs, there might be filter
blocks on the very same master data attribute. Seperate these key figures into different planning view
templates, or make these key figures independent from each other by duplicating the commonly used
calculations.

30.2.2 Example: Master Data Attribute Transformation

In this example, the calculation of the ACTUALSQTY key figure takes a lot of time, Microsoft Excel templates are
loading very slowly. To investigate what the problem might be, let's call up the Key Figure Calculations app and
search for the ACTUALSQTY key figure. By checking the calculation graph of the key figure, we learn that the
graph contains a master data transformation, which imposes filter blocks and probably causes the
performance issues. To analyze and fix this problem, follow the steps below.

1. Open the Key Figure Calculations app, select your planning area and key figure (ACTUALSQTY in this case),
and then choose Go.
The calculation graph of the key figure is loaded.
2. Choose the Calculations tab first to get an overview of the calculations in the graph.

Model Configuration Guide


426 PUBLIC Monitoring and Troubleshooting
Here, you can see that there is a master data transformation: LOCID@MTHPRODLOCSHIFT = "LOCFR".
The LOCID master data will have the value of the LOCFR master data. To ensure the consistency of this
calculation, all the other location attributes are dropped with the aggregation
ACTUALSQTY@MTHPRODLOCSHIFT1 = SUM("ACTUALSQTY@MTHPRODLOC") and removed from the
planning level. After the transformation, they are returned with an inner join.
3. Now, choose the Filter Blocks tab and select the Show All Attributes option from the dropdown.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 427
You can see that filter blocks are imposed on the following location attributes: LOCID, ATDREGION,
LOCTYPE, and REGION throughout almost the complete calculation graph. Filtering for LOCID is directly
blocked because of the attribute transformation. Additionally, it entails an inherited filter block on this
attribute in all the calculations below the attribute transformation. Filtering for ATDREGION, LOCTYPE, and
REGION is directly blocked because of the inner join that returns these attributes after the transformation.
Again, filter blocks are applied on these attributes in all the calculations that are below in the graph.
Since there are several direct and inherited filter blocks in this calculation graph, you can only filter for
location attributes at a later step of the calculation processing (after the master data attribute
transformation). This means that filtering for location attributes can only reduce data volume almost at the
very end of the calculation chain, that is, the query of ACTUALSQTY will probably take a lot of time.

Model Configuration Guide


428 PUBLIC Monitoring and Troubleshooting
4. To improve performance and speed up your query, follow the recommendations below:
○ Use those attributes for filtering that can already be used for filtering at the level of the stored key
figure.
To find efficient filter attributes, select the Only Filter Attributes option from the dropdown. Look for
attributes that can be used for filtering at the level of the stored key figure.
For example, if planners are responsible for certain products or product families only, they can use the
product attributes (PRDFAMILY and PRDID) for filtering. This is a very effective way of filtering, since it
reduces data volume right from the beginning of the calculation chain. Calculations will be performed
on a smaller set of data and most probably will result in performance improvements.
○ Before shifting a key figure, do not aggregate those attributes that will not change due to the attribute
transformation. By doing so, planners can use them for filtering right from the beginning of the
calculation chain.
For example, if planners are responsible for locations that all belong to the same region, do no
aggregate REGION. This way they can filter for the region they are responsible for and speed up the
queries.
Please note that it is always the responsibility of the modeling expert to ensure that the uploaded data
complies with the modeling requirements. That is, if planners are responsible for locations that belong
to a different region, the calculation will produce incorrect results.
○ Consider simplifying the calculations below the master data transformation. This way you can avoid
peforming complex calculations on large data volumes and you can ensure that unfiltered data is
processed as quickly as possible.
○ Separate those key figures into different planning view templates (in SAP IBP, add-in for Microsoft
Excel) that cannot be filtered, and thus queried effectively together.
While filtering for an attribute might prove to be effective for several key figures, it might result in filter
blocks in case of other key figures. For example, a time attribute can act as an effective filter in case of
key figures that have master data transformation in their calculation graphs. However, in case of key
figures that have time attribute transformation in their calculation graphs, there might be filter blocks
on the very same time attribute. Seperate these key figures into different planning view templates, or
make these key figures independent from each other by duplicating the commonly used calculations.

30.2.3 Example: Cumulative Aggregation

In this example, the calculation of the CKF03CAGGR key figure takes a lot of time, Microsoft Excel templates are
loading very slowly. To investigate what the problem might be, let's call up the Key Figure Calculations app and
search for the CKF03CAGGR key figure. By checking the calculation graph of the key figure, we learn that the
graph contains a cross-period calculation, which imposes filter blocks and probably causes the performance
issues. To analyze and fix this problem, follow the steps below.

1. Open the Key Figure Calculations app, select your planning area and key figure (CKF03CAGGR in this case),
and then choose Go.
The calculation graph of the key figure is loaded.
2. Choose the Calculations tab first to get an overview of the calculations in the graph.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 429
Here, you can see that there is cumulative aggregation: CKF03CAGGR@MTHPRODLOC =
IBP_CAGGR("SKF01@MTHPRODLOC" , 'MIN' , 'FORWARD' , 'FUTURE'). This is a cross-period
calculation, where the calculation of a key figure value uses values from several time periods. Due to the
cross-period nature of this calculation, you cannot filter for the time attributes before the calculation is
performed, only after it.
3. Now, choose the Filter Blocks tab and select the Show All Attributes option from the dropdown.

Model Configuration Guide


430 PUBLIC Monitoring and Troubleshooting
You can see that due to the cumulative aggregation filter blocks are imposed on all the time attributes
(PERIODID0, PERIODID1, and PERIODID2) throughout almost the complete calculation graph.
Additionally, inherited filter blocks are raised for these attributes in all the calculations below the
cumulative aggregation. Filter blocks are required because the calculation uses inputs from various time
periods.
Since there are several direct and inherited filter blocks in this calculation graph, you can only filter for time
attributes after the cumulative aggregation has been performed. This means that filtering for time
attributes can only reduce data volume almost at the very end of the calculation chain. That is, the query of
CKF03CAGGR will operate on a large data volume and, probably will take a lot of time.
4. To improve performance and speed up your query, follow the recommendations below:
○ Use those attributes for filtering that can already be used for filtering at the level of the stored key
figure.
To find efficient filter attributes, select the Only Filter Attributes option from the dropdown. Look for
attributes that can be used for filtering at the level of the stored key figure.
For example, if planners are responsible for certain products or locations only, they can use the PRDID
or LOCID attribute for filtering. This is a very effective way of filtering, since it reduces data volume
right from the beginning of the calculation chain. Calculations will be performed on a smaller set of
data and most probably will result in performance improvements.
○ Consider simplifying the calculations below the cumulative aggregation. This way you can avoid
peforming complex calculations on large data volumes and you can ensure that unfiltered data is
processed as quickly as possible.
○ Separate those key figures into different planning view templates (in SAP IBP, add-in for Microsoft
Excel) that cannot be filtered, and thus queried effectively together.
While filtering for an attribute might prove to be effective for several key figures, it might result in filter
blocks in case of other key figures. For example, a master data attribute can act as an effective filter in
case of key figures that have cross-period calculation in their calculation graphs. However, in case of
key figures that have master data transformation in their calculation graphs, there might be filter
blocks on the very same master data attribute. Seperate these key figures into different planning view
templates, or make these key figures independent from each other by duplicating the commonly used
calculations.

Model Configuration Guide


Monitoring and Troubleshooting PUBLIC 431
Important Disclaimers and Legal Information

Hyperlinks
Some links are classified by an icon and/or a mouseover text. These links provide additional information.
About the icons:

● Links with the icon : You are entering a Web site that is not hosted by SAP. By using such links, you agree (unless expressly stated otherwise in your
agreements with SAP) to this:

● The content of the linked-to site is not SAP documentation. You may not infer any product claims against SAP based on this information.
● SAP does not agree or disagree with the content on the linked-to site, nor does SAP warrant the availability and correctness. SAP shall not be liable for any
damages caused by the use of such content unless damages have been caused by SAP's gross negligence or willful misconduct.

● Links with the icon : You are leaving the documentation for that particular SAP product or service and are entering a SAP-hosted Web site. By using such
links, you agree that (unless expressly stated otherwise in your agreements with SAP) you may not infer any product claims against SAP based on this
information.

Videos Hosted on External Platforms


Some videos may point to third-party video hosting platforms. SAP cannot guarantee the future availability of videos stored on these platforms. Furthermore, any
advertisements or other content hosted on these platforms (for example, suggested videos or by navigating to other videos hosted on the same site), are not within
the control or responsibility of SAP.

Beta and Other Experimental Features


Experimental features are not part of the officially delivered scope that SAP guarantees for future releases. This means that experimental features may be changed by
SAP at any time for any reason without notice. Experimental features are not for productive use. You may not demonstrate, test, examine, evaluate or otherwise use
the experimental features in a live operating environment or with data that has not been sufficiently backed up.
The purpose of experimental features is to get feedback early on, allowing customers and partners to influence the future product accordingly. By providing your
feedback (e.g. in the SAP Community), you accept that intellectual property rights of the contributions or derivative works shall remain the exclusive property of SAP.

Example Code
Any software coding and/or code snippets are examples. They are not for productive use. The example code is only intended to better explain and visualize the syntax
and phrasing rules. SAP does not warrant the correctness and completeness of the example code. SAP shall not be liable for errors or damages caused by the use of
example code unless damages have been caused by SAP's gross negligence or willful misconduct.

Gender-Related Language
We try not to use gender­specific word forms and formulations. As appropriate for context and readability, SAP may use masculine word forms to refer to all genders.

Model Configuration Guide


432 PUBLIC Important Disclaimers and Legal Information
Model Configuration Guide
Important Disclaimers and Legal Information PUBLIC 433
www.sap.com/contactsap

© 2021 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. The information contained herein may be changed
without prior notice.

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 are provided by SAP SE or an SAP affiliate company for


informational purposes only, without representation or warranty of any
kind, and SAP or its affiliated companies shall not be liable for errors or
omissions with respect to the materials. The only warranties for SAP 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.

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. All
other product and service names mentioned are the trademarks of their
respective companies.

Please see https://www.sap.com/about/legal/trademark.html for


additional trademark information and notices.

THE BEST RUN

You might also like