sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

797
BPC420 SAP BusinessObjects Planning and Consolidation, Version for SAP NetWeaver: Administration SAP BusinessObjects - Financial Performance Management Date Training Center Instructors Education Website Participant Handbook Course Version: 96 Course Duration: 5 Day(s) Material Number: 50106147 An SAP course - use it to learn, reference it for work

Upload: julienincorvaia

Post on 21-Jul-2016

118 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420SAP BusinessObjects Planning

and Consolidation, Version for SAPNetWeaver: Administration

SAP BusinessObjects - Financial Performance Management

Date

Training Center

Instructors

Education Website

Participant HandbookCourse Version: 96Course Duration: 5 Day(s)Material Number: 50106147

An SAP course - use it to learn, reference it for work

Page 2: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Copyright

Copyright © 2011 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without theexpress permission of SAP AG. The information contained herein may be changed without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary softwarecomponents of other software vendors.

Trademarks

• Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® and SQL Server® areregistered trademarks of Microsoft Corporation.

• IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®,AS/400®, OS/390®, and OS/400® are registered trademarks of IBM Corporation.

• ORACLE® is a registered trademark of ORACLE Corporation.• INFORMIX®-OnLine for SAP and INFORMIX® Dynamic ServerTM are registered trademarks

of Informix Software Incorporated.• UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of the Open Group.• Citrix®, the Citrix logo, ICA®, Program Neighborhood®, MetaFrame®, WinFrame®,

VideoFrame®, MultiWin® and other Citrix product names referenced herein are trademarks ofCitrix Systems, Inc.

• HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C®, World WideWeb Consortium, Massachusetts Institute of Technology.

• JAVA® is a registered trademark of Sun Microsystems, Inc.• JAVASCRIPT® is a registered trademark of Sun Microsystems, Inc., used under license for

technology invented and implemented by Netscape.• SAP, SAP Logo, R/2, RIVA, R/3, SAP ArchiveLink, SAP Business Workflow, WebFlow, SAP

EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP.com Logo and mySAP.com aretrademarks or registered trademarks of SAP AG in Germany and in several other countries allover the world. All other products mentioned are trademarks or registered trademarks of theirrespective companies.

Disclaimer

THESE MATERIALS ARE PROVIDED BY SAP ON AN "AS IS" BASIS, AND SAP EXPRESSLYDISCLAIMS ANY AND ALL WARRANTIES, EXPRESS OR APPLIED, INCLUDING WITHOUTLIMITATION WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULARPURPOSE, WITH RESPECT TO THESE MATERIALS AND THE SERVICE, INFORMATION, TEXT,GRAPHICS, LINKS, OR ANY OTHER MATERIALS AND PRODUCTS CONTAINED HEREIN. INNO EVENT SHALL SAP BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL,CONSEQUENTIAL, OR PUNITIVE DAMAGES OF ANY KIND WHATSOEVER, INCLUDINGWITHOUT LIMITATION LOST REVENUES OR LOST PROFITS, WHICH MAY RESULT FROMTHE USE OF THESE MATERIALS OR INCLUDED SOFTWARE COMPONENTS.

g201211021726

Page 3: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

About This HandbookThis handbook is intended to complement the instructor-led presentation of thiscourse, and serve as a source of reference. It is not suitable for self-study.

Typographic ConventionsAmerican English is the standard used in this handbook. The following typographicconventions are also used.

Type Style Description

Example text Words or characters that appear on the screen. Theseinclude field names, screen titles, pushbuttons as well asmenu names, paths, and options.

Also used for cross-references to other documentationboth internal and external.

Example text Emphasized words or phrases in body text, titles ofgraphics, and tables

EXAMPLE TEXT Names of elements in the system. These include reportnames, program names, transaction codes, table names,and individual key words of a programming language,when surrounded by body text, for example SELECTand INCLUDE.

Example text Screen output. This includes file and directory namesand their paths, messages, names of variables andparameters, and passages of the source text of a program.

Example text Exact user entry. These are words and characters thatyou enter in the system exactly as they appear in thedocumentation.

<Example text> Variable user entry. Pointed brackets indicate that youreplace these words and characters with appropriateentries.

2011 © 2011 SAP AG. All rights reserved. iii

Page 4: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

About This Handbook BPC420

Icons in Body TextThe following icons are used in this handbook.

Icon Meaning

For more information, tips, or background

Note or further explanation of previous point

Exception or caution

Procedures

Indicates that the item is displayed in the instructor'spresentation.

iv © 2011 SAP AG. All rights reserved. 2011

Page 5: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

ContentsCourse Overview ............................................................................. vii

Course Goals.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .viiCourse Objectives ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vii

Unit 1: Application Presentation ............................................................1Introducing the Benefits, the Interfaces, and the Components .. . . . . . . . . . . . . . . . . . . . . . .2Implementing SAP BusinessObjects Planning and Consolidation ... . . . . . . . . . . . . . . . . 11Presenting Modeling Aspects .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Unit 2: Configuration ........................................................................ 35Describing the Technical Architecture of BO PC .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Navigating in the Administration Interface... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Creating Environments.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Creating Dimensions ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Creating Models .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125Describing the Security Model .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154Defining Parameters .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191

Unit 3: Using the EPM add-in .............................................................201Introducing the Excel Interface of the EPM add-in .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202

Unit 4: Data Acquisition....................................................................251Managing Data with Data Manager .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252Flat File Upload and BW Data Upload – Master Data and Hierarchy Upload and

Loading of Transaction Data... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267

Unit 5: Logic Scripts ........................................................................375Creating Basic Logic Scripts and Online Execution... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .377Creating Logic Scripts and Central Execution ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .464Defining Logic Scripts for Allocation... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .498Integrating Logic Scripts and ABAP... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .523Introducing Member Formulas ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .548

Unit 6: Business Process Flows .........................................................571Creating Planning Business Process Flows ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .572

2011 © 2011 SAP AG. All rights reserved. v

Page 6: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Contents BPC420

Unit 7: Administration ......................................................................633Validating Master Data ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .635Configuring Audits .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .654Presenting Concurrency Locking ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .676Configuring Work Status ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .679OPTIONAL: Explaining Transports .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .700

Appendix 1: Web Client Interface Features .........................................717

Appendix 2: Workspace and Library .................................................721

Appendix 3: Library and Folders ......................................................729

Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear ............................735

Appendix 5: BW Data Upload - Aggregate Overwrite and Append with Mergeand Replace and Clear ...................................................................741

Appendix 6: BO PC NetWeaver Authorizations ....................................745

Appendix 7: Appendix 2: Task Profiles and Descriptions ......................747

Appendix 8: Appendix 4: *Options in Transformation Files ....................755

Appendix 9: Appendix 5: Retraction Scenarios in BO PC ......................759

vi © 2011 SAP AG. All rights reserved. 2011

Page 7: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Course Overview

Target AudienceThis course is intended for the following audiences:

• Application Consultants• BO PC Administrators• Project Leaders• Project Team Members• Technical Pre-Sales

Course PrerequisitesRequired Knowledge

• BW310• Excel

Recommended Knowledge

• Experience with SAP NetWeaver BW

Course GoalsThis course will prepare you to:

• Configure SAP BusinessObjects Planning and Consolidation (10.0), version forSAP NetWeaver

• Understand the system architecture and integration• Perform administration• Use logic for planning and reporting• Execute data imports• Build business process flows for planning

Course ObjectivesAfter completing this course, you will be able to:

2011 © 2011 SAP AG. All rights reserved. vii

Page 8: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Course Overview BPC420

• Set up environments, models, and dimensions• Work with hierarchies• Navigate in the interface for Excel• Perform flat file, InfoCube to InfoCube transaction data imports• Set up BW characteristic master data imports• Create Data manager package ‘links’• Work with logic, business add-ins (BAdI’s), and custom process chains• Execute Allocations• Configure business process flows• Set up work status and security• Work with activity and data audit• Discuss locking• Discuss transports

viii © 2011 SAP AG. All rights reserved. 2011

Page 9: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1Application Presentation

Unit OverviewThis unit includes a conceptual overview. It shows the benefits of Business ObjectsPlanning and Consolidation and some important modeling aspects. It also gives someproject guidance.

Unit ObjectivesAfter completing this unit, you will be able to:

• Explain the key terms• Discuss the benefits of SAP BusinessObjects Planning and Consolidation• Describe the components• Identify the most important features of SAP BusinessObjects Planning and

Consolidation• Discuss the implementation process• Describe general business requirements for the planning and consolidation

application• Discuss the key terms of Planning and Consolidation.• Explain the main idea of Dimension properties in Planning and Consolidation• Describe Modeling of Bottom up and Top Down Planning in Planning and

Consolidation

Unit ContentsLesson: Introducing the Benefits, the Interfaces, and the Components .. . . . . .2Lesson: Implementing SAP BusinessObjects Planning and Consolidation .. 11Lesson: Presenting Modeling Aspects .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2011 © 2011 SAP AG. All rights reserved. 1

Page 10: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Lesson: Introducing the Benefits, the Interfaces, and theComponents

Lesson OverviewIn this lesson, you will learn about the benefits of SAP BusinessObjects Planning andConsolidation as well as the interfaces, the key terms, and components.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Explain the key terms• Discuss the benefits of SAP BusinessObjects Planning and Consolidation• Describe the components• Identify the most important features of SAP BusinessObjects Planning and

Consolidation

Business ExampleYou are implementing the product and therefore need to familiarize yourself with thekey features, the interfaces, and the components.

The Key TermsIn this section, you will learn some of the key terms.

Key Terms

Term Definition

Dimensions Master data such as companies and accounts

Models Transaction data such as expense values andexchange rates

Environments Contains dimensions and models, for example

BW SAP Business Information Warehouse

Properties Related fields such as currency

Dimension Members Example: Company C1000

Base Level Members Members with no children

2 © 2011 SAP AG. All rights reserved. 2011

Page 11: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Benefits, the Interfaces, and the Components

Prior Versions versus 10.0 (1) Terms

Previous Term 10.0 Term

Applications Models

AppSets Environments

Owner Performer

DataSource Dimension Type Audit Trail Dimension Type

Group Dimension Type Scope Dimension Type

Live Reports Web Reports / Input Forms

Dynamic Hierarchy Editor Ownership Manager

Current View Context

Member Access Profile Data Access Profile

Apshell EnvironmentShell

Validations Controls

Note: The terms above apply to both platforms (listed below).

(1) SAP BusinessObjects Planning and Consolidation 10.0, version for SAPNetWeaver

(1) SAP BusinessObjects Planning and Consolidation 10.0, version for the Microsoftplatform

Planning and Consolidation is part of Enterprise Performance Management

2011 © 2011 SAP AG. All rights reserved. 3

Page 12: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 1: SAP BusinessObjects Portfolio with SAP Applications

Regardless of which interface is used for reporting, the data comes from one centraldatabase. From there, you can retrieve data into four possible interfaces.

The data is stored in InfoCubes for each model. The InfoCube is a star schema andcomprises a fact table and dimension tables.

Figure 2: SAP BusinessObjects Planning and Consolidation Architecture

4 © 2011 SAP AG. All rights reserved. 2011

Page 13: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Benefits, the Interfaces, and the Components

The Excel Interface of the EPM add-in can be used to access data from multiplesources such as Planning and Consolidation and Profitability Cost Management, forexample.

The data retrieval options are the same, regardless of the source. However, whenused for the planning and consolidation application, additional features are availableincluding data input and Data Manager, for example.

Data Manager is used to import data and run planning functions such as copy, delete,and move.

Figure 3: The Excel Interface of the EPM Add–In

Note: The term “planning” above refers to the spread, trend, and weightfunctions that are used to disaggregate planning data.

“Workbook collection” refers to the distribution and collection feature thatcan be used to distribute reports via e-mail, for example, or to collect planningdata entered in Excel templates.

The ease of use of SAP BusinessObjects Planning and Consolidation has always beena key feature, along with the fact that data is stored in a central database and not inlocal spreadsheets.

2011 © 2011 SAP AG. All rights reserved. 5

Page 14: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 4: The Value of Planning and Consolidation

Business process flows (BPFs) provide the customer with a web-based launchpad,guided navigation, e-mail, and visibility of process status. Business process flows canbe used to improve the coordination aspects of a process.

Actions that are Open have an Action Required of To Perform. An action can only beperformed if its preceding action is complete. That is why the Planning Functionsaction has the status Pending.

The action status can also be changed via the Actions button.

6 © 2011 SAP AG. All rights reserved. 2011

Page 15: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Benefits, the Interfaces, and the Components

Figure 5: Process-Centric

Since it is easy to use, IT does not always need to be involved in the configurationof SAP BusinessObjects Planning and Consolidation.

2011 © 2011 SAP AG. All rights reserved. 7

Page 16: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 6: Set Up by IT - Owned and Maintained by Business Users

The users Home workspace provides an easy to use Web interface.

Figure 7: The Home Workspace

8 © 2011 SAP AG. All rights reserved. 2011

Page 17: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Benefits, the Interfaces, and the Components

The Home tab provides a very convenient entry point for SAP BusinessObjectsPlanning and Consolidation users, and includes the following components:

• Start Page - includes links to create reports and launch the Excel interface ofthe EPM add-in, for example

• Activities - activities the user is involved in• Process Monitor - includes the status of processes• Library - includes public and private reports, input forms, workspaces, and

dashboards, for example• Documents - this is a central storage location for important attachments• Consolidation Central - the all-in-one interface for accountants• Consolidation Monitor - used to execute closing activities and monitor progress• Controls Monitor - used to execute data validation and monitor the results• Journals - used to manage and create journal entries• Ownership Manager - used to manage ownership data

2011 © 2011 SAP AG. All rights reserved. 9

Page 18: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Lesson Summary

You should now be able to:• Explain the key terms• Discuss the benefits of SAP BusinessObjects Planning and Consolidation• Describe the components• Identify the most important features of SAP BusinessObjects Planning and

Consolidation

10 © 2011 SAP AG. All rights reserved. 2011

Page 19: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Lesson: Implementing SAP BusinessObjects Planning andConsolidation

Lesson OverviewIn this lesson, you will learn about implementing SAP BusinessObjects Planningand Consolidation.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss the implementation process• Describe general business requirements for the planning and consolidation

application

Business ExampleYour company or your client has purchased SAP BusinessObjects Planning andConsolidation, so you need to learn how to implement it.

Implementation FactorsEvery project has the following factors to consider:

Figure 8: Implementation Factors

2011 © 2011 SAP AG. All rights reserved. 11

Page 20: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

The Most Important Success Factors for BPC Implementations:

• Product expertise.• A structured project delivery using best practices

– Method Based Scoping (ASAP 7.1 BPC Add-on).– Blueprinting– Project Quality Assurance

Note: ASAP Methodology for Implementation 7.1 has the add-on for BPC.

Performance is a very important component in a project and it should be addressedright from the beginning of the project.

Pushing the performance topic to the end of a project will, in most cases, cause delaysin the project.

Possible Reasons for Performance Issues:

• Lack of data in the development system (reports were built on completely emptyapplications), so the performance of the reports could not be assessed up front(some dummy data should be generated in the development system)

• Lack of stress testing activities in the project plan, in a system with large numberof concurrent users

• Design errors: An application, calculation, or report was designed in a waythat they could not be high-performing

Factors to consider

Factor Example

Project Objectives Define the project objectives. For example,implement cost center planning.

Scope Determine the scope of the implementation. Forexample, the scope may only be for North Americaand Europe.

Strategy Define the project strategy. For example, performmost cost center planning using Planning andConsolidation.

12 © 2011 SAP AG. All rights reserved. 2011

Page 21: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Timeline Define both the timeline for the entire project andthe implementation sequence.

Sequence Determine the sequence of events from a projectplanning perspective.

Resources Identify the internal project team members andconsultants required.

The Roadmap to Success

SAP and its partners have implementation methodologies that are used to standardizethe process.

The roadmap includes the key steps in the process of implementing a solution.

1. SAP BI Strategic Decision: For the planning and consolidation application, youmay need to decide whether to use an existing BW server or install a standaloneserver, for example.

2. Pilot Project: A pilot phase may be beneficial to help determine your “to-be”solution.

3. Project: Once your “to-be” solution has been determined, you proceed with theimplementation.

The Implementation Roadmap forms the methodical framework for the steps that yourequire to implement SAP BusinessObjects Planning and Consolidation. It includesthe necessary project management, the configuration for the business processes, aswell as the technical features, the test procedure, and the training concepts.

The methodology of the Implementation Roadmap supports the inclusion of thoserequirements that are used as the basis for installing the application.

2011 © 2011 SAP AG. All rights reserved. 13

Page 22: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 9: The Roadmap to Success

• Project Preparation - initial project planning, project procedures, landscapestrategy

• Business Blueprint - project planning, architecture• Realization - configure the initial solution• Final Preparation - test the solution, conduct training• Go Live and Support - cut over to the new system, follow up on possible go

live issues

Below, you can see the recommended resources by phase.

14 © 2011 SAP AG. All rights reserved. 2011

Page 23: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Figure 10: Method-Based Role Allocation

BPC is a very versatile tool and can be used to cover many different businessprocesses. A BPC Business Blueprint document can therefore look quite different,depending on the type of project and on the client as well. Due to the nature of BPC,there is not a single template that will fit all requirements.

The blueprinting activity is a key activity in any BPC project. It is important not tounderestimate the time required for this task (at least 20 to 30 percent of the total timeof the project – depends on the availability of documented requirements).

Prototyping is key for early user involvement and to prove designs. It reduces changemanagement efforts during Go-Live Preparation (lean implementation model)

Business requirements lie at the center of the project. The scope of your initiativemust be driven by business requirements. A key ingredient is to gather accuraterequirements in the information gathering process.

2011 © 2011 SAP AG. All rights reserved. 15

Page 24: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 11: Information Gathering Process

• Preparation

– Identification of the interview / workshop team as well as the interviewees /attendees

– Scheduling interviews/workshops– Communication of project goals, roles, and responsibilities

• Requirements analysis

– Use SAP-delivered business content as a first step to structure the analysis– Collect the business requirements, focusing on the processes– Find a suitable combination of interview and workshop techniques

• Matching

– Check user requirements against the business content– Identify gaps– Develop strategies to close gaps

• Presentation

– Prepare and publish the results– Find agreement on next steps– Determine success criteria and risk factors

Development GuidelinesHere are some development guidelines to keep in mind.

16 © 2011 SAP AG. All rights reserved. 2011

Page 25: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Figure 12: Development Guidelines

• Naming guidelines - define naming conventions for all objects• Responsibilities - define and communicate to each team member• Authorization concept - build your security plan early in the project• Global / Local data - identify data staging layers where you may have a corporate

repository of Global data versus an application-specific set of Local data.• Master data - identify where master data will be maintained• Transaction data - identify where transaction data will be sourced• Data flow - similar to the above but including transformations• Data targets - in the data flow, identify where data will be stored• BI objects - determine which BW objects will be involved in the data flow• Data model integration - are there integration points between BW and Planning

InfoCubes for example?• EDW - do you need to use other Enterprise Data Warehousing solutions such as

Informatica?• Archiving - a life cycle strategy is important to reduce the storage of older data• Initial data transfer - during start-up, how will the initial data transfer occur?• Data handling - similar to the above, but also include possible transformation

and mapping

2011 © 2011 SAP AG. All rights reserved. 17

Page 26: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

• Operating concept / transports - where will new objects be created and how willthe transport process work?

• Business content - during the gathering of business requirements, check to see ifyou can use any delivered business content

• Documentation - document why your solution and objects are built the way theyare so that subsequent team members can follow what you did, for example

• Special topics

• List of all applications• List of dimensions per application (and dimension type)• List of properties for each dimension• High level content for each dimension• Description of internal data flows between applications• Data sources for master data and transaction data• Central / De-central data load• Automatic / Manual trigger• Full versus. Incremental load• Technology used for data load (out-of-the box, development in ABAP, ...)

Requirements AnalysisGathering business requirements may be the most important part of a project, and themost challenging!

18 © 2011 SAP AG. All rights reserved. 2011

Page 27: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Figure 13: Requirements Analysis

• Project focus - this should be done periodically since conditions change over time• Interviews - conduct them with individuals or small groups to ensure that

everyone has input. Collect information about the business process• Workshops - use larger groups to do brainstorming• Documentation - good documentation is critical to avoid miscommunication• Gap analysis - compare as is with to be• Reporting requirements - include planning and / or consolidation requirements

Analysis LevelsGranularity, along with storage of historical data, is one of the most importantrequirements from a performance perspective. Too much detail can cause performanceissues later on.

When gathering business requirements, it is critical to identify what level of detail isreally needed.

Similar data requirements include:

• How soon do you need to have ECC data in BW?• How much history do you need to store?• When can data be archived?

2011 © 2011 SAP AG. All rights reserved. 19

Page 28: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 14: Analysis Levels

Sample Business Requirements for a Planning Project

1. What type of planning do you perform and in which system?2. What level of detail?3. Who are the planners?4. What is a typical day in the life of a planner?5. Is there a service level agreement for performance milestones? (Example:

reports must run in 30 seconds or less)6. What are the top-down and bottom-up requirements?7. Is it next year's tactical plan or the 5 year strategic plan?8. Are there offline scenarios?9. Do you need to track status and provide guided navigation?10. How will you lock approved data?11. When should we track who changes the data?12. Where is the actual data coming from?13. Do you need to replicate ECC Cost Center Planning, for example?14. What types of business calculations are needed?15. Etc.

20 © 2011 SAP AG. All rights reserved. 2011

Page 29: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Implementing SAP BusinessObjects Planning and Consolidation

Sample Implementation Steps for a Planning ProjectA planning project could involve the following steps.

• Gather the business requirements• Compare as is with to be• Consider delivered content• Specify the required architecture• Develop the data flow requirements• Create the environment• Create dimensions and properties• Create models and set up security• Set up Data Manager packages, logic scripts / BAdIs, business rules• Update exchange rates• Set up work status and a business process flow• Create new reports and input schedules

Note: BAdI stands for Business Add-In.

2011 © 2011 SAP AG. All rights reserved. 21

Page 30: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Lesson Summary

You should now be able to:• Discuss the implementation process• Describe general business requirements for the planning and consolidation

application

22 © 2011 SAP AG. All rights reserved. 2011

Page 31: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Modeling Aspects

Lesson: Presenting Modeling Aspects

Lesson OverviewIn this lesson, you will learn about environments, dimensions, properties and top-downmodeling from a conceptual perspective.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss the key terms of Planning and Consolidation.• Explain the main idea of Dimension properties in Planning and Consolidation• Describe Modeling of Bottom up and Top Down Planning in Planning and

Consolidation

Business ExampleYou are implementing the product and so you need to have a good understanding ofthe basic principles in Planning and Consolidation

2011 © 2011 SAP AG. All rights reserved. 23

Page 32: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Environmental Structures

Figure 15: Environment - Strategic View

The figure above gives you an overview about the objects you can use in SAPBusinessObjects Planning and Consolidation (BO PC) and how they are related.

You are always working within an environment, which is the database.An environment is a group of models. An environment contains a set of dimensionsthat may be shared among its models. In SAP BusinessObjects Planning andConsolidation, an environment is similar to an InfoArea in NetWeaver (NW) withnearly all unique objects within this InfoArea. No objects within an environmentare shared across environments. An InfoArea is more like a “folder”, whereas anenvironment is much more delineated. No objects can be shared across environments.Environmentshell is the delivered environment used as a starting point for clientimplementations.

24 © 2011 SAP AG. All rights reserved. 2011

Page 33: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Modeling Aspects

Figure 16: Dimensions and Properties – Example on Account Type Dimension

The figure above focuses on properties, the types of properties that exist in Planningand Consolidation, and how important properties in BO PC are. The whole modelingof planning and consolidation scenarios is based on properties.If you want to consolidate with BO PC, you should know which properties arenecessary and for what they are needed in the modeling of legal or managementconsolidation.

2011 © 2011 SAP AG. All rights reserved. 25

Page 34: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 17: Hierarchies – Always on only One Dimension

Before you start with BO PC in detail, you should know how BO PC hierarchies areconstructed and how you can use them if you want to do top-down and bottom-upplanning.

As you can see, BO PC only supports one type of hierarchy, which is a hierarchybased on one dimension.

External hierarchies or text hierarchies, which are available in BW, are not possiblefor BO PC.

As a consequence of this hierarchy type in BO PC, some dimension members are leafmembers while others are node members. The decision node member or leaf memberis made with the help of property “PARENTHn”. N can be an integer number andallows you to have several hierarchies in parallel.

As you can see in the figure above, you can always plan on leaves but never on a nodemember. This is because node members in BO PC sum up the transaction data forthe leaves beneath the relevant node. This summing up or aggregation is alwaysautomatically executed by the system when the user saves data to the server.

26 © 2011 SAP AG. All rights reserved. 2011

Page 35: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Modeling Aspects

Bottom up and Top Down Modeling

Figure 18: Top-Down Planning - Budgeting and Manual Distribution Done byOne User

If you want to work top-down, which means to would like to plan some data on a nodemember (but cannot do this in BO PC) you will have to find a workaround.

This slide shows you the first of three workarounds, which works with an Excel linethat represents the node member.

Note: EVGTS means that you will read data from the BO PC Server usingthis BO PC function.

EVSND means that you can save data from an Input Schedule in BO PCto the server.

Both EV functions need the information in which combination of dimension membersthe relevant amount is written.

2011 © 2011 SAP AG. All rights reserved. 27

Page 36: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 19: Top-Down Planning - Budgeting and Manual Distribution Done bytwo Different Users

The figure above shows the second workaround. Here, we work with a leaf member(Budget) per node member but since the new leaf member and the old leaf membersare all beneath one common node member we must distinguish between the budget(new leaf member) and the distribution of values (sum of old leaf members).

When saving data to the server, all members beneath a node are summed up so wewould get double the budget after saving the data.

To avoid this, we introduce two versions; one for the new budget member and one forthe distribution members. This means that when we save the data a double summingup of budget and distribution is not done.

28 © 2011 SAP AG. All rights reserved. 2011

Page 37: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Modeling Aspects

Figure 20: Top-Down Planning – Budgeting and Manual Distribution Using aLeaf per Budget Node

The last workaround is a nice way to plan budget and distribute it.

The construction is as follows:

• One leaf member for a node member you want to put your budget on• Budget leaf member and distribution leaf members do not have any common

node member in their dimension hierarchy. Therefore, if the budget leaf memberand the distribution leaf members do not have a common parent node, valuescannot be summed up or duplicated at any level of the hierarchy!

Hint: You can also use the 'top-down allocation' solution when you want todisaggregate your data automatically instead of manually.

2011 © 2011 SAP AG. All rights reserved. 29

Page 38: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 1: Application Presentation BPC420

Figure 21: Course Exercise Scenario

30 © 2011 SAP AG. All rights reserved. 2011

Page 39: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Modeling Aspects

Lesson Summary

You should now be able to:• Discuss the key terms of Planning and Consolidation.• Explain the main idea of Dimension properties in Planning and Consolidation• Describe Modeling of Bottom up and Top Down Planning in Planning and

Consolidation

2011 © 2011 SAP AG. All rights reserved. 31

Page 40: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

Unit SummaryYou should now be able to:• Explain the key terms• Discuss the benefits of SAP BusinessObjects Planning and Consolidation• Describe the components• Identify the most important features of SAP BusinessObjects Planning and

Consolidation• Discuss the implementation process• Describe general business requirements for the planning and consolidation

application• Discuss the key terms of Planning and Consolidation.• Explain the main idea of Dimension properties in Planning and Consolidation• Describe Modeling of Bottom up and Top Down Planning in Planning and

Consolidation

32 © 2011 SAP AG. All rights reserved. 2011

Page 41: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 42: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 43: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

33 © 2011 SAP AG. All rights reserved. 2011

Page 44: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

34 © 2011 SAP AG. All rights reserved. 2011

Page 45: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2Configuration

Unit OverviewThis unit is about the architecture of Business Planning and Consolidation, about theConcept of the Web Client and describes the creation and features of Environments,Dimensions and Models.

Unit ObjectivesAfter completing this unit, you will be able to:

• Define the technical background of SAP BusinessObjects Planning andConsolidation.

• Navigate in the Web UI client• Discuss the Workspace and Library Concept• Navigate in the Admin Web UI• Create an Environment• Configure an Environment• Create dimensions and members• Create properties and hierarchies• Discuss the creation of a model• Explain Model Page features• Outline the do's and don'ts in BW for InfoProviders created in BO PC• Describe delivered Measure Formulas and define Custom Measures.• Discuss the BO PC Security Concept• Recognize Security Conflicts• Discuss functional parameters and configuration parameters.• Describe how to customize parameters

Unit ContentsLesson: Describing the Technical Architecture of BO PC .... . . . . . . . . . . . . . . . . . . 37

2011 © 2011 SAP AG. All rights reserved. 35

Page 46: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson: Navigating in the Administration Interface... . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Lesson: Creating Environments .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Procedure: Creating a new Environment.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Lesson: Creating Dimensions ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Procedure: To Create a Dimension, Dimension Properties, Hierarchiesand Maintain Dimension Members ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100Exercise 1: Create Dimensions and Members ... . . . . . . . . . . . . . . . . . . . . . . . . . .101

Lesson: Creating Models .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125Procedure: Create a Model .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134Exercise 2: Create Models .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147

Lesson: Describing the Security Model .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154Procedure: To Create Security Feature “Task Profile” .. . . . . . . . . . . . . . . . . . . .177Procedure: To Create Security Feature “Data Access Profile” .. . . . . . . . . .178Procedure: To Create Security Feature “Team” ... . . . . . . . . . . . . . . . . . . . . . . . . .179Procedure: To Create Security Feature “User” .. . . . . . . . . . . . . . . . . . . . . . . . . . . .180Exercise 3: Test Security .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185

Lesson: Defining Parameters .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191Procedure: To Set Parameters .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196

36 © 2011 SAP AG. All rights reserved. 2011

Page 47: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Technical Architecture of BO PC

Lesson: Describing the Technical Architecture of BO PC

Lesson Overview

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Define the technical background of SAP BusinessObjects Planning andConsolidation.

Business ExampleYou want to get some information about the Planning and Consolidation Softwarefrom an architectural perspective.

Figure 22: Architecture: Backend and Front End

The application is built on top of the NetWeaver Flex Client Platform and provides thenecessary user environment capabilities.

It allows the implementation of a rich flex-based user interface with a consistent lookand feel and a common flexible user interaction model.

2011 © 2011 SAP AG. All rights reserved. 37

Page 48: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

It provides prebuilt components for reuse across different applications as wellas configuration capabilities through its Flex runtime. It uses standard RESTfulconnectivity to the ABAP backend, ensures consistent accessibility of the userinterface, and provides client-side localization and logging capabilities.

Hint: The .NET server is no longer part of the architecture. It was replacedwith BO PC REST Layer which is part of the BPC Add-on.

Hint: Planning and Consolidation now supports virtualized productionenvironments as described in SAP Notes 1098847 and 1409608.

Key advantages of the System Landscape are the following:

• Service-Oriented Architecture (SOA) providing easy integration• 64-bit ABAP application server support• Operating system and database independence, when running operating systems

and databases supported by the NetWeaver ABAP application server• Patented, enterprise-scale Microsoft Office integration with a world class user

interface.

Planning and Consolidation has the following components:

• BPC Rest Layer (Replacement of .NET server)• Business Service Layer• Infrastructure layer• One important change of this layer is the system is using NW users for

authentication

38 © 2011 SAP AG. All rights reserved. 2011

Page 49: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Technical Architecture of BO PC

Software Components for Planning and Consolidation are:

• Requires SAP NetWeaver 7.3• Any operating system supported by SAP NetWeaver 7.3• ABAP Web Application Server• VMware for productive usage Any database supported by SAP NetWeaver 7.3• Web Server: ABAP Web Application server• Language support: Install SAP BusinessObjects Planning and Consolidation

on non-English OS servers in French, German, Japanese, Simplified Chinese,Russian, Spanish, Italian, Portuguese.

Hint: SAP Note 1573567 contains installation information, enhancements,and resolved issues for SAP Planning and Consolidation 10.0 SP01, versionfor the SAP NetWeaver platform. SAP Note 1511393 for POASBC Add-OnInstallation and Release strategy for the ABAP add-on POASBC. This noteprovides information about planning the installation and upgrade of ABAPadd-on POASBC.

Hint: You want to install an add-on then read 1568391 for installing POASBC100_730. Information about upgrading with POASBC is given in SAP note1573237: Upgrade to NW 730 with POASBC 100_730.

Figure 23: Platform Support and Authentication - Client Support

In development and productive environments, SAP BusinessObjects Planning andConsolidation, version for SAP NetWeaver, runs on the SAP NetWeaver platform.The application is built on top of the NetWeaver Flex Client Platform and provides thenecessary user environment capabilities.

Planning and Consolidation Client has two big components:

• Web client using IE browser

– SBC BUI Flex Framework– BPC Web UI

• BPC add-in office part of EPM add-in.

2011 © 2011 SAP AG. All rights reserved. 39

Page 50: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson Summary

You should now be able to:• Define the technical background of SAP BusinessObjects Planning and

Consolidation.

40 © 2011 SAP AG. All rights reserved. 2011

Page 51: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Lesson: Navigating in the Administration Interface

Lesson OverviewIn this lesson you will learn how to navigate in the Administration Interface.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Navigate in the Web UI client• Discuss the Workspace and Library Concept• Navigate in the Admin Web UI

Business ExampleYou want to know how to navigate the Web UI, to use the Workspace and Library, andhow to navigate in the Administration Web UI.

Web Client

Figure 24: BPC NW Web Client

2011 © 2011 SAP AG. All rights reserved. 41

Page 52: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

When you log on to the Web Client of Planning and Consolidation, the first screenthat you see is the Start Page, which is the first node in the Home tab navigation pane.The following features are available on the Start Page:

• Favorites - Your Favorites list contains quick links to, for example, theworkspaces, reports, input forms, and books that you access frequently duringyour normal working day.You can define your own list of favorites. You can add an object to this list byclicking the Add to Favorites link from many of the Web Client pages.

• Create - The Create area contains shortcuts to the processes to create a new Webreport or Web Input Form. You can also create your own workspace.

• Launch - When you first access the Web Client, the Launch area contains linksto install the SAP BusinessObjects EPM solutions, Add-in for Microsoft Officeand the Administration area.After these components are installed, the Launch contains links to the EPMAdd-in and a link to the Administration area.

Note: The EPM Add-in is an Add-in to Microsoft Office Excel,Microsoft Office Word and Microsoft Office PowerPoint.

• Change the Environment Preferences - You can change the user preferences tocustomize the display of your UI. You can make changes to the startup options,language, and display, among other settings:

– Accessibility - Text size and Theme– Language and Region - Language, Time zone, Date format, Number format– Help - You can open the help.sap.com documentation relating to BO PC

10.0 NW from the Start Page.• Show Access Rights - For your user in your environment you can see all security

settings in your Task Profile and Data Access Profile and you can see which teamyour user belongs to.

• Download Center - You can install the EPM add-in for Microsoft Office on yourcomputer to enable Planning and Consolidation functionality in Microsoft Excel,Word, and PowerPoint from this link.

42 © 2011 SAP AG. All rights reserved. 2011

Page 53: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 25: Workspaces

AWorkspace is a menu with all the components that you are authorized to accessand so groups specific content. It behaves like a folder, which contains Planningand Consolidation items, such as reports, input forms, Crystal Dashboards, andso on . In a workspace, you can include content from the Library, or create newreports or input forms. Content that you include is available both in the workspaceand in the Library. Reports or input forms that you create are part of the workspaceand are not available outside the workspace.

Note: For Details see Appendix and BPC430.

PrefPreferencesYou can change the user preferences to customize the display of your UI. You canmake changes to the startup options, language, and display, among other settings.GridYou can display data in table format and change the display as follows:

• Reorder the columns in a table by dragging and dropping• If possible, you can filter the data displayed in a table using the Toggle Search

icon• By entering a specific value, you can narrow the data displayed to only include

that value• Display or hide certain columns using the column selector

2011 © 2011 SAP AG. All rights reserved. 43

Page 54: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

All columns are displayed by default. To hide a particular column, deselect thecheckbox for that column. Sort the data in the table according to a particular columnby selecting the column header. The data is sorted in ascending or descending order.

Figure 26: Access the Admin Web Client

All the administration tasks are available through the Web client.

Figure 27: Business Process Flow – Activities

44 © 2011 SAP AG. All rights reserved. 2011

Page 55: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

This function displays the activities (of a Business Process Flow) requiring specificaction by you as the currently logged-on user.Activities displays the activities for which you (as the currently logged-on user) canperform actions.You can open the associated activity workspace to perform or review your activity.The activity workspace contains useful information such as report and workspace.It also contains hyperlinks that you can use to execute tasks as required. Within thespecific process context, individual activities can have the following statuses:

• Open: Waiting for completion or to be submitted as a new activity• Submitted: Action has been taken and the activity is waiting for review• Completed: Activity is fully completed• Reopened: Completed activity has been reopened• Pending: Activity is waiting for an open activity to be completed• Rejected: A reviewer has rejected an activity, the activity is open again for user

action• Delayed: Completion of the activity has been delayed due to the previous

activity being reopened.

Figure 28: Business Process Flow – Process Monitor

If you have been assigned access to the process monitor, you can see a complete listof processes and display the full set of information available for individual processinstances.

2011 © 2011 SAP AG. All rights reserved. 45

Page 56: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

The process instance owner can finalize a completed process instance.To be able to view the process monitor, you must have been assigned access duringprocess template creation.When you open the process monitor, it displays the process name, process context,status (completion progress, number of activities completed, in progress, pending),start date, and owners for each process instance.You can filter the processes displayed using Show Processes or Status. When youselect a process from the list and click Open, it displays a detailed view in which youcan see the status of activities in the selected process instance.You can view them using Group By to group by activity, context, status, and actionrequired. You can also filter using Show Activities.

Figure 29: Library

The Web Client allows users to create, view, and edit different Planning andConsolidation objects (Workspaces, Reports, Input Forms, Dashboards, and Books).The folders and documents that the user has access to depends on his/her access rights.The objects in the Library view are sorted by folders. You can select a folder to seethe objects saved to it.

46 © 2011 SAP AG. All rights reserved. 2011

Page 57: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

There are four main folders:

• Private – You can create your personal folder and save content in it, whichyou do not want to share with other users. The content of this folder cannot beaccessed by other users. If you have more than one personal folder, you canmove content from one folder to another. You can share content stored in yourpersonal folder with other users. For this, select the users and the roles to whomyou want to provide access.

• Public – This folder contains content that can be accessed and modified by allusers depending on the permissions in place. It is possible to restrict access tothis folder. Users with the task profile Update Company Folders can add andmanage the content.

• Teams - This folder is created automatically by the system and removed whena team is created/removed. Team members can access all content of the teamfolder, but only the team lead can update the content.

• Favorites – You can add objects to this folder to group to together the objectsthat you use frequently. The Folder column shows the folder in which the objectis stored.

Figure 30: Documents

The Documents view is a central repository for storing or sharing files and websites.

2011 © 2011 SAP AG. All rights reserved. 47

Page 58: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

You can use the features of the Documents view to post, share, and retrieve files or thecontents of a website, and to manage the display of content.Posting Files to the Documents View To post or view documents in the Documentsview, select Documents from the left navigation pane in the Home tab.You can post files or specify a URL to add to the Documents view by clicking AddItem.You then describe the file or website, set access, and determine whether you want tosend a notification e-mail about the posting. A file can be any file saved to a harddrive or network folder.By default, the system allows you to upload files of the following types, or fileextensions: .XLS, XLT, .DOC, .DOT, .PPT, .POT, .XML, .MHT, .MHTML,.HTM, .HTML, .XLSX, .XLSM, .XLSB, .ZIP, .PDF, .PPTX, .PPTM, .POTX,.POTM, .DOCX, .DOCM, .DOTX, .DOTM, .CDM, .TDM, .PNG, .GIF, .JPG,.CSS, .MRC. Note:Administrators can change the environment parameterDEFAULT_EXTENSIONS to add other file types.For example, files with the extension .txt are not supported by default. Administratorsmust add it to the parameter.

Figure 31: Consolidation Monitor

The Consolidation Monitor is a global dashboard for monitoring the consolidationprogress for a specific consolidation scope (for a given Category, Period, Group orSub-Group).The Consolidation Monitor is a key component in executing incrementalconsolidations, since it lets the consolidation engine know which entities to execute acurrency translation or consolidation on.

48 © 2011 SAP AG. All rights reserved. 2011

Page 59: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

In the Consolidation Monitor you can do the following:

• Display the control set status which verifies the accuracy of reported data• Display the work status• Display the currency translation status Run currency translations• Display the consolidation status which is the outcome of the consolidation

processing• Run consolidations• Display the running processes and display percent of completion• Reset the consolidation status i.e. due to Master data changes.

Figure 32: Control Monitor

The Controls Monitor which also is a Consolidation feature enables you to executeand monitor controls.

Example:The definition of a blocking control specifies that the same amount for depreciationof buildings be entered in a specific Balance Sheet account/flow and in a specificprofit and loss account. If the amount is not entered in the corresponding account inthe balance sheet, because of your organization's accounting procedures, the blockingcontrol returns a status of Failed after execution. You can then dismiss the blockingcontrol so that the data can be validated in the workflow.You can reset the status of the blocking control to Failed, if it is determined that theoriginal control status should be kept.

Controls are run on a selected entity or group of entities. If you select a Group, youcan run the controls for all the aggregated entities belonging to this Group.Controls are executed in the order in which they appear in the control set.The Controls Monitor displays the Group/Entity structure based on the hierarchycreated in the Ownership Manager.An administrator has given you the View Controls access right.

2011 © 2011 SAP AG. All rights reserved. 49

Page 60: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

The Work status settings and the controls have been configured, and controls areenabled for the model, in Planning and Consolidation Administration. A value hasbeen specified for the MONTHNUM property in the Time dimension.

Figure 33: Journals

You use journals to record and make adjustments to data in the database. Thisis typically done as part of the month-end or quarter-end process. For example,administrators load general ledger information into a model using the Data Manager.Before the close, line managers can review the data and make adjustments asnecessary using a journal entry form.A journal template has been created for the model. The available Journal tasks thatyou can perform in Consolidation Central Journals which is the Journal Monitor are:

• Create a journal entry• Modify a journal entry• Copy one or more journal entries• Post one or more journal entries

50 © 2011 SAP AG. All rights reserved. 2011

Page 61: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 34: Ownership Manager

The Ownership Manager in the Consolidation Central module enables you to createand manage periodic and version dependent ownership-based hierarchies used forperforming statutory consolidations.An ownership-based hierarchy combines Groups and Entity members, where entitiescan be connected to or disconnected from groups according to Category and Time.Groups are nodes whereas entities are base members.You define ownership-based hierarchies in the system to setup and report on entityhierarchies that cannot be managed by a fixed hierarchy.While management reporting entity structures are fixed, and children sum up 100%to their associated parent, ownership-based hierarchies support the legal structure ofstatutory consolidations that cannot be managed by a fixed hierarchy.

Figure 35: Audit

Audits give you the possibility to track changes concerning Security Settings,Transaction Data and Administration Activities.Changes in the Dimension members are audited if the audit of the Administrationactivity is enabled.In the Data Audit configuration, you can enable the audit the changes of Ownershipand Business Rules data.

2011 © 2011 SAP AG. All rights reserved. 51

Page 62: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Audits or Audit Reports can be selected and executed from the Home tab by selectingAudit from the left navigation pane.

Administration Web Client

Figure 36: Access the Admin Web Client

On the Web Client page, you have to select the Planning and ConsolidationAdministration hyperlink to open the Administration web client in a separateworkspace The Administration console is a full Web Administration client. All theadministration tasks are now available through a Web Client.

52 © 2011 SAP AG. All rights reserved. 2011

Page 63: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 37: Navigational Panel

A Navigation Panel enables you to access all the administration views that are groupedby consistent domains.

Figure 38: Manage and Change Environment

On the Administration web client page, you can see two hyperlinks to manage andchange the environments.

2011 © 2011 SAP AG. All rights reserved. 53

Page 64: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

If you click the Change Environment hyperlink, you can then change to a differentenvironment based on your access. To manage the environment, use theManage AllEnvironment hyperlink. This will take you to a page where you can copy, delete,or create environments.

Figure 39: Administration UI Overview - Dimensions

The new user interface of the Dimensions enables to manage a Dimension throughthree distinct pages:

• The structure of Dimension• Members maintenance page• Hierarchical view of the members.

Figure 40: Administration UI Overview - Models

54 © 2011 SAP AG. All rights reserved. 2011

Page 65: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Creating a model means creating a Real-Time Info Provider from BO PC. A modelcontains the business data that defines the relationships, calculations, and data of anorganization or business segment.

Figure 41: Administration UI Overview - Security

With the increasing use of distributed systems and the Internet for managing businessdata, the demands on security are also on the rise.When using a distributed system, you need to be sure that your data and processessupport your business needs without allowing unauthorized access to criticalinformation. User errors, negligence, or attempted manipulation on your systemshould not result in loss of information or processing time. These demands on securityapply likewise to Planning and Consolidation.

User Types in Planning and Consolidation:

• Individual users

– Dialog users are used for administration-related tasks– Internet users are used by Flex client users.– Technical users — not required.

• Technical users — not required

All users needed for operating CLM are of SAP user type Dialog.

Note: If possible, you should not have technical users; however, if this cannotbe avoided, communication destinations can be set up to use technical usersto connect to applications. In such scenarios, these technical users should beset up as Communication type users.

2011 © 2011 SAP AG. All rights reserved. 55

Page 66: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

You can access all the views related to the security topics under the “Security” domainin the left side panel of the Administration workspace:

• Users• Teams• Task Profiles• Data Access Profiles.

From a functional perspective, mass maintenance is possible for user management,team management, and profile management.

Figure 42: Administration UI Overview - Member Formulas

Member Formulas allow you to create and execute formulas and calculations ondimension members.The system calculates formulas at retrieval time. Formulas can slow retrievalperformance if you use them incorrectly.

56 © 2011 SAP AG. All rights reserved. 2011

Page 67: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 43: Administration UI Overview - Logic Script

This function allows you to create files called logic scripts that contain instructions forperforming calculations with special requirements on Planning and Consolidation data.You can perform logic calculations on base level members only. In addition, logicis specific to each model. Planning and Consolidation provides a library of MDXformulas, and the EnvironmentShell sample environment contains a number of logicfunctions.

2011 © 2011 SAP AG. All rights reserved. 57

Page 68: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 44: Administration UI Overview - Business Rules

Business rules are parameter-driven functions within SAP BusinessObjects Planningand Consolidation models for calculating and posting monetary amounts in support ofcommon accounting activities, such as intercompany booking, currency translationand eliminations and adjustments.The main focus of Business Rules is on consolidation.You no longer need to select the business rules to activate when creating a Model ormodifying a Model. Activation is directly done within the Business Rules view youcan access under the “Rules” domain.

58 © 2011 SAP AG. All rights reserved. 2011

Page 69: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 45: Administration UI Overview - Controls

Controls are an essential part of every consolidation application and they might alsobe useful in planning application. A Control is the individual check of data accuracyand consistency.Controls are mainly used to control the consistency of financial data (for example,that a Balance Sheet is balanced or that flow movements match the closing balance).Controls can be enforced (blocking controls), or just displayed as warnings, to informusers of potential problems. “Controls” replace the former “Validation business rules”.Controls are enabled or disabled at model level. A document (report or input schedule)can be linked to each control. This will provide a hyperlink for the user, so that whena control fails, the user can open that document to understand where the issues iscoming from.

2011 © 2011 SAP AG. All rights reserved. 59

Page 70: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 46: Administration UI Overview - Business Process Flows (PerformingActivities) – Process Templates

Performing Activities (formally known as Business Process Flows) guide you througha sequence of tasks within a defined business process. Depending on your role, theactivities available to you can involve completing actions, or reviewing submittedactions.A template is developed in the BPC Admin client. This template can then be copiedinto a number of active instances. Assigned end-users can access these instances toperform the prescribed tasks. This is the same behavior as with previous BPC versions.Saved templates can be validated, locked, copied, deleted, archived, and deployed(readied for instance creation).Templates can be copied into another version to allow the continued operation ofexisting instances based on an older version of the same template.

60 © 2011 SAP AG. All rights reserved. 2011

Page 71: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 47: Administration UI Overview - Business Process Flows (PerformingActivities) – Process Instances

Once a template has been defined, saved, and validated, the administrator can deployinstances (copies of the template) for execution.A process instance, or simply a process, is an iteration of a process template that isin active use.For example, an authorized user creates a process template called “MonthlyReporting” to coordinate the monthly reporting activities of various personnel. Whenthat user, or another authorized user, creates a process for a specific period, suchas November 2009, based on the “Monthly Reporting” template, November 2009is considered a process.A non-running instance can be reset (resetting takes the instance back to a runningstatus and all activities back to their initial state). The Instance owner is informedof all status changes by e-mail.

2011 © 2011 SAP AG. All rights reserved. 61

Page 72: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 48: Administration UI Overview - Work Status

Work Status allows you to lock a region (or slice) of data in a model. The work statussetting overrides a user's member access privileges to write to a given region.

Figure 49: Administration UI Overview - Journals

62 © 2011 SAP AG. All rights reserved. 2011

Page 73: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Journals allow users to make adjustments to data in the database, usually as part of themonth-end or quarter-end process. During the review and analysis step, journals allowusers to capture an audit trail of the changes and adjustments made to the database.The purpose of validation is to prevent incorrect records being saved to the cube.Journal templates can be created for Consolidation models to enter corrections orreclassifications manually . You will receive a posting document with a documentnumber can so you can always refer to this document explicitly. Only one templatecan be defined for a specified BO PC model.Access to the journal template definition is via the Admin Web Client under thefeatures selection.

Figure 50: Administration UI Overview - Context Defaults

The Context is the model, dimensions, and associated members authorized to a userand applicable to what is displayed in the workspace, folder, or view. This featureenables you to specify what defaults are used for the scope context.In the Context Defaults top panel of the main page, you can specify the default modelthat will be used when initializing the scope context.In the bottom panel of the main page of this view, you can edit and then specify thedefaults for each Dimension of the selected Model.The scope context will be initialized with the defaults of the relevant dimensions:

• The default member in a report• The default Member in the data input document• Whether the dimension is displayed in the scope context or not• The description of the dimension is displayed instead of the ID• Only the ID of the members is displayed or only the description or both.

2011 © 2011 SAP AG. All rights reserved. 63

Page 74: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Administrators can set the default context that users automatically work in whenaccessing in the Web client.

Figure 51: Administration UI Overview - Drill Through

You use this function to set up drill-through definitions. Drill-through definitionsallow users to access source data from a report. Source data includes content thatcan be accessed from a URL.Example: Your company is doing a planning report based on regional data. Duringreporting, you need to have more information about the selected region. For thispurpose the Drill-Through functionality is linked for example to an online searchwebsite, giving you all necessary information or to a BW Querry or an ERP report.

64 © 2011 SAP AG. All rights reserved. 2011

Page 75: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Figure 52: Administration UI Overview – Document Types

The documents view is a central repository for storing or sharing files and websites.You can use the features of the documents view to post, share, and retrieve files orthe contents of a website, and to manage the display of content. Therefore, documenttypes and subtypes categorize documents view postings. This is useful if you want tofilter them to see only certain types. You can assign a document type and subtype toaid sorting and filtering.Administrators define document types in the Administration Web UI. Administratorscan define a list of subtypes from which users choose, and users can create their ownas needed when posting the document.Therefore, document subtypes help you to further categorize documents when youpost them in the Content Library.

2011 © 2011 SAP AG. All rights reserved. 65

Page 76: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 53: Administration UI Overview - Audit Capabilities

You can perform activity auditing to track administrative and user tasks at theenvironment level and data auditing to track changes to transactional data at themodel level.Changes in the dimension members are also audited if the audit of the administrationactivity is enabled.In the Data Audit configuration, you can enable the audit the changes of Ownershipand Business Rules data.

Figure 54: Administration UI Overview - Multi-User Object Locking

66 © 2011 SAP AG. All rights reserved. 2011

Page 77: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Navigating in the Administration Interface

Multiple users when accessing the same Administration objects like the Dimensions,Models, Security, business process flows and so on, would result in locking the objects.For example, when the category dimension is being edited by user “A”, at the sametime if user “B” tries to access the category dimension then user “B” would get anerror message saying that the object is being edited by another user.

2011 © 2011 SAP AG. All rights reserved. 67

Page 78: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson Summary

You should now be able to:• Navigate in the Web UI client• Discuss the Workspace and Library Concept• Navigate in the Admin Web UI

68 © 2011 SAP AG. All rights reserved. 2011

Page 79: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Lesson: Creating Environments

Lesson OverviewIn this lesson you will learn how to create environments for Planning andConsolidation and see the available environmental features.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Create an Environment• Configure an Environment

Business ExampleYou want to get familiar with the environmental functionality and get someinformation about EnvironmentShell which is the delivered content for Planningand Consolidation.

Environments

Figure 55: Access the Admin Web Client

2011 © 2011 SAP AG. All rights reserved. 69

Page 80: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

On the Web Client page, you have to click the Planning and ConsolidationAdministration hyperlink to open the Administration web client in a separateworkspace. The Administration console is a full Web Administration client. All theadministration tasks are available through a Web Client.

An environment consists of one or more models and stores all the data fromeach model. Each model contains the master data that controls the data in theenvironment. Models can share one or more dimensions with other modelswithin the environment. Administrators create new environments by copyinginformation from the EnvironmentShell sample environment that is providedwith Planning and Consolidation.

Figure 56: Admin Web Client – Manage and Change Environment

On the Administration web client page, you can see two hyperlinks to manage andchange the environments.With the “Change Environment” hyperlink, you can change to a different environmentbased on your access.With the “Manage All Environments” hyperlink, you can manage the environmentwhich means that you can Copy, Delete, or Create Environments.

70 © 2011 SAP AG. All rights reserved. 2011

Page 81: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Figure 57: Admin Web Client – Change Environment

In the “Change Environment” all environments are offered and you can select whichone you want to connect to.

Figure 58: Admin Web Client – Manage Environments

2011 © 2011 SAP AG. All rights reserved. 71

Page 82: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

In the “Manage Environment” page you can copy an environment, create a newenvironment, and delete an environment. Also on this page, you can see if theenvironment status is set to online or offline.

Note: You can delete an environment when it contains data. You cannot,however, delete a dimension member when there is data associated to thatmember in a model.

Note: An environment is equivalent to an InfoArea within NetWeaver withnearly all unique objects within this InfoArea. No objects are shared acrossenvironments, except delivered properties such as scaling, formula, and soon. An InfoArea is like a folder, but in the case of an environment, it is muchmore delineated.

You can transport environment changes between development and productionsystems. For more information, see the operations guide on SAP Service Marketplaceat http://service.sap.com/instguidesEPM-BPC.

Environment Features

Figure 59: Creating a new Environment

You create new environments by copying the EnvironmentShell sample environmentor an existing environment. You can copy all the components from a sourceenvironment to the target, which includes, but is not limited to, business process flows,drill-throughs, audit, security, work status, transaction data, documents, journals,and Library view data.

72 © 2011 SAP AG. All rights reserved. 2011

Page 83: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

However, database records, documents, and Library view data are the only items forwhich you have the option of not copying. After copying, you can begin to modifythe default models, add new ones, and assign users to them. When you create a newenvironment, Planning and Consolidation does the following:

• Copies the environment WebFolders/data within File Service and userworkspaces

• Creates a copy of all NetWeaver BI objects• Copies all transactional and master data from the source environment to the

new environment• Copies security and Planning and Consolidation metadata• If the system encounters an error when copying a environment, it rolls back to

clear the objects created during the failed copy

You add an environment by choosing Manage All Environments, then copying anexisting environment. When you create the copy, you assign a name and descriptionto the new environment and indicate which records you want copied from the source.

Figure 60: Setting the Environment Status

The environment status is an administrator tool which they use to prevent end usersfrom entering data due to maintenance issues.The environment status determines when and how users can log on and interact withthe data. An environment can have a status of either Online or Offline. A newlycreated environment has a status of Offline until an administrator makes it availablefor use by giving it a status of Online. When an environment is offline, users may berestricted from performing data retrieval and export tasks.

2011 © 2011 SAP AG. All rights reserved. 73

Page 84: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

When users attempt to log on to an environment that is offline, the system displaysa warning and may open the environment to work offline on parked or lockeddocuments. Users can also query the model information, but the data may not becompletely up-to-date. You can manually set the status of an environment by choosing“Manage All Environments Change Status”.You can enter a status message to display to users who try to perform a restrictedtask while the environment is offline. We recommend including the current date andtime and giving an estimated time when the environment will become available,if appropriate.

Figure 61: Setting the Template Version

If you have made changes to any of the dynamic templates for reports or schedules,you can force an update of template files by changing the template version. Therefore,clients that log on to the environment receive the new templates.Updating the template version number will force an update of the template files tothe clients.You can set template versions by choosing Manage All Environments, selecting anenvironment, then choosing “Set Template Version”. Increment template versionsby 1.

74 © 2011 SAP AG. All rights reserved. 2011

Page 85: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Figure 62: Viewing User Activity

Planning and Consolidation logs user and administrator behavior. You can viewactivity logs by choosing Manage All Environments, selecting a environment, thenchoosing User Activity.

Processing a new environment in BO PC automatically results in a new InfoAreain BW. This InfoArea automatically belongs to the name space “/CPMB/”. Thetext description of the InfoArea is the technical name you had given to the newenvironment in BO PC. The technical name of the Info Area is created by the system.You cannot influence it.

Figure 63: Planning and Consolidation Tables - UJA_*

Each Environment has a two-character Application Set Prefix. This prefix is used inthe technical name of every BW InfoCube and MultiProvider.Each Model has a three character Application Prefix.

2011 © 2011 SAP AG. All rights reserved. 75

Page 86: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

It is necessary to know both prefixes when you want to have a look at the data table ofany Planning and Consolidation related feature such as work status or Comments. Thetechnical name of these tables contains the Application Set and the Application Prefix.

Figure 64: UJA_DATA_CHECKER - Check consistency of Environment

The UJA_DATA_CHECKER is an important tool to help finding errors in anenvironment. There is an option to try and fix the error! You should use this programin the test system as well as in the production system after transport.

76 © 2011 SAP AG. All rights reserved. 2011

Page 87: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Creating a new Environment

1. After logging on to Planning and Consolidation Web Client, click at thehyperlink to the right of “Environment”. “Environment ” can be found inthe lower right corner of the screen.

2. In the subsequent pop-up “Connect to Environment” select environment“EnvironmentShell”. Then choose “OK (Connect)”.

3. In the “Launch ” section, click at hyperlink “Planning and ConsolidationAdministration”.

4. Choose “Manage All Environments” and the choose “EnvironmentShell”.5. Choose the “Copy” button.6. Enter the technical name and description of the new environment.7. De-select “Data in Models” and then choose “Copy”.

EnvironmentShell

Figure 65: EnvironmentShell

You can use the EnvironmentShell sample environment to create your ownenvironments. Because it is a shell, it needs to be populated with publications andreports to become a fully functioning environment.

2011 © 2011 SAP AG. All rights reserved. 77

Page 88: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

The EnvironmentShell sample environment does not contain any data except Timedimension information, and has only a limited amount of master data in the form ofdimension members. The dimension master data is limited to default members in mostdimensions, so the environment works when an administrative task is run. When youinstall a new version of Planning and Consolidation, the EnvironmentShell sampleenvironment and its components are overwritten.

Note: You must not modify the EnvironmentShell environment.

The EnvironmentShell environment contains the following components needed tobuild a functioning environment:

• Four sample models - Planning, Rate, Consolidation, and Ownership - whichcontain most of the functionality you need to start building your own environment

– The Planning model is a multi-currency financial model. It is designed, bydefault, to accommodate currency translation.

– The Rate model, which stores the currency rates, is assigned to the Planningmodel as a supporting model. The combination of the two models allowsfor the calculation of currency conversions.

– The Consolidation model contains consolidation information, such aspercentage ownership, percentage control, percentage consolidation, andthe consolidation method for child members.

– The Ownership model is a supporting model for a consolidation reportingmodel. It stores information such as the consolidation methods, ownershippercentages, and group roll up information used for legal consolidation.If you need to build more complex environments, for example, for legalreporting, you can build an environment using the components includedwithin EnvironmentShell

• A set of dynamic report and input schedule templates• Data Manager packages• Blank documents in the “documents” view and reports in the “library” view• Required administration setup parameters• All required dimensions with the properties needed to create a basic planning

and consolidation environment.

78 © 2011 SAP AG. All rights reserved. 2011

Page 89: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Figure 66: EnvironmentShell Dimensions - 1/2

The upper slide shows the dimensions delivered in the EnvironmentShell sampleenvironment. They can be used for Planning and Consolidation.Some dimensions should be used in a consolidation context as Flow and Scope.

2011 © 2011 SAP AG. All rights reserved. 79

Page 90: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 67: EnvironmentShell Dimensions - 2/2

The upper slide shows the dimensions delivered in the EnvironmentShell sampleenvironment. They can be used for planning. Some further delivered dimensions referto a Rate model and some others to the Ownership model.

80 © 2011 SAP AG. All rights reserved. 2011

Page 91: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Environments

Lesson Summary

You should now be able to:• Create an Environment• Configure an Environment

2011 © 2011 SAP AG. All rights reserved. 81

Page 92: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson: Creating Dimensions

Lesson OverviewIn this lesson you will learn how to configure dimensions and how to maintaindimension members. You will also get some information about the features availablefor dimensions and the integration between dimensions and info objects of typecharacteristic.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Create dimensions and members• Create properties and hierarchies

Business ExampleYou want to get familiar with dimension management and see all related features.

Dimension Management

Figure 68: Administration UI – Dimension Management

82 © 2011 SAP AG. All rights reserved. 2011

Page 93: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

A dimension is a collection of related members, which represents one aspect of abusiness; for example, accounts, products, or currency. You manage dimensions bydefining members, creating hierarchies and assigning properties. The dimensionscan be added to one or more models in the environment.To manage dimensions, select Dimensions and Models and then Dimensions from theAdministration screen. You get to the main overview page which contains the list ofall the dimensions in the environment.The header of the list contains the Dimension ID, its description, the type ofdimension and the status:

• to be processed = yellow icon• already processed = green icon.

When you select the dimension, the toolbar with actions is activated. The followingactions exist:

• “New” enables you to create a dimension• “Edit Members” enables you to edit the list of members• “Edit structure” enables you to edit the structure of the dimension to manage

its properties• “Delete” enables you to delete a dimension or a multiple selection of dimensions• “Copy” enables you to create a dimension by copying a selected dimension• “Processing” enables you to process a dimension or a multiple selection of

dimensions.

Figure 69: Creating a New Dimension

You add dimensions to an environment to make them available for use by its models.You can create a new dimension or copy an existing dimension. You can create anew dimension in the Administration screen by choosing Dimensions and ModelsDimensions → New Dimension, then entering the required data.

2011 © 2011 SAP AG. All rights reserved. 83

Page 94: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

When adding a dimension using the New Dimension Wizard, you supply the followinginformation, which is also useful when copying or modifying a dimension:

• ID: Dimension IDs are not case sensitive and display in the case you typed.They must be unique regardless of case.

You can use any ID you want for a dimension as long as you follow theseguidelines:

– Do not use special characters such as accented characters or Cyrillic fontsin IDs.

– Enter a maximum of 16 characters and without single quotation marks ('),double quotation marks ("), back slashes (\), or ampersands (&).

– Dimension IDs cannot contain a hyphen (-), but can contain an underscore(_).

– Do not begin a dimension ID with a number as its first character– Do not use the following names: App, AppAccess, AvlObject,

CategoryAccess, CollabDoc, CollabIcons, CollabRecipient, CollabSupport,CollabType, DBVERSION, Defaults, DesktopStyleDef, Dimension,DrillDef, DTIParam, Function, Formula, Group, InvestParam,MemberAccess, MessageLog, Packages, PageDef, Permission,PublishedBooks, Rate, ReportParam, SectionDef, Status, StatusCode,TaskAccess, User, UserGroup, UserPackages, UserPovDef, WebContents,SOURCE, SIGNEDDATA.

• Description: Create dimension descriptions with a maximum of 255 characters.• Type: The dimension type allows you to organize data within models based

on the type of information included.• Referential Integrity: Validates the properties of the dimension with the

dimension member IDs of a different dimension. When you process thedimension, the system checks the values of the Referential Integrity property.Validation does not complete if they do not pass validation.

• Dimension properties: You can assign new properties to a dimension.

84 © 2011 SAP AG. All rights reserved. 2011

Page 95: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Figure 70: Dimension Types

You use dimension types to organize data within models based on the type ofinformation involved. An environment can have multiple dimensions of one type.Each model within the environment, however, can have only one of each of therequired types. For example, the environment might contain the entity dimensionsEntityB and EntityF, with the Budgeting model using EntityB and the Forecastingmodel using EntityF.

• A- AccountUsually contains chart of accounts and other planning assumption measures. Thedimension is normally represented by a hierarchy of accounts.

• C- CategoryThis represents the versions or scenarios based on which data would be tracked.It contains the types of data you are going to track, such as Actual, Budget,and Forecast. You can set up categories to store versions, such as BudgetV1,BudgetV2, and so on.

• D-AuditThis represents the various data source that could be used to manage the maindata and adjustments if any. This can be used very effectively in calculations andin business rules of a reporting consolidation model to segregate input data.

• E- EntityRepresents the business units that are used to drive the business process.Depending on your model design, the Entity type can be an operating unit, a costcenter, a geographic entity, and so on. This represents the organization unit,whether defined for legal purposes or from a business angle. This could be acost center, profit center, legal company or region. The dimension is normallyrepresented by hierarchy of entities.

• G- Group

2011 © 2011 SAP AG. All rights reserved. 85

Page 96: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Reports consolidated results in multiple group currencies within a single entitystructure. Group provides multiple currencies for a group member.

Note: Assign both an R and a G identifier to a consolidation model butassign only the G identifier to the ownership model referred from theconsolidation model. You cannot assign both an R and a G identifier tothe same ownership model.

• I- IntercompanyContains the intercompany codes for the entities. This represents theintercompany codes for the purposes of legal consolidation intercompanymatching and elimination.

• R- CurrencyContains the currency rates for all currencies in which your company doesbusiness. For validation purposes, all environments must contain a Currencydimension; however, each model within an environment is not required tohave a Currency dimension. The Currency dimension in a Reporting modelmust contain the REPORTING property; the Currency dimension in a Ratenon-reporting model does not need to contain the REPORTING property.

• S- SubtablesThis is used to break down the account activity or flow. For example, someaccounts, such as Fixed Assets, have a Subtables dimension containingOpening, Additions, Deletions, Transfers and Ending Balances. The Subtablestype dimension is important for writing business rules that require currencytranslation amounts to be calculated by account.

• T- TimeContains the time periods for which you store data. This represents the timeperiods based on which data are stored. The time periods could be represented invarious forms such as weekly, monthly, quarterly or custom.

• U- User-definedThis represents any User-defined dimension that may be required for theplanning process. Referred to in the system as U1, U2, U3, and so on.

86 © 2011 SAP AG. All rights reserved. 2011

Page 97: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Figure 71: Edit Structure

Based on the dimension type, a dimension contains a set of predefined properties. Youcan add new properties by choosing Edit Structure, if desired. You can also flag“Allow dimension formulas” to allow creation of Member formulas.Depending on the type of the dimension, some specific system properties areautomatically generated. The rows of these properties in the list are fully highlightedwith a blue background which means that they cannot be deleted or modified. You cannow save or add some properties and/or create some hierarchies.In general there are 2 ways to open up the structure of the Dimension:

• You can edit the structure of a dimension from the list of dimensions using theEdit Structure command in the toolbar

• Or from the dimension members list page by choosing the Edit Structurehyperlink.

2011 © 2011 SAP AG. All rights reserved. 87

Page 98: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 72: Add Dimension Properties

Properties define the behavior of members within the dimension. By assigningproperties to dimensions, you can implement powerful features in your reporting,member lookup, formulas, Data Manager selections, and so on. You can filter onproperties in many places in the system.For example, if you want to be able to easily select entities by geographic region, yousimply add a REGION property, and enter a region value for each entity. Then, youcan filter and sort by region, apply account logic by region, or define a report formatbased on region. The system requires various properties depending on the dimension.You can also assign additional properties for your business needs. Many of theproperties are generic, such as ID and DESCRIPTION, while others can be unique toa dimension, such as SCALING. You can use the following features when workingwith dimensions:

• Adding Properties to Dimensions.

When you add a property to a dimension, you must specify and keep in mind:

– An ID for the property.– The ID is not case sensitive but is displayed in the case it is typed.– The ID must be unique (regardless of case) within a dimension.– The maximum length of an ID is 20 characters– The permitted characters are: A-Z,a-z,0-9,_,-,.– An ID cannot contain the following invalid characters: single quotation

mark ('), double quotation mark ("), backslash (\), ampersand (&), dash (-)

88 © 2011 SAP AG. All rights reserved. 2011

Page 99: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

– The ID cannot start with a number as a first character.– The ID cannot be the same ID as that of a system-generated property.– The ID cannot contain the string of characters “PARENTH”.– The ID cannot be the same ID as one of the special properties described

below.– A name for the property. The maximum length for a property name is

40 characters.– A number of Characters whereby the maximum length for values of the

property. This must be an integer greater than zero.

• Adding Properties to Dimensions in Consolidation, Ownership, and RatesModels.

Here you have the option to add the set of predefined and required propertiesfor the following dimension types: Account, Category, Audit, Entity, Time, andCurrency. If there is already a property with the same ID as one of the requiredproperties, the system handles this as follows:

– The corresponding property is not added to the dimension.– If the number of characters of the existing property is greater than expected,

the system does not change it.– If the number of characters is smaller, it is updated with the default value

specified for this property in the set of predefined properties.A message is displayed at the end of the process to inform you if the systemdid not add some of the properties because they already exist, and if thesystem changed the number of characters.

• Adding Property Values• Modifying Dimension Properties

You can modify a property which is not a system-generated property. You editand change a property directly in the property list. You cannot change a propertyID after you have saved it. However, you can change a property name and thenumber of characters, but you cannot reduce the length previously specified

• Removing Dimension PropertiesYou cannot delete a system-generated property.

2011 © 2011 SAP AG. All rights reserved. 89

Page 100: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 73: System-generated Properties and Special Properties

Please see documentation for Properties on Consolidation and Ownership.

Figure 74: Add Hierarchies

90 © 2011 SAP AG. All rights reserved. 2011

Page 101: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

In the Structure page of a dimension, you can define hierarchies by clicking the “Add”Button, which opens a dialog box in which you must specify the name of the hierarchy.The name of the hierarchy is just a caption (display name) and not the ID. In SAPBusinessObjects Planning and Consolidation 7.5 NW version, the ID of the type“PARENTHn” is automatically generated by the system.In the 10.0 version, you can have breaks in the sequence of hierarchy IDs (PARENTH1, PARENTH3, PARENTH4 , and so on).You can change the Name by editing the field directly and can also remove theHierarchy by selecting it in the list and use the ‘Remove” command.

Figure 75: Dimension Settings: Dimension Validation Rules - Allow MemberFormulas

Referential Integrity:This option validates the properties of the dimension with the dimension memberIDs of a different dimension. When you process the dimension, the system checksthe values of the Referential Integrity property. Validation does not complete if theydo not pass validation.Allow Member Formulas setting:This option must be checked to be able to specify some member formulas forthe dimension in the “Member Formulas” view. If this option is not checked, thedimension is not available in this “Member Formulas” view .

2011 © 2011 SAP AG. All rights reserved. 91

Page 102: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

As you can see from the red mark, it is possible to jump to “Edit Members” from theStructure Monitor. On the other hand, you could also click “Close” and then select“Edit Members”.

Figure 76: Edit Members – Member Maintenance

You can add members to dimensions within an environment in the Administrationscreen by choosing Dimensions and Models → Dimensions, selecting a dimension,then choosing Edit Members. The maximum length for a member name is 32characters. However, this limit only applies to newly created dimensions.For dimensions that were migrated from Business Planning and Consolidation version7.5, the previous limit of 20 characters remains for member names.Once saved, the ID cannot be changed anymore. Also, dimension member IDs cancontain hyphens and underscores, but it cannot accept the special characters.The members are managed in an “Excel-like” grid in which you can use the mainfeatures that are expected for the tasks like manually entering the dimension member,copy and paste (within the list and from Excel), sorting, filtering and ordering columns.

Note: If you make changes to any rules in the dimension, such as adding a newformula, you must validate and save those rules, and process the dimension.

Note: You cannot rename dimension member IDs.

The screen above can be reached by Administration Tab Card → Dimensions andModels → Dimensions . Then a dimension has to be chosen and then “Edit Members”has to be chosen too.

92 © 2011 SAP AG. All rights reserved. 2011

Page 103: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Figure 77: Create Dimension Members

A specific icon enables to identify the status of these edited members:

• Member has been inserted• Member to be saved• Errors• A tooltip provides a description of the status and details for errors. This status is

partially updated on the fly and then updated or confirmed when saving.

The member status is displayed in the row headers of the list for all the Members thathave been edited or changed or added. In addition, you can identify in the grid theproperties/cells that have been changed thanks to the yellow background.

Hint: You can also load master data from ECC, BW and Flat File using theBO PC Data Management Packages!

2011 © 2011 SAP AG. All rights reserved. 93

Page 104: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 78: Delete – Recently Deleted Members - Revert

Excel has been dropped in this release and dimension members are maintained in anExcel-like new interface.Delete and Revert buttons are used to undo the changes made to the dimensionmembers but only if the changes are not confirmed.Revert deleted members restores deleted members unless these deletions are notconfirmed when saving. The members will be restored to how they were at the lastsave.

Figure 79: Apply Hierarchy Order – Define Sorting Order

By default, the list of members is sorted by ascending ID and you can the apply a newsorting order to the column or columns.In 7.5 version, the order of members that a user can specify in the list is not maintainedwhen saving.

94 © 2011 SAP AG. All rights reserved. 2011

Page 105: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

However, in 10.0 the user can manually define the order of members under each nodeof a hierarchy and then apply this specific sorting order to the list of members whenusing the “Apply Hierarchy Order” command.

Figure 80: View: List or Hierarchy

If hierarchies have been defined for dimensions, you can open the graphical editorvia “View: Hierarchy” to edit these hierarchies. There, you can reorder leavesand nodes of a hierarchy directly in this editor by using the “Move Up” and“Move Down” buttons or using the drag and drop method to change the parent/childrelationships.

Note: In the “Show” dropdown box, you can select the Hierarchy of yourchoice if you had maintained more than one hierarchy.

As you can see from the red mark, it is possible to jump to “Edit Structure” from the“Edit Member” Monitor. On the other hand, you could also click “Close” and thenselect “Edit Structure”.

2011 © 2011 SAP AG. All rights reserved. 95

Page 106: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 81: View and Display

In both the List and Hierarchy View you will find the button “Display”.

• Having selected the “List” view, you can choose to display by “Property Namein Column Headers” or “Property ID in Column Headers”.

• Having selected the “Hierarchy” view, you can choose to display by “MemberID only” or “Member ID and Description” or just “Member Description”.

Figure 82: Export to CSV

96 © 2011 SAP AG. All rights reserved. 2011

Page 107: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

You can export the list of members into a CSV file by using the “Export to CSV”command.

Figure 83: Save - Save and Process

When you create a dimension or make changes to an existing dimension, you mustprocess the dimension.Save:

• After making modifications to the dimension members, you can simply Save theDimension and Process it later.

• You can save only the members that are valid for saving.• If there are any errors while saving the dimension members then a detailed

error message will be shown in the status panel and in the row headers of theinvalid members.

• While closing a dimension if some changes have not been saved due to someerrors, then these changes will be lost.

2011 © 2011 SAP AG. All rights reserved. 97

Page 108: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Save and Process:

• Any errors encountered while processing the dimension will be detailed in themessage displayed in the status panel.

• Some checks are only performed when processing and thus some members thathave been saved could be not valid for processing. When you process a newdimension, its properties are saved in the database.

• Processing an existing dimension saves any changes made to a dimension inthe database.

• You can schedule the processing of dimensions with a Data Manager package.

You can Process a dimension:

• From the list of members (list or hierarchy view) by using the “Save andProcess” command

• Later, after saving and closing the Dimension from the main list of dimensions,using the “Process” command.

Figure 84: Dimensions in BW – Do Not Change Anything

When saving and processing a dimension in BO PC this results in an info object of the“characteristic” type in BW. The figure above shows the results for Entity dimension.You must not change anything in the BW info object configuration! Properties in BO

98 © 2011 SAP AG. All rights reserved. 2011

Page 109: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

PC with a length lower than 60 are stored as Navigational Attributes in BW. Propertiesin BO PC with a length bigger than 60 appear as Display Attributes formally butare actually stored in a different table.

Note: You can call ABAP program UJA_REFERSH_DIM_CACHE usingthe process type ABAP_PROGRAM in a process chain to update the BOPC dimension cache.

2011 © 2011 SAP AG. All rights reserved. 99

Page 110: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

To Create a Dimension, Dimension Properties,Hierarchies and Maintain Dimension Members

1. After logging on to the BPC Web client, choose Launch → Planning andConsolidation Administration. Then, on the Administration tab, choose“Dimensions” in the Navigational Panel.

2. In the Dimension table on the right half of the screen, choose the “New”button. A pop-up comes up. Here enter ID, Description and Type. Thenchoose “Create”.

3. On the left hand side in the “Properties” section, choose “Add”. In thenext pop-up, enter the ID, the Name and the Number of Characters. Thenchoose “OK”.

4. In the “Hierarchies” section on the right, choose “Add”. In the subsequentpop-up, enter the description name of the hierarchy and then choose “OK”.

5. If necessary, select “Allow Member Formulas” and select a Dimension forthe “Referential Integrity”. Then, choose “Save” on the upper left.

6. On the upper right for the field “Go To”, select “Members of Dimension:Dimension name”.

7. In row 1 of the ID column, enter a technical name for the dimensionmember you want to create manually. Then, in row 1, fill in all necessaryinformation as description and Property values.

8. Choose “Save” and if saving is successful, choose “Save and Process”.9. Finally, choose “Close”.

100 © 2011 SAP AG. All rights reserved. 2011

Page 111: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Exercise 1: Create Dimensions andMembers

Exercise ObjectivesAfter completing this exercise, you will be able to:• Configure a dimension• Maintain Dimension Members• Save and Process Dimensions

Business ExampleYou need to create dimensions and properties and to maintain dimension membersmanually. Having processed this master data, you want to see the results in BW DataWarehousing Workbench.

Task 1: Access the Administration Web UI and set yourEnvironmentLog on to the Planning and Consolidation Environment

1. Before you can work with the BO PC Web Client, you have to initialize it. Onthe remote desktop connection, go to: Start → Programs → Initialize Course →RKTBPC10 → BPC10. When executing, confirm with “YES” then with “OK”.

2. To log on to the BO PCWeb Client press the Start button on your remote desktopconnection and go to: Start → My Documents → My Documents. When youfollow this menu path, you will see the link “BPC Web Client”. Double-click toreach the BO PC Web client.

A pop-up should come up and asks for your credentials. Enter the user andpassword given to you by the trainer.

3. Having logged on to your BO PCWeb Client you should see the Start Page of theBPC Web Client. Navigate to the Administration Web Page and in the upperright corner select “Change Environment”. Select environment BPC420_##.

Hint: ## corresponds to your monitor number.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 101

Page 112: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Have a look at the list of pre-installed dimensions. Stay on this screen.

Hint: BPC420_## is an exact copy of EnvironmentShell.

Task 2: Create new Account DimensionCreate A-Type Dimension

1. Create a new dimension with the technical name and description P_ACCT oftype Account-A. The Referential Integrity for Ratetype should be “None”.AllowMember Formulas and add the following properties in the following order:

PROPERTYID = Name

Number of Characters

INPUTREADY 2

IS_INPUT 2

OBJECTTYPE 5

OWNER 50

REVIEWER 50

SELECTION 1

STORED_CALC 1

STYLE 1

UNIT 5

Then, in the “Hierarchies” section, add a hierarchy called “PARENTH1”.

Note: This hierarchy name is only a description!

Save. Do not close.

2. You now want to maintain the dimension members. Navigate to the master datamaintenance via the “Members of Dimension: P_ACCT” link and stay on thisscreen. Using copy and paste, we want to create our master data.

Access the master data file. You now have to initialize the file within your BOPC remote desktop connection: Start → Programs → Initialize Course →RKTBPC10 → Initialize BPC420. In the subsequent pop-up, first confirm with“YES” then with “OK”. Now, you should be able to reach the files.

Continued on next page

102 © 2011 SAP AG. All rights reserved. 2011

Page 113: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Navigate to the master data file within the remote desktop connection as follows:Start → My Documents → My Documents. You should now see the node“BPC420”. Open it and navigate to the subnode “BPC420_##”. Here, youshould find the master data file “STUDENT_DIMENSIONS_10.XLS”. Open itand navigate to sheet “PACCT Complete”.

Hint: If you cannot open the file and only the Excel framework opens,navigate as follows within this framework: Office Button → Open →My Documents → BPC420 → BPC420_##. Then, double-click your fileand navigate to the sheet mentioned above.

First, navigate to the OWNER and REVIEWER column of your Excel File andfor all rows beneath both columns, exchange ## with your monitor number.Then, save your Excel File again.

Now, you have to execute a check concerning the order of columns in the Excelfile and the column order in your BO PC master data maintenance editor. It'sessential that the file columns have the same order as in your BO PC editor.Therefore, if the order is not the same, adapt the order of columns within yourExcel file and then save your file again.

Enter the order of BO PC columns in the following list as a guide to restructureyour Excel file if necessary:

BO PC fields Actual column order in editor

ID

DESCRIPTION

ACCTYPE

INPUTREADY

IS_INPUT

OBJECTTYPE

OWNER

RATETYPE

REVIEWER

SCALING

SELECTION

STORED_CALC

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 103

Page 114: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

STYLE

UNIT

PARENTH1

Then save your Excel file.Finally, you are ready and can copy all master data from your sheet “PACCTComplete” into your “Members of Dimension: P_ACCT” editor.

Hint: For a successful copy, do the following:

• Copy from cell A2 to cell O70.• Within the BO PC editor position in cell ID1 and then paste your

master data.

After copying, select “Save” and if no errors come up, select “Save and Process”.If you are asked if you want to set the environment offline select “No”. Finally,select “Close”.

Task 3: Creating a Product DimensionCreate a U-Type Dimension.

1. Create a further dimension which will be user-defined with ID and namePRODUCT2 “Allow Member Formulas”. The only Property should be“PRODTYPE” with 10 as the number of characters. You should also maintain ahierarchy with name “PARENTH1”. Save your settings.

Continued on next page

104 © 2011 SAP AG. All rights reserved. 2011

Page 115: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Copy dimension members from file “STUDENT_DIMENSIONS_10.XLS”taking the members from sheet “PRODUCT”.

Hint: Before you copy, make sure that the order of columns in both theExcel File and the Master Data Editor is the same. If not, rearrangethe order or columns in the Excel file so that the column order is thesame as in the Master Data Editor. To help you here please take thefollowing table.

BO PC fields Actual column order in editor

ID

DESCRIPTION

PRODTYPE

SCALING

PARENTH1

After copying, choose “Save”, then “Save and Process” and finally “Close” toreturn to the list of dimensions.

Task 4: Maintain the Time DimensionAdapt dimension members of T-Type dimension.

1. Open the Time sheet of your “STUDENT_DIMENSIONS_10.XLS” and have alook at the dimension members you are going to copy. As you can see, “Time”has 16 periods, which is 12 calender months and 4 special periods which is 13 to16. The four special periods contain the descriptions S1 to S4. Working with16 periods we simulate a fiscal year variant. This is a feature which does notexist in BO PC.In parallel, navigate to the TIME dimension in your system and select “EditMembers”. First, delete all your master data and position your cursor in cell ID1.Then, navigate to your Excel file and check if the column order in Excel file andsystem is the same. If not, rearrange it as given in the following table:

BO PC fields Actual column order in editor

ID

DESCRIPTION

BASPERIOD

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 105

Page 116: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

LEVEL

MONTHNUM

PERIOD

TIMEID

YEAR

CALENDER

Save your Excel file and copy all members into your master data editor. “SelectSave” and then “Save and Process” without setting the environment offline.Afterwards, select “Close” and return to the list of dimensions.

Task 5: Updating the Category DimensionChange the C-Type Setttings and Members

1. Open the “Category” dimension in “Edit Structure” section. Delete all propertiesexcept for “YEAR”. Then select “Save”. In the “Edit Members” section deleteall members and first “Save” and then select “Save and Process”. Then copy thenew members from your external Excel sheet into the internal member sheet.Finally select “Save and Process”.

Task 6: Updating the Entity DimensionAdd some properties and members to dimension of type E.

1. First, navigate to Entity and, in the “Edit Members” mode, “delete” all members.After that click “Save”. Then, navigate to the structure of the Entity and add thefollowing new properties: COUNTRY and REGION both with a length of 10,as well as the Owner Property with a length of 50. Select “Save”.Return to the master data editor, choose “Display” and then “Property ID inColumn Headers”. Position your cursor in cell ID1.In parallel, navigate to your Excel sheet and make sure you are in sheet “Entity”.Check if the order of Properties is the same as in the master data mode.

BO PC fields Actual column order in editor

ID

DESCRIPTION

H1

Continued on next page

106 © 2011 SAP AG. All rights reserved. 2011

Page 117: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

CONTROL_LEVEL

COUNTRY

CTRL_CURRENCY_NOT_LC

CURRENCY

ELIM

FX_TYPE

INTCO

OWNER

REGION

If not, rearrange the Excel columns until they fit the master data column order.Then, in the “Owner” column of your sheet, exchange ## with your monitornumber. Save the Excel file. After that, you are ready to copy your master datainto your master data screen and press “Save”, the “Save and Process”. Then“Close” the monitor and return to the list of dimensions.

Task 7: Updating the InputCurrency DimensionExchange Members of I-type dimension

1. First, navigate to the master data editor of InputCurrency. Mark all members anddelete them. Then save. Stay on this screen.In parallel, navigate to your Excel sheet and the to “InputCurrency” sheet.Compare the order of your properties with the order in the master data screen.You should make sure that the following order is also found in the Excel sheet. Ifnot, rearrange the Excel sheet and save it afterwards:

BO PC fields Actual column order in editor

ID

DESCRIPTION

ENTITY

MD

REPORTING

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 107

Page 118: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Then, copy and paste the master data into the system and then select “Save”, then“ Save and Process” . Make sure that the environment is not set offline duringmaster data processing. Finally select “Close”.

Task 8: Check if Environment is “ONLINE”Make sure that the environment has not gone offline due to changes in structure andmembers

1. In the Management of Environments, make your that your environment“BPC420_##” is online. Afterwards return to the “Administration” of yourenvironment.

Task 9: View the master data automatically created inthe BW backendBrowse data for the PRODUCT2 dimension in the relevant BW backend and see therelated InfoObject, its settings and characteristic values

1. You should be logged on to your relevant BW backend system given to you byyour trainer. The log on should be done within the Remote Desktop Connection!Then, navigate to the BW Data Warehousing workbench and search for yourenvironment BPC420_## in the section Modeling → InfoProvider. and, underInfoArea, choose “Business Planning and Consolidation”. When found, look for“PRODUCT2” and open the relevant InfoObject. Have a look at all tabs andthen take a special look at the master data maintenance as well as at the hierarchythat had been created with the master data maintenance. After that, return tothe backend screen after system logon.

108 © 2011 SAP AG. All rights reserved. 2011

Page 119: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Solution 1: Create Dimensions and MembersTask 1: Access the Administration Web UI and set yourEnvironmentLog on to the Planning and Consolidation Environment

1. Before you can work with the BO PC Web Client, you have to initialize it. Onthe remote desktop connection, go to: Start → Programs → Initialize Course →RKTBPC10 → BPC10. When executing, confirm with “YES” then with “OK”.

a) Follow the instructions in the exercise to initialize the BO PC Web Client.

2. To log on to the BO PCWeb Client press the Start button on your remote desktopconnection and go to: Start → My Documents → My Documents. When youfollow this menu path, you will see the link “BPC Web Client”. Double-click toreach the BO PC Web client.

A pop-up should come up and asks for your credentials. Enter the user andpassword given to you by the trainer.

a) Follow the instructions in the exercise to open the BO PC Web Client.

3. Having logged on to your BO PCWeb Client you should see the Start Page of theBPC Web Client. Navigate to the Administration Web Page and in the upperright corner select “Change Environment”. Select environment BPC420_##.

Hint: ## corresponds to your monitor number.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 109

Page 120: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Have a look at the list of pre-installed dimensions. Stay on this screen.

Hint: BPC420_## is an exact copy of EnvironmentShell.

a) Within your BO PC Web Client, go to: Launch → Planning andConsolidation Administration on the right of your screen. You should nowbe in the Administration Web Page. Here, choose the “Administration” taband then scroll to the right. On the upper right corner, you will find the link“Change Environment”. Click this link. A “Warning” pop-up comes up.Confirm clicking the “Continue (OK)” button. A new pop-up “Connect toEnvironment” comes up. Here, select “BPC420_##” environment andthen choose “Connect (OK)”. After a short time, the environment isready. To have a look at the list of dimensions make sure you are on the“Administration” tab. Within the Navigation Panel on the left hand side,choose the black triangle to the left of “Dimensions and Models” andthen choose “Dimensions”. Try to get an overview of the pre-installeddimensions and stay in this screen.

Task 2: Create new Account DimensionCreate A-Type Dimension

1. Create a new dimension with the technical name and description P_ACCT oftype Account-A. The Referential Integrity for Ratetype should be “None”.AllowMember Formulas and add the following properties in the following order:

PROPERTYID = Name

Number of Characters

INPUTREADY 2

IS_INPUT 2

OBJECTTYPE 5

OWNER 50

REVIEWER 50

SELECTION 1

STORED_CALC 1

STYLE 1

UNIT 5

Continued on next page

110 © 2011 SAP AG. All rights reserved. 2011

Page 121: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Then, in the “Hierarchies” section, add a hierarchy called “PARENTH1”.

Note: This hierarchy name is only a description!

Save. Do not close.

a) You are in the list of dimensions. Press the “New” button. You will see apop-up. As ID and description, enter “P_ACCT” and leave “Account-A”selected. Choose “Create”. Flag “Allow Member Formulas”. Leave“Referential Integrity for Ratetype: None” unchanged. Choose“Add”under “Properties” and then select “New Property....”. A pop-up called“Add new Property” appears. Here, enter the first property in the upper listwith the ID and Name and select the relevant “Number of Characters”.Then, choose “OK”. Scroll to the right hand side and choose “Add” underthe “Hierarchies” section. In the next pop-up “New Hierarchy” enter thename given in the exercise and then choose “OK”.

Finally click at “Save” on the upper left of your screen. Stay in this screen.

2. You now want to maintain the dimension members. Navigate to the master datamaintenance via the “Members of Dimension: P_ACCT” link and stay on thisscreen. Using copy and paste, we want to create our master data.

Access the master data file. You now have to initialize the file within your BOPC remote desktop connection: Start → Programs → Initialize Course →RKTBPC10 → Initialize BPC420. In the subsequent pop-up, first confirm with“YES” then with “OK”. Now, you should be able to reach the files.

Navigate to the master data file within the remote desktop connection as follows:Start → My Documents → My Documents. You should now see the node“BPC420”. Open it and navigate to the subnode “BPC420_##”. Here, youshould find the master data file “STUDENT_DIMENSIONS_10.XLS”. Open itand navigate to sheet “PACCT Complete”.

Hint: If you cannot open the file and only the Excel framework opens,navigate as follows within this framework: Office Button → Open →My Documents → BPC420 → BPC420_##. Then, double-click your fileand navigate to the sheet mentioned above.

First, navigate to the OWNER and REVIEWER column of your Excel File andfor all rows beneath both columns, exchange ## with your monitor number.Then, save your Excel File again.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 111

Page 122: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Now, you have to execute a check concerning the order of columns in the Excelfile and the column order in your BO PC master data maintenance editor. It'sessential that the file columns have the same order as in your BO PC editor.Therefore, if the order is not the same, adapt the order of columns within yourExcel file and then save your file again.

Enter the order of BO PC columns in the following list as a guide to restructureyour Excel file if necessary:

BO PC fields Actual column order in editor

ID

DESCRIPTION

ACCTYPE

INPUTREADY

IS_INPUT

OBJECTTYPE

OWNER

RATETYPE

REVIEWER

SCALING

SELECTION

STORED_CALC

STYLE

UNIT

PARENTH1

Then save your Excel file.Finally, you are ready and can copy all master data from your sheet “PACCTComplete” into your “Members of Dimension: P_ACCT” editor.

Hint: For a successful copy, do the following:

• Copy from cell A2 to cell O70.• Within the BO PC editor position in cell ID1 and then paste your

master data.

Continued on next page

112 © 2011 SAP AG. All rights reserved. 2011

Page 123: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

After copying, select “Save” and if no errors come up, select “Save and Process”.If you are asked if you want to set the environment offline select “No”. Finally,select “Close”.

a) First, click the link “Members of Dimension: P_ACCt”, which can befound in the upper right corner next to “Go to”. Then, position your cursorin cell ID1.

Then, initialize the access to all files for this training class as describedin the exercise.

Then, navigate to the master data file “STUDENT_DIMEN-SIONS_10.XLS” as described in the exercise. Open it by double-clickingthis file. Then, within this file, choose the “PACCT Complete” sheet. Adaptcolumn owner and reviewer as described in the exercise and then chooseOffice Button → Save to save the master data file's changes.

Check the order of columns in this sheet and, if necessary, adapt it tothe order given in the relevant table in the exercise. Save your file againby choosing Office → Save. To copy all lines correctly, navigate to the“View” ribbon in Excel and select the “Zoom” button. In the upcomingExcel pop-up select “50 %” as “Magnification” and then click “OK”. Then,mark everything from cell A1 to cell O70, Then press “Ctrl” + “C”. Then,navigate to the open master data editor in your system, click in cell ID1and then press “Ctrl” + “V” . Press “Save” and if this was successful, press“Save and Process”. In the last pop-up, select “No”. Then press “Close”and return to the list of Dimensions.

Task 3: Creating a Product DimensionCreate a U-Type Dimension.

1. Create a further dimension which will be user-defined with ID and namePRODUCT2 “Allow Member Formulas”. The only Property should be“PRODTYPE” with 10 as the number of characters. You should also maintain ahierarchy with name “PARENTH1”. Save your settings.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 113

Page 124: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Copy dimension members from file “STUDENT_DIMENSIONS_10.XLS”taking the members from sheet “PRODUCT”.

Hint: Before you copy, make sure that the order of columns in both theExcel File and the Master Data Editor is the same. If not, rearrangethe order or columns in the Excel file so that the column order is thesame as in the Master Data Editor. To help you here please take thefollowing table.

BO PC fields Actual column order in editor

ID

DESCRIPTION

PRODTYPE

SCALING

PARENTH1

Continued on next page

114 © 2011 SAP AG. All rights reserved. 2011

Page 125: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

After copying, choose “Save”, then “Save and Process” and finally “Close” toreturn to the list of dimensions.

a) To create and maintain PRODUCT2, first choose “New” from the list ofdimensions. In the subsequent pop-up, enter “PRODUCT2” as the IDand Description. In the dropdown box, select “User-defined-U”. Then,choose “Create”. On the next screen, flag “Allow Member Formulas”. Onthe left hand side under “Properties” choose “Add”. In the subsequentpop-up, enter “PRODTYPE” as “ID” and “NAME” and for “Number ofCharacters” fill in “10”. Then press “OK”.

On the right hand side in the “Hierarchies” section, press “Add” and in theproceedng pop-up enter “PARENTH1” in the “Name” field. Then, choose“OK”. Then, choose“Save”. Navigate to the master data maintenanceeditor by navigating to the upper right corner of your screen in the “Goto” section. Here, click the “Dimensions of Member: PRODUCT2” link.Position your cursor in cell ID2.

Navigate to your Excel File “STUDENT_DIMENSIONS_10.XLS” and goto the “Product” sheet. Check and, if necessary, rearrange order of columnsaccording to the upper table and save the Excel file.Then mark from cell A2 to cell E33. Press “Ctrl” and “C” and then in themaster data editor click in cell ID1 and press “Ctrl” and “V”. After that,press “Save”, then “Save and Process” and then “Close” to return to thedimension list.

Task 4: Maintain the Time DimensionAdapt dimension members of T-Type dimension.

1. Open the Time sheet of your “STUDENT_DIMENSIONS_10.XLS” and have alook at the dimension members you are going to copy. As you can see, “Time”has 16 periods, which is 12 calender months and 4 special periods which is 13 to16. The four special periods contain the descriptions S1 to S4. Working with16 periods we simulate a fiscal year variant. This is a feature which does notexist in BO PC.In parallel, navigate to the TIME dimension in your system and select “EditMembers”. First, delete all your master data and position your cursor in cell ID1.Then, navigate to your Excel file and check if the column order in Excel file andsystem is the same. If not, rearrange it as given in the following table:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 115

Page 126: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

BO PC fields Actual column order in editor

ID

DESCRIPTION

BASPERIOD

LEVEL

MONTHNUM

PERIOD

TIMEID

YEAR

CALENDER

Save your Excel file and copy all members into your master data editor. “SelectSave” and then “Save and Process” without setting the environment offline.Afterwards, select “Close” and return to the list of dimensions.

a) Mark the “Time” dimension and then click “Edit Members”.

Hint: When you mark the dimension, mark it in the descriptioncolumn and not in the ID column!

You will now be in the master data editor. To delete all existing members,click the icon directly above line 1 on the left hand side of your screen.(This icon is a picture of several squares, one bigger than the other). Doingso you mark all members. Then press “Delete” in the upper left. Positionyour cursor in cell ID1. Then, navigate back to your Excel file and to the“Time” sheet. Check the order of columns and rearrange if necessary. Pressyour Office Button and then select Save. Mark all cells from A2 to I127and press “Ctrl” and “C” to copy the members. Back in your master dataeditor, click in the cell ID1 and then press “Ctrl” and “V”. Press “Save”,then “Save and Process”. Select “No” and then “Close” and you will beback in the dimension list.

Continued on next page

116 © 2011 SAP AG. All rights reserved. 2011

Page 127: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Task 5: Updating the Category DimensionChange the C-Type Setttings and Members

1. Open the “Category” dimension in “Edit Structure” section. Delete all propertiesexcept for “YEAR”. Then select “Save”. In the “Edit Members” section deleteall members and first “Save” and then select “Save and Process”. Then copy thenew members from your external Excel sheet into the internal member sheet.Finally select “Save and Process”.

a) First, choose Category and select “Edit Structure”.

Hint: When you mark the dimension, mark it in the descriptioncolumn and not in the ID column!

Mark each property except for “YEAR” and choose “Remove”. Thenclick at the “Save” button. Then in the upper right hand side click at thelink “Members of Dimension: Category” the. Here mark all membersand then choose “Delete”.

Then navigate to your Excel Sheet and and mark all members of tab cardcategory. Copy and paste them into the member sheet. Then choose “Save”and then “Save and Process”. Finally choose “Close”.

Task 6: Updating the Entity DimensionAdd some properties and members to dimension of type E.

1. First, navigate to Entity and, in the “Edit Members” mode, “delete” all members.After that click “Save”. Then, navigate to the structure of the Entity and add thefollowing new properties: COUNTRY and REGION both with a length of 10,as well as the Owner Property with a length of 50. Select “Save”.Return to the master data editor, choose “Display” and then “Property ID inColumn Headers”. Position your cursor in cell ID1.In parallel, navigate to your Excel sheet and make sure you are in sheet “Entity”.Check if the order of Properties is the same as in the master data mode.

BO PC fields Actual column order in editor

ID

DESCRIPTION

H1

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 117

Page 128: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

CONTROL_LEVEL

COUNTRY

CTRL_CURRENCY_NOT_LC

CURRENCY

ELIM

FX_TYPE

INTCO

OWNER

REGION

If not, rearrange the Excel columns until they fit the master data column order.Then, in the “Owner” column of your sheet, exchange ## with your monitornumber. Save the Excel file. After that, you are ready to copy your master datainto your master data screen and press “Save”, the “Save and Process”. Then“Close” the monitor and return to the list of dimensions.

Continued on next page

118 © 2011 SAP AG. All rights reserved. 2011

Page 129: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

a) Mark Entity in the list of dimensions and choose “Edit Members”.

Hint: When you mark the dimension, mark it in the descriptioncolumn and not in the ID column!

Then “delete” all members by choosing the icon with several squares onthe left hand side of your screen and then “Delete”. After that, choose“Save”. Then, navigate to the structure of the Entity by clicking at“Structure of Dimension: Entity” to the right of “Go to”. On the followingscreen, navigate to the “Properties” section and then press Add → NewProperties.... In the next pop-up, enter COUNTRY as ID and Name.Number of Characters is 10. Press “OK”. Again, click Add → NewProperties... and fill in REGION as ID and Name. Number of Charactersis also10. Press “OK”. Select Add → New Properties... to enter Owner asID and Name. Number of Characters is 50. Press “OK” and then “Save”.Return to the master data editor and choose “Display” and then select“Property ID in Column Headers”. After that, navigate to the hyperlink atthe right hand side next to “Go to” and then click in cell ID1.In parallel, navigate to your Excel sheet and make sure you are in sheet“Entity”. Check if the order of Properties is the same as in the masterdata mode. Use the table above as a guide. After rearranging, you shouldnavigate in the “Owner” column of your sheet and exchange ## with yourmonitor number.Then, save the Excel file. After that, you are ready to copy your masterdata into your master data screen. Mark cell A2 to L29, then press “Ctrl”and “C”. Jump to the master data editor click in cell ID1 and then press“Ctrl” and “V”. Click “Save”, then “Save and Process”. Close the monitorand return to the list of dimensions.

Task 7: Updating the InputCurrency DimensionExchange Members of I-type dimension

1. First, navigate to the master data editor of InputCurrency. Mark all members anddelete them. Then save. Stay on this screen.In parallel, navigate to your Excel sheet and the to “InputCurrency” sheet.Compare the order of your properties with the order in the master data screen.You should make sure that the following order is also found in the Excel sheet. Ifnot, rearrange the Excel sheet and save it afterwards:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 119

Page 130: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

BO PC fields Actual column order in editor

ID

DESCRIPTION

ENTITY

MD

REPORTING

Then, copy and paste the master data into the system and then select “Save”, then“ Save and Process” . Make sure that the environment is not set offline duringmaster data processing. Finally select “Close”.

a) From the list of dimensions, mark the “InputCurrency” dimension. Thenchoose “Edit Members”.

Hint: When you mark the dimension, mark it in the descriptioncolumn and not in the ID column!

Click the icon with the squares to mark all members and then press“Delete”. Then press “Save”.Navigate to your Excel Sheet and open sheet “InputCurrency”. Comparethe order of columns to the order of columns in the master data sheet.When rearranging is done, save the Excel file. Then, mark from A2 to E4within your Excel sheet and then press “Ctrl” and “C”. In your master dataeditor, click in cell ID1 and then press “Ctrl” and “Y”. Finally click at“Save”, then at “Save and Process” and confirm with “No”. A last step is topress “Close” and return to the list of dimensions.

Continued on next page

120 © 2011 SAP AG. All rights reserved. 2011

Page 131: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Task 8: Check if Environment is “ONLINE”Make sure that the environment has not gone offline due to changes in structure andmembers

1. In the Management of Environments, make your that your environment“BPC420_##” is online. Afterwards return to the “Administration” of yourenvironment.

a) In the list of dimensions, scroll to the right and click the hyperlink “ManageAll Environments”. A list of environments comes up. Here, scroll down toyour environment BPC420_## and mark it.

Hint: When you mark the environment, mark it in the descriptioncolumn and not in the ID column!

Then, choose “Change Status” and a pop-up appears. Make sure that“Online” is flagged and select “OK”. On the “Administration” tab, clickthe link “Back to Administration” on the upper left of this tab, next to theblue curved arrow. You should now see the list of dimensions.

Task 9: View the master data automatically created inthe BW backendBrowse data for the PRODUCT2 dimension in the relevant BW backend and see therelated InfoObject, its settings and characteristic values

1. You should be logged on to your relevant BW backend system given to you byyour trainer. The log on should be done within the Remote Desktop Connection!Then, navigate to the BW Data Warehousing workbench and search for yourenvironment BPC420_## in the section Modeling → InfoProvider. and, underInfoArea, choose “Business Planning and Consolidation”. When found, look for“PRODUCT2” and open the relevant InfoObject. Have a look at all tabs andthen take a special look at the master data maintenance as well as at the hierarchythat had been created with the master data maintenance. After that, return tothe backend screen after system logon.

a) In the monitor after system logon, you should navigate as follows to openthe Data Warehousing Workbench: SAP Menu → Business Warehouse→ Modeling → Data Warehousing Workbench: Modeling. Double-click“Data Warehousing Workbench: Modeling” or, after system logon, enter/NRSA1 in the white command field from any screen and hit enter.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 121

Page 132: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Within the Data Warehousing Workbench, click on InfoProvider in theModeling Area on the upper left hand side.

Now, select the InfoArea (these are folders, the icon is a double greendiamond) “Business Planning and Consolidation”.Look for InfoArea BPC420_## and open it. Then, double-click thePRODUCT2 InfoObject. Have a short look at the tabs.Then, select the Maintain button. Select the Execute (F8) button to seethe master data from the BW side.

Figure 85: PRODUCT2 - Master Data Maintenance in BW

Choose “BACK” twice and then, on the “Hierarchy” tab, choose “MaintainHierarchies”. In the list of hierarchies that comes up, there should be oneyellow line. Double-click it and, on the next screen, mark the upper nodeof the hierarchy and press “Expand Branch” to see the complete hierarchywith all nodes and subnodes.

Continued on next page

122 © 2011 SAP AG. All rights reserved. 2011

Page 133: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Dimensions

Figure 86: PRODUCT2 - Hierarchy in BW

Finally, leave the Data Warehousing Workbench by choosing “BACK” fourtimes. You should now be on the screen after system logon.

2011 © 2011 SAP AG. All rights reserved. 123

Page 134: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson Summary

You should now be able to:• Create dimensions and members• Create properties and hierarchies

124 © 2011 SAP AG. All rights reserved. 2011

Page 135: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Lesson: Creating Models

Lesson OverviewIn this lesson you will learn how to create models.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss the creation of a model• Explain Model Page features• Outline the do's and don'ts in BW for InfoProviders created in BO PC• Describe delivered Measure Formulas and define Custom Measures.

Business ExampleYou need models to store transaction data. In Planning and Consolidation, we want tosee how models are created and which features they have.

Create a Model

Figure 87: Administration UI - Model Page

A model is necessary when you want to store transaction data in BO PC. If you createa model in BO PC and process it in BW, you will get a Real-Time Info Provider as aresult. This Provider is set to Planning. You will also get a MultiProvider related tothe automatically created InfoProvider.You can access the “Models” view by selecting “Models” under the “Dimensions andModels” domain in the left-hand panel.

2011 © 2011 SAP AG. All rights reserved. 125

Page 136: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 88: Create a new Model – Step 1: Name and Description

When you press the “New” button on the toolbar, a 6-step wizard opens to create aModel. The first step asks for the ID (mandatory) and Description (optional) of themodel.

Figure 89: Create a new Model – Step 2: Model Types and Data Entry Mode

126 © 2011 SAP AG. All rights reserved. 2011

Page 137: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

During the creation of a model, you have to decide which Type of Model is neededand decide on the Data Entry Mode.Models can be categorized as:

• Reporting Type:Reporting models are used for user input and analysis

– Standard– Financial– Consolidation

• Drivers and Rates TypeDrivers and rates models store reference data

– Exchange Rates– Ownership– Generic.

Since most general ledger and other source systems store balances on a periodicbasis, default data storage for models is based on periodic time intervals. With thismethod, all calculations are on periodic balances. The balances are then accumulatedfor year-to-date reporting. In some business cases, calculations should occur on ayear-to-date basis, like in a model with foreign currency conversion.If a year-to-date basis is required, you can set your reporting models when you createthem to store data on a year-to-date basis, so they accept data entry in the YTDformat. In reporting, periodic values are then derived by calculating the differencebetween the current period and the last period.Using the Data Entry Mode for your Reporting Model, you can decide if transactiondata for this model is entered in periodic or YTD basis.

2011 © 2011 SAP AG. All rights reserved. 127

Page 138: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 90: Reporting Models

Reporting models hold financial data.The upper table describes the different types of reporting models and lists the requireddimensions for each.All model types must have the 4 following dimensions types:

• C – Category• T – Time• E – Entity• A – Account.

In the table above, you can see which dimension types are required when creatingthe relevant model type.You can also find this information in table UJA_ARPYP_DIMTYP.

128 © 2011 SAP AG. All rights reserved. 2011

Page 139: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Figure 91: Drivers and Rates Model

Drivers and rates models support reporting models by holding data such as currencyexchange rates and ownership percentages. You can report on drivers and rates modeldata. You cannot define business rules to these model types.The upper table describes the different types of drivers and rates models and lists therequired dimensions for each.All model types must have the 4 following dimensions types:

• C – Category• T – Time• E – Entity• A – Account.

In the table above, you can see which dimension types are required when creatingthe relevant model type.You can also find this information in table UJA_ARPYP_DIMTYP.

2011 © 2011 SAP AG. All rights reserved. 129

Page 140: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 92: Create a new Model – Step 3: Source Model

You can decide if you want to create a new model from scratch. In this case, select“A Blank Model”.

Note: Be aware that creating from scratch also means that no reports, inputforms, or data management packages can be copied from a source model!

You can also create a model using an existing model. For this, select the “An existingmodel” radio button and then select the model to use as a source. On doing this, reportand input form structures, as well as data management, packages will be copied toyour new model. This can save a lot of work! If you decide in favour of this variantthe source dimensions are offered as dimensions for your new model but you can ofcourse remove them from your model. No source data is copied to the target modelwhen you use flag “An Existing Model”.

130 © 2011 SAP AG. All rights reserved. 2011

Page 141: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Figure 93: Create a new Model – Step 4: Adding Dimensions

In this step, the dimensions will be added to the model.You cannot select multiple dimensions of the same dimension type in a model. Theonly exception are user-defined dimensions since the system enumerates them suchas U1, U2 etc.Creating a new model you have to make sure that all required dimension typesare added once to the Model. Compare the two upper two slides which containtables that describe which model type requires which dimension. Also compare theabove-mentioned table in the backend.A status panel at the bottom of the wizard gives the information about the missingdimension types.Among the selected dimensions, you can also set the secured dimensions, because inBO PC, the security concept for master data authorization is initiated in the model.When defining the security concept, we will refer to the secured dimensions of therelevant model and define the data access to the member of the secured dimensions.This will be done in the data access profile for this model.

2011 © 2011 SAP AG. All rights reserved. 131

Page 142: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 94: Create a new Model – Step 5: Copy from Source

If you had selected “An Existing Model” in Step 3, you will be able to flag the upperselections.Having done so you, will then be able to copy the following objects in Step 5:

• Data Manager Packages (all model types)• Journal Templates (all Reporting types), if some corresponding objects exist

in source model• Control definitions (Financial and Consolidation types), if some corresponding

objects exist in source model.

Note: The activation of business rules is directly done in the Business rulesview.

132 © 2011 SAP AG. All rights reserved. 2011

Page 143: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Figure 95: Create a new Model – Step 6: Review and Create

This step enables you to review what the configuration of the mode will be. It ispossible to return and change some settings or to press “Create” to confirm the model.When processing is finished, choose “Close”. You will then automatically return tothe “Model Page”.

2011 © 2011 SAP AG. All rights reserved. 133

Page 144: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Create a Model

1. After logging on to the BPC Web Client, make sure that the correctenvironment is selected. You will find this information on the lower right.

2. If your environment is not correct, click the hyperlink to the right of theenvironment field. A pop-up appears. Press “continue”.

3. In the next pop-up, select your environment and press “Connect”.4. Connect to the Administration Web Page by clicking the link “Planning and

Consolidation Administration” in the “Launch” section on the upper right.5. Click “Models” in the Navigation Panel on the left hand side.6. In the “Models” section in the middle of your screen, click “New”. A

wizard opens.7. In Step 1, enter ID and Description and then click “Next”.8. In Step 2, flag your Model Type and the Data Entry Mode and then press

“Next”.9. In Step 3, flag “An existing Model” and then select the model from the list

of models to select a source model. Then click “Next”.10. In Step 4, select from the left-hand list called “Available Dimensions:”

the dimensions that you want to add into the “Selected Dimensions:” listand press the “Add” button.

11. To define master data authorizations, flag the relevant dimensions as“Secured”. Then press “Next”.

12. Then, press “Next” twice, and check if your configuration is OK. If not, gothe previous step and correct the settings and then select “Create”. Afterthat, select “Close”. Your model should now be in the list of models.

13. Choose your new model in the list of models. Then you will see the generalsettings and the features that you had set configured. Check if the correctdimensions were selected and the correct secured dimensions. If necessarychange them, and then select “Save” and“Close” afterwards.

134 © 2011 SAP AG. All rights reserved. 2011

Page 145: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Discuss Model Page Features

Figure 96: Model Page Features

On the Models overview page, you can see the ID, the Description, and the typeof Model.For each Model, the following actions can be performed:

• “New”: Enables you to create a Model• “Edit”: Enables you to view and manage the structure of the model’s dimensions,

its type, and other general settings and properties• “Delete”: Enables you to delete a model or a multiple selection of model• “Copy”: Enables you to create a model by copying a selected model• “Optimize”: Enables you to run an optimization process (full or light mode)

on the selected model.

2011 © 2011 SAP AG. All rights reserved. 135

Page 146: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 97: Edit Model - General Settings

You can edit and modify the model by selecting it from the list of models either byclicking the Edit button from toolbar or by clicking on the model hyperlink. This willopen a page to view and manage the structure of the model’s dimensions, its type andother general settings and properties. Once a model has been created, you can viewfeatures of Planning and Consolidation that are being used for the model, includingwhether work status, data auditing, and journal template are on or off.You can also enable comments and use the model as a source of data for externalapplications. Additionally a description for the model can be added.The Model type, the Data Entry Mode and the connected Exchange Rate Model areonly given as information and so they cannot be changed once the model is saved.Some settings come up if you create a Model of Type “Ownership”:

• The setting “Non Interco Member in Ownership” is used to indicate anon-intercompany member within the ownership model.

• The setting Parent/child property used for hierarchy of Groups is used withdynamic hierarchy statutory applications when defining fixed hierarchies.The value must match the value in the Parent property value of entities in thestatutory application's supporting ownership application.

136 © 2011 SAP AG. All rights reserved. 2011

Page 147: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Features used with the Model:

• “Work Status”: Is set to “On” if the work status and data locking settings areenabled for the model.

• “Data Audit”: Is set to “On” if the data audit features are enabled for the model.• “Journal Templates”: This one is only relevant for reporting models. This is set

to “On” if there is a journal template specified for the model.• “Enable Comments”: Checking this option would enable you to use the

comments in the input reports.• “Use as Source of Data”: You can use the “Use as Source of Data for External

Applications” checkbox to make data within the model available for evaluationthrough Process Control. This flag would allow external applications to use thismodel as the source of data. This would generate a virtual provider on top ofthe cube (model) which enables the ODBO clients to retrieve the data of themodel (applications that need to connect to an ODBO provider: EPM Add-in forthe migrated Analyzer reports; EPM Connector; Xcelsius…) but also enablesthe GRC Process Controls Integration.

Figure 98: Edit Model - Change Type & Add/Remove

Change Type :

2011 © 2011 SAP AG. All rights reserved. 137

Page 148: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

On the model edit page, you have the option to change the model type by clickingthe “Change Type” button on the toolbar. This command opens a 3-step wizard thatenables you to change the type and change some of the dimensions assigned to themodel.

• Step 1: Model Type:Gives an option to change the model type. In this step, the type of the modelyou select depends on the type currently assigned to the model. If the model isof type “Reporting”, then you can only select one of the 3 Reporting types andif the model is of type “Drivers and Rates”, you can only select one of the 3Drivers and Rates types.

• Step 2: Gives the option to add or remove the dimensions to the model• Step 3: Review and Create.

In this dialog, you cannot set or change the secured dimensions. Instead, you canmodify the secured dimensions of the model directly in the list of the dimensionsassigned to the model.

Add/Remove:Only gives access to Step 2 and leaves out the possibility to change the model type.

Figure 99: Delete Model

138 © 2011 SAP AG. All rights reserved. 2011

Page 149: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

On the Models Overview page, Administrators can select one or multiple models andthen use the “Delete” command in the toolbar to delete the selected model(s).

Note: You can delete a model when it contains data. You cannot, however,delete a dimension member when there is data associated to that memberin the model.

Figure 100: Copy a Model

You can copy an existing model as a quick way of creating a new model.The system copies the dimensions, data, and templates from the source model tothe new model.You can modify the model later. When you copy a model in the Planning andConsolidation Administration screen, you select a source model, then provide a nameand a description of the new model.

Figure 101: Optimize a Model

2011 © 2011 SAP AG. All rights reserved. 139

Page 150: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

When you create new environments and models, only a small amount of data exists.Since the amount of data you maintain grows over time, we recommend youperiodically run the optimize function to improve performance.There are two different types of optimization available:

• Light Optimization:Closes the open request, compresses without Zero-Elimination and indexes thecube, and updates database statistics for the BW InfoCube.

• Full Optimization:Will perform the same operations as Light Optimization, but will also checkthe NetWeaver BW data model. If the data model can be improved, FullOptimization will do so, and this could take a long time to run (for cubes withlarge data volumes).

Full Optimization will check whether the data model of the BW Cube is builtappropriately. Specifically, it will check:

• Dimension tables have < 20% size of fact table• As many line item dimensions are used whenever possible

If the cube structure can be optimized, then it will:

• Take Environment Offline• Create a Shadow Cube with Optimal Data Model• Move data to shadow cube, delete original cube• Close Open Request, Compress and Index the Cube, Update Database Statistics• Bring Environment back Online.

Because this is technically going to be new cube, any changes that had been made to(or surrounding) the underlying InfoCubes will be lost, which means that:

• Data Transfer Processes (DTPs) to/from the Cube• Aggregates or Business Intelligence Accelerator (BIA) Indexes

will be lost.

Both optimization options require that the environment is offline.Be careful running a Full Optimization, since significant system resources are usedin the process.You can choose to perform either a light optimization or a full optimization.It is possible to execute the optimization online or via Data Management Package.

140 © 2011 SAP AG. All rights reserved. 2011

Page 151: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

The second variant gives you the possibility to schedule optimization execution.Technically, the Package Solution works with delivered process chains:

• /CPMB/LIGHT_OPTIMIZE (with Data Manager Package “Lite Optimize”• CPMB/FULL_OPTIMIZE (with Data Manager Package “Full Optimize”.

Miscellaneous

Figure 102: What you Should not do in RSA1?

It is very important to note that the design of Planning and Consolidation Models canonly be performed using the BO PC Administration Web Page. You cannot use theRSA1 transaction from SAP NetWeaver.

2011 © 2011 SAP AG. All rights reserved. 141

Page 152: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 103: What you are Allowed to do in RSA1?

Changes can be made for InfoProvider properties.

These changes will be lost if the underlying technical InfoProvider is changed.

Figure 104: What you Cannot do in RSA1

142 © 2011 SAP AG. All rights reserved. 2011

Page 153: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Partitioning is not available because we do not use the standard SAP time dimension,and that is all that NetWeaver supports for partitioning.

You could also change the DB Performance parameters (for example, to specifytablespaces) for an InfoProvider. However, most of these parameters are availablewhen the cube contains no data.

Therefore, when you create a new model, you could alter them, but when a shadowInfoProvider is created, these type of changes would be lost. Therefore, it is notreally possible to configure these items.

2011 © 2011 SAP AG. All rights reserved. 143

Page 154: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 105: BO PC Model – BO PC MultiProvider and Query

• The InfoProvider is generated in namespace /CPMB/ with naming convention/CPMB/<AppsetPrefix>I<ApplicationPrefix><1GeneratedChar>

• TheMultiProvider is generated in namespace /CPMB/ with naming convention/CPMB/<AppsetPrefix>M<ApplicationPrefix><1GeneratedChar>

• The Query is generated in namespace /CPMB/ with naming convention<MultiProvName>/!!O<MultiProvName>

• A BO PC InfoProvider can be changed without using the re-modeling toolboxin BW! Therefore, we do not need to obey the underlying SAP NetWeaverrestrictions on adding/removing dimensions.

• Working with Full Optimization :

– A new InfoProvider with all the changes and with a technically new nameis created.

– Transaction data is copied from the original InfoProvider to the newInfoProvider.

– If a new dimension was added, we will fill it on every record with the firstmember maintained in the master data.

– The connected MultiProvider will automatically point to the newInfoProvider. You can see this relation in table UJA_APPL.

– If you had gone into the backend and modeled any additional InfoProviderto the MultiProvider, those changes would be lost and the BO PCInfoProvider would not be related to the MultiProvider.

• The MultiProvider and the Query are always created automatically. They areboth constants in the data flow. The underlying Real Time InfoProvider isexchanged if you do a full optimize. The new InfoProvider would then have tobe added manually to the MultiProvider after the optimization.

• MultiProvider and Query are merely technically needed because of FullOptimization.Depending on the clients request data is directly read from the BPC query. AllMDX statements are then performed against this query, which is automaticallybuilt on top of the MultiProvider.

144 © 2011 SAP AG. All rights reserved. 2011

Page 155: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Figure 106: Delivered Default Measures

The figure above contains a list of default measures in Planning and Consolidation.Custom measures are also supported.

Figure 107: Create Custom Measures

Measures formulas are defined in table UJA_FORMULA.

A new formula is required for each Storage Type (PER or YTD) so you cansupport the measures across either type of Application.

2011 © 2011 SAP AG. All rights reserved. 145

Page 156: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Therefore, there are 6 entries shipped in this table (2 storage types * 3 measureformulas).

The formulas areMultidimensional Expressions (MDX) statements that tell youhow to convert the data into the correct format.

They typically deal with sign transformations and time calculations for eachAccount Type.

• INC accounts are cumulative stored with a negative balance• AST are non-cumulative and stored with a positive balance.

Or you want the format Half Year.

• When you create a new application, the entries from UJA_FORMULA are readand copied to table UJA_FORMULA_APP.

• This is required to replace the variable names with the technical names (we couldhave read UJA_FORMULA at runtime and done a dynamic replacement, butthis optimizes runtime performance).

• Therefore, it is important to note that if you add a new formula intoUJA_FORMULA for an existing application, you will also need to manuallyupdate UJA_FORMULA_APP, as well.

Figure 108: Steps in BO PC after Creating a Model

This figure shows the order of processes that take place when a model is created.

All this configuration is a major reason why you cannot use an existing BWInfo Provider!

146 © 2011 SAP AG. All rights reserved. 2011

Page 157: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Exercise 2: Create Models

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create and optimize a model

Business ExampleYou need to create a model that will later carry actual transaction data. Therefore, youhave to become familiar with setting up a model. You also want to see the effects ofmodels in the Data Warehousing Workbench.

Task: Create a ModelConfigure a model in Planning in Consolidation

1. You are on the Administration Web Page and the “Administration” tab. Createa “Financial” model with “ID and Description” D_ACT##. In your setup,determine that data is stored as “PER” and assign the “RATES” model to yourmodel. Define that creation will start from “An Existing Model” and take the“Planning” model as a reference. Make sure that only the following dimensionsare selected in the new model:

CATEGORY

ENTITY

INPUTCURRENCY

PRODUCT2

P_ACCT

TIME

Make sure that the master data authorization is set for “Entity” and “Category”and then “Create” your model.

2. After creating your model, you should see your new model in the list of models.Mark it and edit the model. Make sure that “Enable Comments” is flagged. Thisshould be the default. If possible “Save” and return to the list of models. Here,do a “Light Optimize” of your model.

3. You want to see the BW result of your Model, so navigate back to BW backendsystem.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 147

Page 158: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Within the Data Warehousing Workbench, go to your InfoProvider with the“description” D_ACT## and have a look at the related characteristics, which aregrouped in dimension tables. Then, close the InfoProvider screen.

4. Check that Planning and Consolidation had created a RealTime InfoProviderfor model D_ACT## and finally return to the screen after system logon.

148 © 2011 SAP AG. All rights reserved. 2011

Page 159: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Solution 2: Create ModelsTask: Create a ModelConfigure a model in Planning in Consolidation

1. You are on the Administration Web Page and the “Administration” tab. Createa “Financial” model with “ID and Description” D_ACT##. In your setup,determine that data is stored as “PER” and assign the “RATES” model to yourmodel. Define that creation will start from “An Existing Model” and take the“Planning” model as a reference. Make sure that only the following dimensionsare selected in the new model:

CATEGORY

ENTITY

INPUTCURRENCY

PRODUCT2

P_ACCT

TIME

Make sure that the master data authorization is set for “Entity” and “Category”and then “Create” your model.

a) On the “Administration” tab, navigate as follows: Dimensions and Models→ Models. Click “New” to open the wizard. Enter D_ACT## as ID andDescription and then press “Next”. In Step 2, flag “Financial” and as “DataEntry Mode” set “PER-Periodic”. For “Model containing Exchange Rate”,set “Rates”. Then click “Next”. In Step 3, flag “An existing Model” and inthe list of models mark “Planning”. Then, click “Next”. In Step 4, navigateto the right hand side “Selected Dimensions:”, mark the first one and thenpress the button “Remove”. Do the same for all dimensions on the righthand side. When the right hand side is empty, navigate to the left handside “Available Dimensions:”. Look for “Category”, mark it and choose“Add”. Follow the upper list of dimensions and add them all using the“Add” button. Finally flag the Category “Secured” on the right-hand side.Entity should automatically be flagged. Then choose“Next” twice andthen “Create”. Finally, press “Close”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 149

Page 160: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

2. After creating your model, you should see your new model in the list of models.Mark it and edit the model. Make sure that “Enable Comments” is flagged. Thisshould be the default. If possible “Save” and return to the list of models. Here,do a “Light Optimize” of your model.

a) You should start from the list of models. Mark your model “D_ACT##”and then press “Edit”. On the next screen, “Enable Comments” on thelower right should already be flagged. If not, flag it and then press “Save”.If it was flagged by default, just press “Close”. Having returned to the listof models again, mark your model and then choose “Optimize”. A pop-upappears. “Light Optimize” should already be flagged by default. Do notchange anything and press “Optimize”. When optimizing is finished, youshould automatically be in the list of models.

3. You want to see the BW result of your Model, so navigate back to BW backendsystem.

Continued on next page

150 © 2011 SAP AG. All rights reserved. 2011

Page 161: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Within the Data Warehousing Workbench, go to your InfoProvider with the“description” D_ACT## and have a look at the related characteristics, which aregrouped in dimension tables. Then, close the InfoProvider screen.

a) In the BW backend system, you are on the screen after system logon.Navigate as follows: SAP Menu→ Business Warehouse → Modeling→ Data Warehousing Workbench: Modeling. Double-click “DataWarehousing Workbench: Modeling” and then navigate as follows:Modeling → InfoProvider. Look for your InfoArea (double green diamond)“BPC420_##” and when found search your InfoProvider “D_ACT##”.Double-click it. Open the dimension tables (folders) as shown below tosee the characteristics and key figure in the automatically created BWInfoProvider:

Figure 109: InfoProvider for Model D_ACT##

Note: The screenshot above shows the relevant InfoProvider forModel D_ACT100 but the structure for any model D_ACT## isthe same.

After having a look at the details of the InfoProvider click “BACK” once.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 151

Page 162: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

4. Check that Planning and Consolidation had created a RealTime InfoProviderfor model D_ACT## and finally return to the screen after system logon.

a) You are in the list of InfoProviders. Mark “D_ACT##” and right-click.Then, select Planning-Specific Properties → Change Real-Time LoadBehavior..... On the next screen “Real-Time Data Target can be Planned;Data Loading not allowed” should be selected. Press “Cancel”. Finallychoose “BACK” once.

152 © 2011 SAP AG. All rights reserved. 2011

Page 163: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Models

Lesson Summary

You should now be able to:• Discuss the creation of a model• Explain Model Page features• Outline the do's and don'ts in BW for InfoProviders created in BO PC• Describe delivered Measure Formulas and define Custom Measures.

2011 © 2011 SAP AG. All rights reserved. 153

Page 164: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson: Describing the Security Model

Lesson OverviewIn this lesson, you will learn about the security concept, the security features andpossible security conflicts.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss the BO PC Security Concept• Recognize Security Conflicts

Business ExampleYou want to become familiar with the BO PC Security Concept and get someinformation about possible conflicts in security modeling.

Security ConceptWhy is Security Necessary?When using Planning and Consolidation, you need to be sure that your data andprocesses support your business needs without allowing unauthorized access to criticalinformation. User errors, negligence, or attempted manipulation on your systemshould not result in loss of information or processing time.Event and NotificationThe event and notification function supports the creation of messages and theirdelivery as notifications or alerts in the application framework or as e-mails. Messagescan be sent to different users and groups and can contain hyperlinks to allow usersto directly perform certain actions, security considerations might apply, which arespecific to the scenario implemented by event and notification.Content Lifecycle Management (CLM)This is a tool that supports distribution of application content across different systems.Given that application content is replicated and detached from its source, securityconsiderations specific to CLM could apply. Since CLM can be configured to connectto applications from which the content originates (managed applications) in a remotemanner, it is necessary to secure these communication channels. For a complete listof the available SAP Security Guides, see http://service.sap.com/securityguide onthe SAP Service Marketplace.

154 © 2011 SAP AG. All rights reserved. 2011

Page 165: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 110: Steps to Define Security

Security On Initial System Installation:The installation user who is the system administrator can perform all administrativetasks, but does not have any access to members.At the beginning, no other users are defined. Two Admin teams are predefined thatcan be used as samples.

• One sample task profile has full Administration privileges (PrimaryAdmin)• One sample task profile has a Public folder and dimension access

(SecondaryAdmin)• One sample task profile that has full Administration privileges and dimension

access (SystemAdmin).

Administrators must assign task profiles to users or teams of users before they canaccess any tasks. Similarly, if they do not assign data access profiles to users orteams to define access to members of a secured dimension, no one has access to thatdimension.Reporting on Security - Audits:All security-related changes, such as adding, changing, and deleting users, teams, taskprofiles and data access profiles can be audited by Planning and Consolidation.To enable auditing for Administration tasks, you choose Features → Audit → Edit →Enable Auditing of Administration Activity.

2011 © 2011 SAP AG. All rights reserved. 155

Page 166: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Once the system records an activity, you can run a report that shows activity based onspecified criteria.Emergency User:When normal access to the system is no longer available, SAP customers can log onas SysAdmin (or other operating system users with administrative rights) to repairthe Planning and Consolidation installation. For access to the ABAP server, see theSAP NetWeaver Security Guide.You can add new users in an environment and assign them to teams, task profiles,and data access profiles.If you are not using the default task or data access profiles and have not set themup yet, we recommend that you define them before adding users. You might alsowant to create teams, so that you can assign the newly added users to the appropriateteams. Alternatively, when you define the teams and profiles, you can assign users tothem at that time.

Figure 111: Integration to SSO (Single Sign-On) Environments

Benefits of SSO:The multiplicity of clients, back-ends, communication protocols and technologystacks leads to an overall complex situation.SSO Prerequisites:Users are created in NetWeaver. User rights are managed in SAP BusinessObjectsPlanning and Consolidation.

156 © 2011 SAP AG. All rights reserved. 2011

Page 167: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

For all EPM 10.0 applications, including Planning and Consolidation 10.0, version forSAP NetWeaver, it is now possible to use the same login.SSO (Single Sign-On) is for Web applications only.

Note: Single Sign-On is based on a session cookie, delivered by the SAPBusinessObjects platform. Once delivered, the cookie can be reused to enteranother EPM 10.0 product. EPM 10.0 web sites must all use the same DNS(Domain Name System) URL name for the cookie to be valid, including theBusinessObjects enterprise web sites and web services.

For user authentication and single sign-on information see http://help.sap.com →SAP Net Weaver .

Figure 112: Administration UI - Security

You can access all the views related to the security topics under the “Security” domainin the left side panel of the Administration workspace:

• Users• Teams• Task Profiles• Data Access Profiles.

2011 © 2011 SAP AG. All rights reserved. 157

Page 168: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 113: Default Administrative Task Profiles

Task profiles define what type of activities or tasks a user or a team of users canperform.Planning and Consolidation is installed with three administrative task profiles bydefault (System Admin, Primary Admin, Secondary Admin).You cannot modify these default profiles. You can, however, copy these profiles tocreate additional profiles for users and teams.

Note: Task profile is the only security object that uses the NetWeaverauthorization objects while the rest of the objects info are stored in BO PCspecific ABAP tables.

Figure 114: Default Task Rights of a…..

158 © 2011 SAP AG. All rights reserved. 2011

Page 169: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

If a user has to perform administration tasks, he or she must be assigned to one of thepredefined administrator roles.Without one of these roles, this user cannot perform any administrator tasks.The figure above gives you an overview about the tasks maintained for the threeadministrative roles delivered in Planning and Consolidation.

Figure 115: Task Profile Set Up – Step 1

On the Administration Web Page, in the “Task Profiles” section, you can see a listof existing task profiles, their ID and the description as well as how many teamsand users have this task profile.Having marked “Task Profiles” on the Navigational Panel click the “Add” button tocreate a new task profile.This command opens a wizard that enables to create a team through 3 steps.In the first step, you must specify an ID and you can also add a description (optional).

2011 © 2011 SAP AG. All rights reserved. 159

Page 170: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 116: Task Profile Set Up – Step 2

In the second step, you have to select the task you want to assign to this new taskprofile. The list in the left pane contains all the available security tasks that are groupedby domain (nodes). You can select a task or a node to add all its tasks simultaneouslyand use the “Add” button to add it to the selection. Multiple selection is also allowed.In the last step, you can check the number of tasks that will be assigned to the profile.Click “Finish” to create the task profile.

160 © 2011 SAP AG. All rights reserved. 2011

Page 171: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 117: Task Profile Management: Edit

Being at the Administration Web Page and here in the Task Profiles section you canclick at one of the existing Task Profiles and you will have the possibility to:

• create a task profile from scratch• copy an existing one• edit a task profile and add or delete some Tasks• delete a task profile.

Figure 118: Tips for Assigning Task Profiles

2011 © 2011 SAP AG. All rights reserved. 161

Page 172: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

The upper slide gives you some hints concerning Task Profiles.

Figure 119: Data Access Profiles Setup

You can create a new Data Access Profile on the Administration Web Page bynavigating as follows in the Navigational Panel: Security → Data Access Profiles →New. Then, specify access rights for models in the New Data Access Profile tab.

162 © 2011 SAP AG. All rights reserved. 2011

Page 173: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

General Rules for Data Access Security

• By default, no one other than the system administrator has access to members.• For each secured dimension of a model, you have to specify one or several

access rights to the members otherwise the access to the entire model is denied.If you partially define access, for example, for one of two secured dimensions,users are still denied access to the model.

• A user can be assigned data access individually and through team membership.• Data access privileges flow down the hierarchy, from parent to child. You

can restrict a child member of a parent with ‘Read Only’ or ‘Write’ access bycreating a separate data access profile and assigning the child ‘Denied’ access.Alternatively, you can use the same data access profile as the parent, but createa new line item for the child.

• When there is a conflict between data access profiles, the least restrictive profileis always applied.

• In case of a conflict between individual and team data access, the least restrictivesetting is applied.

• Denial of data access can be set only at the user level.

The access rights you can assign to a set of members are:

• “Write”• “Read Only”• “Denied”.

Note: If there is at least one hierarchy in the dimension, this hierarchical viewis displayed in this dialog. In case of multiple hierarchies, you can select thehierarchy you want to use for selecting the members.

Assign the access rights to the members of the Application and click Save to savethe data access profiles.

2011 © 2011 SAP AG. All rights reserved. 163

Page 174: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 120: Data Access Profile: Edit

You can modify an existing data access profile by choosing the profile, or highlightingthe profile and selecting Edit, then following the prompts.

Figure 121: Data Access Profile: Delete

You can remove a data access profile by highlighting the profile and selecting Delete,then choosing OK.

164 © 2011 SAP AG. All rights reserved. 2011

Page 175: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 122: Copying Data Access Profile

You can copy an existing data access profile by highlighting the profile and selectingCopy, then entering a new name and description.

Figure 123: Team Setup

2011 © 2011 SAP AG. All rights reserved. 165

Page 176: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

On the Administration Web Page, select “Teams” to see a list of all the teams ofthe environment. From this list, you can create or delete a team (multiple deletionis allowed). You can also edit multiple teams simultaneously (mass maintenancepossible).In this list you can additionally see the ID and the description of the teams as wellas how many users are assigned to each of the teams and the number of task profilesand data access profiles.You can edit and change multiple teams simultaneously and you can create a teamwithout any users assigned to it.

Figure 124: Team Management : Edit – Tab Card Users

On the Administration Web Page, when you select “Teams” you can select “Edit” andhave the possibility to maintain details for the relevant team.On the “Users” tab, you can:

• See the list of all the users assigned to the selection of teams• Add a new user using the Add/Remove button.

166 © 2011 SAP AG. All rights reserved. 2011

Page 177: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 125: Team Management : Edit – Mass Maintenance

If you edit multiple teams at a time, you can see the list of all users assigned to theselection of teams under the “Users” tab. If a user is assigned to all the edited teams,the value in the “Assigned to” field is “All teams”. If a user is not assigned to theedited teams, the value in the “Assigned to” field is“ Some teams only”.

2011 © 2011 SAP AG. All rights reserved. 167

Page 178: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 126: Team Management: Edit – Tab Card Task Profiles

On the “Task Profiles” tab, you can assign your selected Team to the Task Profiles ofyour choice.It is possible to assign a set of task profiles to the selection of teams. If you selectseveral teams and then click “Edit” you will also get an “Assigned to” column, asshown in the screenshot above. Possible values for “Assigned to” are:

• All teams• Some teams only.

168 © 2011 SAP AG. All rights reserved. 2011

Page 179: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 127: Team Management: Edit – Tab Card Data Access Profiles

On the “Data Access Profiles” tab, you can assign your selected Team to the DataAccess Profiles of your choice.

It is possible to assign a set of data access profiles to the selection of teams.

Figure 128: User Types in Planning and Consolidation

You can add new users in an environment and assign them to teams, task profiles, anddata access profiles. If you are not using the default task or data access profiles orhave not set them up yet, we recommend that you define them before adding users.You might also want to create teams, so that you can assign the newly added users tothe appropriate teams. Alternatively, when you define the teams and profiles, you canassign users to them at that time.

2011 © 2011 SAP AG. All rights reserved. 169

Page 180: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

The following types of users are created in SAP NetWeaver Application server first:

• For administrative related tasks, define dialog users• Adobe Flex Client uses Internet users• Content Lifecycle Management uses Dialog users.

Note: We recommend that the application is used in an environment wherethe same users exist throughout all the connected systems in the landscape.

You can enable the server to be Sarbanes-Oxley compliant if you want all clients thataccess the server to challenge users for a user name and password. Also, Planning andConsolidation allows users to save their passwords on their client machine. However,a system administrator can disable this feature, which provides enhanced securityfor Sarbanes-Oxley compliance.To maintain this option in SAPGUI, run transaction SPRO. Choose SAP referenceIMG, then choose Planning and Consolidation and then Configuration Parameters,then Set Global Parameters and find the parameter SOX. Edit the value in IMG: TRUEenables enhanced security; FALSE allows users to save their passwords on the client.

Note: The application does not require the creation of additional dedicatedusers for any special purposes.

170 © 2011 SAP AG. All rights reserved. 2011

Page 181: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Its use is possible via user accounts created for regular users by assigning thenecessary application-related authorizations to them. The application doesnot deliver additional user data synchronization related features in additionto those available in the SAP NetWeaver platform. It also does not imposeany special needs or restrictions, which would limit the usage of relatedNetWeaver tools.If possible, you should not have technical users; however, if this cannot beavoided, communication destinations can be set up to use technical users toconnect to applications. In such scenarios, these technical users should beset up as Communication type users.

Figure 129: User Setup – Step 1

On the Administration Web Page, you can select “Users” and then select “Add” toreach the first step of the Wizard. Here, all NW Users are listed which can be assignedto the environment. We can add, edit or remove a user from BO PC environment.

2011 © 2011 SAP AG. All rights reserved. 171

Page 182: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Two role parts have to be assigned to a BO PC business user in BW end and aretransparent to Business users:

• Static Roles:/POA/BUI_FLEX_CLIENT and /POA/BUI_UM_USER - When each useris created in NW, both roles are required by the BUI layer and it is NOTenvironment related.

• Dynamic Roles:When a user is added to any environment or a user is assigned with any BOPC security task from Admin console.

Note: Both parts of roles are all backend NW roles, which should betransparent to BO PC business users. BO PC business users only have taskprofiles and data access profiles.

Mass assignments of users and teams are also allowed in the user setup wizard. Inthe list of users you can see the IDs of the users, their last and first names and alsotheir e-mail address.These properties are those from the NW users and cannot be changed on the front-end.

Note: For upgrade customers, all users from 7.5 (no matter if it is a windowsAD user or CMS user) should be migrated, and all task profiles and dataaccess profiles assigned to windows AD users (or CMS users) will be assignedto NW users instead after migration.To migrate user/security, a customer should create for each windows AD useror CMS user a NW user, and create a 1:1 mapping between windows AD user(or CMS user) and NW user to enable migration.For customers still using CMS, CMS did some development for BPC 10.0NW where customer can customize for each CMS user a NW user with whichCMS user could directly logon to BPC application.

172 © 2011 SAP AG. All rights reserved. 2011

Page 183: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 130: User Setup – Step 2

In the next step, you can assign all the users you have selected in the previous step toone or more teams.This is not mandatory and thus you can leave the new users not assigned to any teams.The added users are now inserted in the main list of users assigned to the environment.The third step is a summary of the settings in Step 1 and Step 2.

2011 © 2011 SAP AG. All rights reserved. 173

Page 184: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 131: User Management: Edit - Tab Card Teams

You can either edit one user or multiple users simultaneously.On the “Teams” tab, you can see which team(s) the user(s) is/are assigned to.If only one user is edited, you can manage the “team lead” setting.If Multiple users are being edited, then you cannot manage the Team Lead setting.In case of Multiple users the “Users” tab card is added and in the screen the “assignedto” column comes up.Assigning one or more team leaders is useful when you want to give them specialaccess rights to the team’s folder. You can assign team leaders while you are definingor modifying a team.You can choose one or more team members to be a team leader. If a user is flagged asTeam Leader and is authorized for the “Manage Templates” Task, they can access andsave templates to their respective team folder.

174 © 2011 SAP AG. All rights reserved. 2011

Page 185: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 132: User Management: Edit – Tab Card Task Profiles

On the “Task Profiles” tab, if it is a single user, task profiles will be assigned to theuser directly and also will inherit through the teams he or she is assigned to.If several users had been selected they all can get the same profiles assigned. The“Assigned to” column comes up again.

2011 © 2011 SAP AG. All rights reserved. 175

Page 186: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 133: User Management: Edit – Tab Card Data Access Profiles

On the “Data Access Profiles” tab, for single or multiple users, the principles/behaviorsare exactly the same as on the “Task Profiles” tab.

Figure 134: Helpful Security Information

See SAP Note 1501945 “Secure Configuration SAP NW”. This note containsinformation about how the NetWeaver platform can be configured securely.

176 © 2011 SAP AG. All rights reserved. 2011

Page 187: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

To Create Security Feature “Task Profile”

1. You are logged on to the Administration Web Page and in the NavigationPanel. Navigate to: Security → Task Profile.

2. Click “New” and in Step 1 of the wizard, enter the ID and Description.

Then press “Next”.

3. In Step 2, navigate to the left-hand list “Available Tasks” and open thenecessary domain nodes.

4. Mark the relevant Task and press “Add” to shift the task into the “SelectedTasks:” section.

5. Continue until all necessary tasks are in the list on the right hand side.6. Press “Next”, then “Finish” then “Close”.

2011 © 2011 SAP AG. All rights reserved. 177

Page 188: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

To Create Security Feature “Data Access Profile”

1. You are logged on to the Administration Web Page and in the NavigationPanel. Navigate to: Security → Data Access Profile.

2. Click “New” and, in Step 1 of the wizard, you enter the ID and Description.3. Click the relevant model on the lower left.4. On the right hand side of your screen you will find all secured dimensions

(flag was set during model creation). For “each” dimension navigate to thedropdown box beneath “Members” and select the relevant members.

5. Then navigate to the dropdown box under “Access Right” and either select“Read only”, “Write” or “Denied”.

6. Select “Save” on the upper left, then “Close”.

178 © 2011 SAP AG. All rights reserved. 2011

Page 189: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

To Create Security Feature “Team”

1. You are logged on to the Administration Web Page and in the NavigationPanel. Navigate to: Security → Teams.

2. Click “New” and, in Step 1 of the wizard, enter the ID and Description.Then click “Next”.

3. On the left hand side, in the “Available Users” list, mark your user(s) andclick at “Add”.

4. Click “Next”, then “Finish”, then “Close”.5. In the list of Teams, mark your Team and press “Edit”.6. If necessary, click the “Users” tab and press “Add/Remove” to change

the user assignment.7. After that, click “OK”.8. Then, flag the “Team Lead” user(s).9. Select the “Task Profiles” tab and change the “Task Profile” assignment if

necessary. In this case, press “Add/Remove” and execute the change. Thenpress “OK”.

10. Select the “Data Access Profiles” tab and change the assignment ifnecessary. In this case press “Add/Remove” and execute the change. Thenpress “OK”.

11. Finally, select “Save” then “Close”.

2011 © 2011 SAP AG. All rights reserved. 179

Page 190: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

To Create Security Feature “User”

1. You are logged on to the Administration Web Page and in the NavigationPanel. Navigate to: Security → Users.

2. Click “New” and, in Step 1 of the wizard, mark the relevant user in the“Users” tab. Press “Add” then click “Next”.

3. In Step 2, mark the relevant team(s) from the “Teams” tab and then press“Add”.

4. Press “Next” then “Finish”.5. Finally, press “Close”. You will now be back in the list of Users.6. Mark the relevant user(s) in your list and click at “Edit”.7. Navigate to your “Teams” tab and press “Add/Remove”, if necessary, to add

or remove the selected user(s) to/from the team(s). After that click at “OK”.8. Open the “Task Profiles” tab and click “Add/Remove”, if necessary, to

add or remove the selected user(s) to/from the Task Profile(s). After that,click “OK”.

9. Open the “Data Access Profiles” tab and click “Add/Remove”, if necessary,to add or remove the selected user(s) to/from the Data Access Profile.

10. Press “Save” then press “Close”.

Security Conflict

Figure 135: Resolving Data Access Profile Conflicts - Security Example

180 © 2011 SAP AG. All rights reserved. 2011

Page 191: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Since you can define member access by individual users and by teams, there may besituations in which conflicts occur. The following sections describe some potentialmember access conflict scenarios and the rules the system applies to resolve thoseconflicts.The following scenarios are based on the assumption that the Entity dimension is asecured dimension and has the upper hierarchical structures.

Figure 136: Conflict 1: Between Profiles – Less Restrictive Profile Wins

When there is a conflict between data access profiles, the least restrictive profile isalways applied. This section describes three different scenarios where there areconflicts between profiles.

2011 © 2011 SAP AG. All rights reserved. 181

Page 192: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Figure 137: Conflict 2: Father node and child -Top-Down Heredity Unless Childhas Own Access Definition

Conflict Between Parent and Child Members:Authority always flows down the hierarchy from parent to child. Child membersalways have the access level of their parents, unless otherwise specified.

182 © 2011 SAP AG. All rights reserved. 2011

Page 193: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Figure 138: Conflict 3: Teams and User – Less Restrictive Profile Wins

If a user has a direct data access profile assignment and a further one via their teamthe less restrictive profile wins.

Figure 139: Conflict 4: A Member Belongs to Different Hierarchies – LessRestrictive Profile Wins

In this case, Profile B determines User1 ’s access. As a result, User1 is able to senddata to SalesKorea, even if ProfileA denies User1 Write access to SalesKorea (inWorldWide1 hierarchy).

2011 © 2011 SAP AG. All rights reserved. 183

Page 194: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

184 © 2011 SAP AG. All rights reserved. 2011

Page 195: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Exercise 3: Test Security

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create all kinds of security-related profiles• Configure a team in BO PC• Add a BW user to BO PC

Business ExampleYou want to get familiar with configuration of security in Planning and Consolidation,especially Task Profiles and Data Access Profiles.

Task 1: Modify Data Access ProfileChange the delivered Data Access Profile.

1. On the Administration Web Page, change the delivered Data Access Profile“ADMINMBRACCPRF” for your model “D_ACT##” so that All Members andAccess RightWrite are selected for “Entity and Category”. Save your settingsand close the editor.

Task 2: Change Task ProfileChange the Task Profile so that the user is allowed to execute, to create, and to changeeach object in BO PC.

1. Navigate to the Task Profile “FullTaskProfile” and open it in the “Edit” mode.Five domain folders with available tasks are not yet included in the Task Profile:

Administration

Audit

Business Process Flow

Journal

System Security

Add all five domains to your profile. Then save and close the profile.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 185

Page 196: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Task 3: Check Team and User in TeamYour user in the Administration Team should have access to the Data Access Profileand Task Profile which had been adapted in the previous tasks. Additionally, youruser should be “Team Lead”. Check if your user is already correctly assigned in therelevant team and, if necessary, execute the adaptions.

1. Take a look at the “Admin” team and check all settings for your user. Make surethat the following assignments have been done:

- User BPC-## is Team Lead

- FullTaskProfile is assigned

- Data Access Profile AdminMbrAccPrf is assigned.

Save and Close afterwards.

Finally, make sure that your user “only” has assignments to the Task Profile andData Access Profile via the Admin Team. No individual assignments shouldexist.

186 © 2011 SAP AG. All rights reserved. 2011

Page 197: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Solution 3: Test SecurityTask 1: Modify Data Access ProfileChange the delivered Data Access Profile.

1. On the Administration Web Page, change the delivered Data Access Profile“ADMINMBRACCPRF” for your model “D_ACT##” so that All Members andAccess RightWrite are selected for “Entity and Category”. Save your settingsand close the editor.

a) On the Administration Web Page, go to the “Administration” tab. Navigateas follows: Security → Data Access Profiles. In the list of profiles, youshould only see the Data Access Profile mentioned in the exercise. Markthis profile and then choose “Edit”. On the next screen, go to the modellist, which is on the left hand side of your screen, and mark your model“D_ACT##”. Then, on the right half of your screen, you can see thecategory section. In this section, navigate to the “Members” dropdown boxand select “All Members”. In the same section, you can see the “AccessRight” part. Click in line “1” under “Access Right” and three selectionscome up:

• Denied• Read Only• Write.

Select “Write”.

For the “Entity” section, select the same. Set “All Members” and “Write”.Then press “Save” and “Close”.

Task 2: Change Task ProfileChange the Task Profile so that the user is allowed to execute, to create, and to changeeach object in BO PC.

1. Navigate to the Task Profile “FullTaskProfile” and open it in the “Edit” mode.Five domain folders with available tasks are not yet included in the Task Profile:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 187

Page 198: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Administration

Audit

Business Process Flow

Journal

System Security

Add all five domains to your profile. Then save and close the profile.

a) Within the Administration Web Page, go to the “Administration” tab.Navigate as follows: Security → Task Profiles. In the list of profiles,mark the profile mentioned in the exercise. Then, choose “Edit”. On thenext screen, choose the “Add/Remove” button and a pop-up called “EditTasks List” appears. On the left-hand side, you will find the “AvailableInterfaces” list with five folders in yellow. Mark all five folders in one step(use the “Cntrl” key on your keyboard to mark all folders) and then choose“Add”. Choose “OK”, then “Save”, and then “Close”.

Task 3: Check Team and User in TeamYour user in the Administration Team should have access to the Data Access Profileand Task Profile which had been adapted in the previous tasks. Additionally, youruser should be “Team Lead”. Check if your user is already correctly assigned in therelevant team and, if necessary, execute the adaptions.

1. Take a look at the “Admin” team and check all settings for your user. Make surethat the following assignments have been done:

- User BPC-## is Team Lead

- FullTaskProfile is assigned

- Data Access Profile AdminMbrAccPrf is assigned.

Save and Close afterwards.

Continued on next page

188 © 2011 SAP AG. All rights reserved. 2011

Page 199: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Describing the Security Model

Finally, make sure that your user “only” has assignments to the Task Profile andData Access Profile via the Admin Team. No individual assignments shouldexist.

a) On the Administration Web Page, go to the “Administration” tab. Navigateas follows: Security → Teams. In the list of teams, only one team exists.Mark it and then press “Edit”. On the next screen, make sure that you areon the “Users” tab and scroll to your user “BPC-##”. If your user is not yetavailable for your team, choose “Add/Remove”. In the subsequent pop-up“Edit User List for Team: Admin”, choose at “BPC-##” on the left-handside and then press “Add”. After that, choose “OK”. In the list of users onthis tab, flag this user as “Team Lead”. The field is on the right hand sideof your editor. Scroll right to flag for BPC-##.Then go to the “Task Profiles” tab and, if the profile “FullTaskProfile” isnot yet available, choose “Add/Remove”. In the next pop-up, on the lefthand side under “Available Profiles”, mark the “FullTaskProfile” TaskProfile and then press “Add”. Choose “OK”.Navigate to the “Data Access Profiles” tab. Here, choose “Add/Remove” ifyour Data Access Profile “AdminMbrAccPrf” is not yet available. Markyour Profile in the list of “Available Profiles” and then select “Add”, afterthat, choose “OK”, then “Save”, and then “Close”. You should now beback in the list of Data Access Profiles.Finally, go to: Security → Users, mark your user “BPC-##” and choose“Edit”. Go to the “Teams ” tab and check if “Admin” is selected. Then,move to the “Task Profiles” tab. This tab , as well as “Data Access Profile”tab, should be empty, since all authorization for this user is given by theteam assignments. Instead - for both tabs - you will find the “Inherited fromTeams” information. Finally, choose “Close” and return to the list of users.

2011 © 2011 SAP AG. All rights reserved. 189

Page 200: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Lesson Summary

You should now be able to:• Discuss the BO PC Security Concept• Recognize Security Conflicts

190 © 2011 SAP AG. All rights reserved. 2011

Page 201: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Parameters

Lesson: Defining Parameters

Lesson OverviewIn this lesson, you will learn which types of Parameters exist for Planning andConsolidation and where to configure them.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss functional parameters and configuration parameters.• Describe how to customize parameters

Business ExampleYou use administration parameters in every Business Planning and Consolidationscenario to change and enhance the functionality of the model or environment. Someparameters are even cross-environment parameters.

Administration Parameters

Figure 140: Administration Parameters in BO PC

2011 © 2011 SAP AG. All rights reserved. 191

Page 202: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

Three types of parameters used in BO PC:

• Functional Parameters, for example, APPROVALORG• Configuration Parameters, for example, ALLOW_FILE_SIZE• System Parameters, for example, AVAILABLEFLAG.

Functional parameters, which must be set by the user, can be found in the UI ofthe Admin workspace.Configuration parameters (mainly technical parameters that must usually be setonly once) are in IMG.System parameters, which are set by the system (mainly flags), cannot be set bythe user through an Admin UI.Parameters are stored in one of the following tables:

• Table = UJA_PARAM (Cross Environment level)• Table = UJA_PARAM_APP (Environment & Model level).

Note: A few “system” parameters are stored in table UJA_USER_DEF.

Figure 141: Functional Parameters – Example 1/2

The figure above gives an example of a functional parameter, which you can findduring work status setup.

192 © 2011 SAP AG. All rights reserved. 2011

Page 203: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Parameters

Figure 142: Functional Parameters – Example 2/2

The slide above gives an example of a functional parameter, which can be set duringmodel setup.

Figure 143: Configuration Parameters – Set Global Parameters

2011 © 2011 SAP AG. All rights reserved. 193

Page 204: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

To set Configuration Parameters, log on to Backend system and execute transactionSPRO. Then, choose “SAP Reference IMG”. Under the “SAP CustomizingImplementation Guide” node, navigate as follows: Planning and Consolidation →Configuration Parameters.Then you can decide if you want to set:

• Global Parameters• Environment Parameters• Model Parameters.

Figure 144: Configuration Parameters – Set Environment Parameters

Two important Environment Parameters exist:

• ALLOW_FILE_SIZEUse: (Required) The maximum file size a user is allowed to upload. The defaultvalue is 100 MB.

• ALLOW_EXTENSIONSUse: (Optional) Defines the permitted file extensions for upload. If set to [ALL],it allows all extensions.

194 © 2011 SAP AG. All rights reserved. 2011

Page 205: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Parameters

Figure 145: Configuration Parameters – Set Model Parameters

One important Model Parameter is BPC_STATISTICS.The parameter is used to monitor system performance. Certain modules in Planningand Consolidation write detailed run-time statistics to tables UJ0_STAT_HDR andUJ0_STAT_DTL so that you can better analyze where performance bottlenecks occur.Valid values are ON and OFF.

Note: All parameters are documented in the backend system by pressing the“IMG activity Documentation” button, next to the “IMG Activity” button.

2011 © 2011 SAP AG. All rights reserved. 195

Page 206: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 2: Configuration BPC420

To Set Parameters

1. First, log on to your backend system and then enter transaction “SPRO” inthe transaction box. Press “Enter” on your keyboard.

2. On the next screen, press the “Display SAP Reference IMG” button.3. On the next screen, choose the black triangle to the left of the “Planning

and Consolidation” node.4. Choose at the black triangle to the left of the “Configuration Parameters”

node.5. Click, for example, the icon “IMG-Activity” for “Set Global Parameters”.6. On the next screen, press the “Insert” button and a little “Detail” pop-up

comes up.7. Enter the technical name of the global parameter of your choice (Compare

appendix) and then choose “OK”.8. Mark the new global parameter in the list of parameters and then press

“Change”.9. In the subsequent “Detail” pop-up, enter a parameter value for the “Value”

section of this pop-up.10. Then choose “OK”.11. Choose “Save”, then “Back” three times. You should now be back on the

screen after system logon.

196 © 2011 SAP AG. All rights reserved. 2011

Page 207: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Parameters

Lesson Summary

You should now be able to:• Discuss functional parameters and configuration parameters.• Describe how to customize parameters

2011 © 2011 SAP AG. All rights reserved. 197

Page 208: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

Unit SummaryYou should now be able to:• Define the technical background of SAP BusinessObjects Planning and

Consolidation.• Navigate in the Web UI client• Discuss the Workspace and Library Concept• Navigate in the Admin Web UI• Create an Environment• Configure an Environment• Create dimensions and members• Create properties and hierarchies• Discuss the creation of a model• Explain Model Page features• Outline the do's and don'ts in BW for InfoProviders created in BO PC• Describe delivered Measure Formulas and define Custom Measures.• Discuss the BO PC Security Concept• Recognize Security Conflicts• Discuss functional parameters and configuration parameters.• Describe how to customize parameters

198 © 2011 SAP AG. All rights reserved. 2011

Page 209: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 210: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 211: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

199 © 2011 SAP AG. All rights reserved. 2011

Page 212: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

200 © 2011 SAP AG. All rights reserved. 2011

Page 213: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3Using the EPM add-in

Unit OverviewThis unit is about the EPM Add-in, about the most important flags for reports andinput forms and gives an overview about delivered templates.

Unit ObjectivesAfter completing this unit, you will be able to:

• Create an EPM add-in connection• Describe the features of the EPM add-in ribbon• Define default values for dimensions with the EPM Context Bar• Build a simple report

Unit ContentsLesson: Introducing the Excel Interface of the EPM add-in .. . . . . . . . . . . . . . . . . .202

Procedure: Connecting to a BW InfoProvider .. . . . . . . . . . . . . . . . . . . . . . . . . . . . .209Procedure: Enabling the EPM add-in .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210Exercise 4: Report and Plan in the Excel Interface of the EPM Add-In .223

2011 © 2011 SAP AG. All rights reserved. 201

Page 214: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Lesson: Introducing the Excel Interface of the EPM add-in

Lesson OverviewThis lesson shows you how to connect to the Excel Interface of the EPM add-in, usethe EPM Context Bar, set user options, and work with reports and input schedules.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Create an EPM add-in connection• Describe the features of the EPM add-in ribbon• Define default values for dimensions with the EPM Context Bar• Build a simple report

Business ExampleNow that your company or client has implemented SAP BusinessObjects Planningand Consolidation, you need to learn how to work with the new EPM add-in.

Overview of the EPM add-inIn this section, we will learn about the EPM add-in and how to connect to it.

The EPM add-in is an Office Add-in for Excel, Word, and PowerPoint.

202 © 2011 SAP AG. All rights reserved. 2011

Page 215: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

The Excel Interface of the EPM add-in has the following features.

• EPM Data Retrieval

– Create reports– Analyze data– Dynamic formatting– Calculations– Charts– Print and share– Integration

• Planning and Consolidation Only

– Data input– Planning functions– Distribution and Collection– Data manager

The Excel Interface of the EPM add-in can be used for the entire EPM Suite:

• SAP BusinessObjects Planning and Consolidation 10.0 MS - Business Planningand Consolidation

• SAP BusinessObjects Planning and Consolidation 10.0 NW - Business Planningand Consolidation

• BOFC - SAP BusinessObjects Financial Consolidation• SSM - SAP BusinessObjects Strategy Management• PCM - Profitability and Cost Management• FIM - Financial Information Management

Types of Connections

• Planning and Consolidation• SAP BusinessObjects Business Intelligence (BI) platform• Local

To access a specific InfoCube or model with the Excel Interface of the EPM add-in,you need to use a connection for a specific data source and a report. The Connectionsare managed in the Connections Manager dialog box.

Using a Planning and Consolidation connection, the EPM add-in also enables you toenter data on SAP BusinessObjects Planning and Consolidation models.

2011 © 2011 SAP AG. All rights reserved. 203

Page 216: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 146: Data Connectivity

Figure 147: Access SAP BusinessObjects Planning and Consolidation and BWData Simultaneously

You can use the EPM add-in to read data from both SAP BusinessObjects Planningand Consolidation and a BW InfoProvider simultaneously.

204 © 2011 SAP AG. All rights reserved. 2011

Page 217: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Figure 148: Logging on from the EPM Tab

Logging on enables you to establish an initial connection between all the workbooks(for one Excel instance) and an InfoCube or a Model.

When you log on, you select the initial connection for the workbooks. The Logondialog box proposes the default connection, if you have defined one.

If it is left blank, you can click the ellipsis button and either select a previously definedconnection or create a connection in the Connection Manager. The connection youselect will then be considered the active connection.

If you launch the EPM add-in from Planning and Consolidation Web Administration,you see connections for all the models for which you have security.

Logging on to a connection

1. Use the Log on button to log on to a connection.2. The EPM Logon dialog appears. Click the ellipsis button to select a connection.3. Select a Connection and click OK4. Enter your user ID and password and click Logon. This dialog is bypassed when

Single Sign On is configured.5. As an option, you can set any connection as the default by highlighting the

connection and clicking Set as default.

Opening the Connection Manager

2011 © 2011 SAP AG. All rights reserved. 205

Page 218: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

On the EPM tab, go to Log onFrom Report Actions, go to Manage ConnectionsGo to EPM pane → Active Connection → Select Another Connection

Note: The EPM Pane will only display Select Another Connection once youhave established a connection.

If you need another connection, you can create one in the Connection Manager. Thereare various ways to call the Connection Manager. When you open Excel with theEPM add-in, you can call the Connection Manager by clicking the Log on button onthe EPM tab and then clicking the ellipsis button.

You can also call Connection Manager by selecting EPM → Report Actions →Manage Connections.

Additionally, once you have established a connection, you can Select AnotherConnection from the Active Connection dropdown list of the EPM pane.

The Active Connection is the connection for all the workbooks. Then, at any time,you can select another connection that will become the active connection for thecurrent sheet. The Active Connection is used by default when a new report is built.

Figure 149: Creating an SAP BusinessObjects Planning and ConsolidationConnection from the Excel Interface of the EPM add-in

206 © 2011 SAP AG. All rights reserved. 2011

Page 219: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Figure 150: Generating a Connection Name

Figure 151: Access the EPM - Connection Manager from the Web Client

Local connections are .oqy files. These connections can be stored on your machine oranother machine on the network.

2011 © 2011 SAP AG. All rights reserved. 207

Page 220: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 152: Connecting to a BW InfoProvider

208 © 2011 SAP AG. All rights reserved. 2011

Page 221: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Connecting to a BW InfoProvider

1. In the EPM Connection Manager, choose Create

2. From the Create Connection window, choose Local. Then, from the LocalConnections dropdown, select SAP BWOLE DB Provider. Then choose Connect.

3. In the window, enter your system credentials and then choose Next.

4. In the EPM-Logon window, enter your user name and password andchoose Log on.

5. In the Create New OLE DB Data Source window, choose $INFOCUBE andchoose Finish.

6. In the Create Connection window, choose the BW InfoProvider from the Selectthe cube/model that contains the data you want dropdown box and then chooseOK

7. In the Browse for Folder window, select the folder where you would like to savethis local connection and choose OK

2011 © 2011 SAP AG. All rights reserved. 209

Page 222: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Enabling the EPM add-inUseIf the Excel Interface of the EPM add-in has been disabled, you can enable it byfollowing the steps below:

Procedure1. In Microsoft Office Excel 2007, choose the Office button, then choose the Excel

Options button.

2. In the Excel Options window, choose Add-ins.

3. Choose Disabled Items from the Manage drop-down menu and choose the Gobutton.

4. In the Disabled Items window, choose the SAP BusinessObjects EPM Solutions,Add-in for Microsoft Office and choose the Enable button.

5. Choose the Close button.

The EPM RibbonIn this section, you will learn how to use the EPM add-in Ribbon.

Figure 153: EPM add-in Ribbon

210 © 2011 SAP AG. All rights reserved. 2011

Page 223: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

The EPM add-in for Microsoft Office contains an EPM tab with a ribbon. The EPMtab is the main entry point to perform reporting and data input actions. Depending onthe Microsoft Office application (Excel, Work, PowerPoint), the EPM tab does notcontain all the same commands.

Note: When installing the EPM add-in, you specify the applications you use.For example, if you specified you would use Financial Consolidation, theData Input group in the ribbon is not displayed since it is not relevant for thisapplication. If you want to use Planning and Consolidation later on, you candisplay the commands that are related to Planning and Consolidation.

When positioning your cursor on a command in the EPM tab, a tooltip appears,explaining the command.

You can customize the ribbon. To display or hide the commands or group ofcommands in the ribbon, select EPM→ Options → Command Display Options

Figure 154: EPM - Command Display Options

Depending on the connection type of the selected report, and the related features thatare available, interface items are hidden or shown. Here, you define what interfaceitems to hide or show. Your selections have priority over the visibility settingsdetermined by the connection.

2011 © 2011 SAP AG. All rights reserved. 211

Page 224: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Connection GroupLog on/off- Connect or disconnect the connections of the Workbook

Reports GroupOpen - Open reports or input forms from Local folder or Server folderSave - Save reports or input forms from Local folder or Server folderEdit Report - Call up the EPM Report EditorNew Report - Create a new report on the active connectionReport Actions - Delete, copy or paste reports and manage connectionsView Formats - Open or close the EPM Formatting SheetRefresh - Refresh the current worksheet.

The data analysis group contains the following four options:

Data Analysis GroupExpand - Expand the selected memberCollapse - Collapse the parent of the selected memberKeep - Keep only the selected membersExclude - Exclude the selected member

UndoBack: Undo up to the five most recent activities including:

• Expand (Excel only)• Collapse (Excel only)• Keep member (Excel only)• Exclude Member (Excel only)• Member Recognition• Row and column axes switch• EPM pane changes• Report Editor changes• Member Selector changes• Data refresh

Note: The Back navigation action will be available on a spreadsheetuntil you do something else on the same spreadsheet using Excel, oranother EPM add-in operation on any spreadsheet. Its purpose is to letyou immediately back out of a navigational action, layout change, orrefresh of the cube that was done in error or gave you undesirable results.

212 © 2011 SAP AG. All rights reserved. 2011

Page 225: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Data InputSave data - Save, refresh, and validate data. Change work status.Comments - Add and find commentsPlanning - Spread trend and weight functionsJournals - Launch the journals workspace

CollaborationBook publication - Publish precalculated workbooks to the webDistribution - Distribution and collection functionsPortal publication - Publish to a BI launchpad

ToolsDrill through - Drill through to BW, ECC, or a Web siteQuick links - Manage data, member, and report linksOffline mode - Set the current workbook to offlineInsert function - Launch the Excel Insert Function dialog boxOptions - Open the sheet, user, context, and command display optionsMore - Freeze data refresh, access member properties, and so on

HelpAbout the EPM add-inAccess the Planning and Consolidation online help

The EPM Context Bar and the EPM PaneIn this section, you will learn how to move, resize, and hide EPM Context and EPMPanes.

2011 © 2011 SAP AG. All rights reserved. 213

Page 226: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 155: EPM Context and EPM Panes

The first time you use the EPM add-in, you must click the Show Pane & Contextbutton on the EPM Ribbon to see the EPM Context Bar and EPM Pane. By default,the EPM Context bar is displayed horizontally, below the ribbon. The EPM pane isdisplayed vertically on the right side of the window by default.

To move the EPM Pane or the EPM Context Bar:

• Use drag and drop or• Click the dropdown arrow in the header and click Move. Then, move the cursor

to the new position for the pane and click.

To re-size the EPM Pane or the EPM Context Bar:

• Move a corner by dragging and dropping or• Click the dropdown arrow in the header, click Size, move the cursor for the new

size of the pane and click the pane corner

To close the EPM Pane or the EPM Context Bar:

• Click the x in the corner of the pane.• Click the dropdown arrow in the header, and click Close.

To re-dock the EPM Pane or EPM Context Bar to their original position, double-clickthe Panes header.

214 © 2011 SAP AG. All rights reserved. 2011

Page 227: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

To hide the EPM Pane or the EPM Context Bar:

• On the EPM Ribbon Tools group, select the Options → User Options. Go to theOthers tab, and deselect the Display EPM Context Bar and Display EPM Panecheckboxes in the lower right-hand corner.

• Use the toggle button Show Pane & Context in the EPM Ribbon. (This willshow or hide both panes.)

Note: The Show Pane & Context toggle button will only work if you haveyour User Options set to display these panes.

The EPM Context BarIn this section, you will learn about the features of the EPM Context Bar.

The EPM - Context Includes:

• The dimensions that are included in the current InfoCube / Model.• The members that are used in the current display of an online report• The saved members in an offline report

Figure 156: The EPM Context

2011 © 2011 SAP AG. All rights reserved. 215

Page 228: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

The context defines, for each dimension of a selected cube/model, a membercorresponding to the default member to be applied. Dimension members that areselected in the axes of a report override the members selected in the EPM context andsubsequent context pane changes will not be used to select data. Therefore, it might beprudent to hide or lock the dimension.

Figure 157: EPM Context Lock tab

Figure 158: Locked Dimensions are Grayed Out

On the Context Lock tab, you can select, hide, or lock members for the EPM ContextBar. You can define this at the worksheet and at the workbook level. To lock adimension on a workbook or worksheet, go to the EPM Ribbon and select Options →Context Options.

In the Context Lock tab, select the level from the Context Level drop-down menu(workbook or worksheet), then click the member hyperlink of the dimension you arelocking to open the Member Selector. Then, select the member you wish to lockthe dimension with.

The Lock checkbox is automatically checked for the dimension.

216 © 2011 SAP AG. All rights reserved. 2011

Page 229: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

If you set the member at the workbook level, this affects all worksheets in theworkbook.

Figure 159: Member Selection: The Report's EPM Pane Takes Precedence Overthe EPM Context

You can also set a filter for a dimension by using the Page Axis in the EPM Pane.

Caution: The members selected on the axes of a report override the membersselected in the context.

For this reason, you may consider hiding the dimensions if you choose to filter themin the Page Axis.

2011 © 2011 SAP AG. All rights reserved. 217

Page 230: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 160: The EPM - Context With Category Hidden

Figure 161: The Context Display Tab

218 © 2011 SAP AG. All rights reserved. 2011

Page 231: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Here, you define the EPM Context Bar options. The list of dimensions changes fromone worksheet to another. In the Context Display tab, you define the display of theEPM Context Bar.

You can specify display settings for the context by selecting EPM → Options →Context Options.

The following options are available on the Context Display Options tab:

• Hiding Dimensions: You can decide not to display a dimension in the EPMContext bar by selecting the Hide checkbox. This checkbox is available on boththe Context Display and Context Lock tabs. This is helpful if you have locked adimension on the worksheet or if you decide to filter using the Page Axis andwant to hide it from the EPM Context bar.

• Dimension and Member Name Display: The name of the dimension and thename of the member are displayed in the EPM Context bar by default. If youprefer to only show the member name, and not the dimension name, you canuncheck the Show Dimension Name option.

• Dimension Color: Colors are displayed by default in the EPM Context bar. Youcan choose not to display the colors by unchecking the Show Dimension Coloroption. Additionally, you can define the colors you want by clicking the coloredarea in the Color column and selecting a color from the palette.

• Dimension Order: You can modify the default order of the dimensions as theyappear in the EPM Context bar by selecting a dimension and clicking the Upor Down button.

The EPM PaneSAP BusinessObjects EPM solutions 10.0, Add-in for Microsoft Office (the EPMadd-in) provides multiple ways to create a new report including:

• EPM Report Editor• Entering members directly in a sheet• EPM Pane• Report creation using copy and paste.• Drag and Drop

This section will show how to create a report using the EPM Pane.

2011 © 2011 SAP AG. All rights reserved. 219

Page 232: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 162: EPM Pane

The EPM Pane is a graphic user-interface for defining a report. For all three reportbuilding options, any dimension member not specified in the report definition will bederived from the EPM Member Selector.

In the Current Report area of the pane, you can drag and drop one or severaldimensions to the following sections to create a report

• Page Axis (Optional)• Row Axis• Column Axis

As soon as you drag and drop at least one dimension in the row axis and onedimension in the column axis, the report with the selected dimension is displayed inthe worksheet. However, this only occurs if the Defer Layout Update option isnot checked,

If you select the Defer Layout Update option, the Update button is enabled, whichwill prevent the report layout from being updated automatically each time a change tothe axes section is made.

220 © 2011 SAP AG. All rights reserved. 2011

Page 233: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

This can help improve performance when you are accessing a large amount of data.This will allow you to quickly add, move, and remove dimensions from the dimensionssection to the axes sections. Then you can select Update when you are finished.

By default, the member taken into account for a dimension is the one defined in thecontext, with theMember and Children relationship. Once a dimension has beenadded to an axis section, you can select another member for the dimension by clickingthe dimension name that appears as a link. TheMember Selector opens and youcan select the member you want.

When placing several dimensions on one axis, you can reorder the dimensions byselecting a dimension row (click to the right of the dimension link, not the linkitself) and dragging and dropping it. This can also be accomplished by selectinga dimension, and using the dropdown.

EPM Pane: Drag & Drop to Spreadsheet: You can also use the EPM Pane tobuild a report by dragging the dimensions from the Current Report area to the Excelspreadsheet.

Figure 163: Highlight Report

The Highlight Current Report option will color code the report based on the page,row, and column axis and current connection to the EPM solution. This option will beextremely useful for those worksheets that are complex with reports from multipledata sources.

2011 © 2011 SAP AG. All rights reserved. 221

Page 234: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 164: Select other members

In this section you will learn how to create reports using drag and drop.

222 © 2011 SAP AG. All rights reserved. 2011

Page 235: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Exercise 4: Report and Plan in the ExcelInterface of the EPM Add-In

Exercise ObjectivesAfter completing this exercise, you will be able to:• Connect to the Excel interface of the EPM add-in• Use delivered templates• Configure user options• Create a template using drag and drop• Save templates• Use input schedules

Business ExampleYou need to use the EPM add-in to run some delivered reports, create your ownreports, and enter some transaction data.

Task 1:Create a connection and configure your user options.

1. Create a connection to the Expense model for your assigned environment.

Open the native Excel, go to the EPM ribbon and log on.

For NetWeaver, create a connection to the server with URL:http://wdflbmt7122.wdf.sap.corp:54080/sap/bpc/ (no dashes). Let the systemgenerate the connection name.

For MIcrosoft, create a connection to the server with URL:http://wdflbmt7121:1080/sap/bpc/ (no dashes). Let the system generate theconnection name.

Your environment will depend on which class you are in:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 223

Page 236: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Class Environment

BPC410 BPC410_SMASTER

BPC420 BPC420_##

BPC430 BPC430_##

BPC440 BPC440_##

2. Define your user settings to display the EPM context bar and the EPM pane.

Hint: You may need to use the right arrow to scroll the EPM ribbonto the right.

Note: If the EPM Context and Pane disappear, select EPM Worksheetunder Options → Sheet Options.

3. Deactivate the display of dimension color.

Note: If the EPM Context and Pane disappear, select EPM Worksheetunder Options → Sheet Options.

4. Set your context members as shown below.

Dimension Member ID - Description

P_ACCOUNT PL400 - Indirect Expenses

P_CATEGORY Plan - Plan

P_COST DIRECT - Direct

P_CURR LC - Local Currency

P_TIME 2011.TOTAL - 2011 Total

MEASURES PERIODIC - Periodic

Note: Measure is a dimension provided by the system that allows you toview period vs. cumulative data.

5. Practice the list vs. hierarchy display as well as filtering in the P_ACCOUNTmember selector for the Calc Member Flag property.

Continued on next page

224 © 2011 SAP AG. All rights reserved. 2011

Page 237: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

To Practice Do This

The List vs.Hierarchy display

Choose the down arrow next to the field and select List

Member Filteringby Properties 1. Select the filter icon to display members based on

their Calc Member Flag property.2. To deactivate the filter, choose the red X.

Task 2:Use a delivered template to analyze data, modify the context member selections, andpractice the drill down and back options to view the data at the level of detail you need.

1. Open the Dynamic Report with Nested Rows to view the data for indirectexpenses.

2. Drill down to the months for Q1. Then use the Back option in the Undo panel.

Hint: You may need to use the left arrow to scroll the EPM ribbon to theleft in the next step.

3. Swap the axis.

Task 3:Create a report via drag and drop, then save it to the company folder for later use.

1. In the Expense model, create a new workbook and use drag and drop to build areport with account by entity in the rows and time in the columns.

2. Define the P_ACCOUNT members as base members for the net income parent.

Hint: You may need to maximize your screen.

3. Hide the empty rows.

4. Restrict the time members to Base Level for 2011 and the entity members toMember and Children for the TOTAL ID.

5. Save the report as the Account by Entity Trend ## in the Company REPORTSfolder.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 225

Page 238: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Task 4:Change the Account by Entity Trend ## report so you can input budget data.

1. Switch your P_CATEGORY context to Budget and deactivate suppression.

2. Switch the report to an input form and set the Keep Formula on Data option sothat your formulas are not overridden.

3. Select Consulting for the rows.

4. Enter the following data for January 2011:

Account Amount

Personnel Cost 25,000

Travel and Entertainment 2,000

Advertising and Promotion 500

5. Use cell formulas to add 5% for February to December and save the data tothe database.

6. Save your input template to the Input Schedules folder for the company asAccount by Entity Input.

7. Close Excel

226 © 2011 SAP AG. All rights reserved. 2011

Page 239: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Solution 4: Report and Plan in the ExcelInterface of the EPM Add-InTask 1:Create a connection and configure your user options.

1. Create a connection to the Expense model for your assigned environment.

Open the native Excel, go to the EPM ribbon and log on.

For NetWeaver, create a connection to the server with URL:http://wdflbmt7122.wdf.sap.corp:54080/sap/bpc/ (no dashes). Let the systemgenerate the connection name.

For MIcrosoft, create a connection to the server with URL:http://wdflbmt7121:1080/sap/bpc/ (no dashes). Let the system generate theconnection name.

Your environment will depend on which class you are in:

Class Environment

BPC410 BPC410_SMASTER

BPC420 BPC420_##

BPC430 BPC430_##

BPC440 BPC440_##

a) From your remote desktop, open the Start menu and choose Programs →Microsoft Office → Microsoft Office Excel 2007.

Excel opens and displays a new worksheet.

b) Goto the EPM tab, and choose Log On.

The EPM - Logon dialog box is displayed.

c) Next to the Connection field, choose the Ellipsis (...) button.

The EPM - Connection Manager opens.

d) Choose Create.

Caution: If you are in the BPC410 class, select the Version for theMicrosoft Platform type.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 227

Page 240: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Use Server URL http://wdflbmt7121:1080/sap/bpc/

e) In the Server URL field, enter http://wd-flbmt7122.wdf.sap.corp:54080/sap/bpc/ (no dashes) asshown below.

Figure 165: Create Connection

f) Choose Connect.

g) If prompted, enter your user ID and password to create the connection.

User ID Password

BPC-## training

h) Choose Logon.

Environments and models are loaded.

i) Use the dropdown box to select your environment and model.

Environment Model

Your assigned environment EXPENSE

j) Choose Generate Connection Name.

Continued on next page

228 © 2011 SAP AG. All rights reserved. 2011

Page 241: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

The system generates a connection name made up of the model ID andenvironment ID.

k) ChooseOK→ select the EXPENSE - <Your Environment ID> connection→OK.

l) If prompted, enter your user ID and password to access your environmentand model.

User ID Password

BPC-## training

m) Choose Logon.

The EPM pane appears on the right.

2. Define your user settings to display the EPM context bar and the EPM pane.

Hint: You may need to use the right arrow to scroll the EPM ribbonto the right.

Note: If the EPM Context and Pane disappear, select EPM Worksheetunder Options → Sheet Options.

a) Choose Options → User Options...

Figure 166: Options

b) Choose the Others tab.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 229

Page 242: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 167: Options - User Options

c) Confirm Display EPM Context Bar and Display EPM Pane are selected.

d) Choose OK.

e) Click on Show Pane and Context.

The EPM Context and EPM pane both disappear.

f) Click on Show Pane and Context again.

The EPM Context and EPM pane both reappear.

Continued on next page

230 © 2011 SAP AG. All rights reserved. 2011

Page 243: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

3. Deactivate the display of dimension color.

Note: If the EPM Context and Pane disappear, select EPM Worksheetunder Options → Sheet Options.

a) Choose Options → Context options.

b) Deselect Show Dimension Color as shown below.

Figure 168: EPM - Context Options

c) Choose OK.

4. Set your context members as shown below.

Dimension Member ID - Description

P_ACCOUNT PL400 - Indirect Expenses

P_CATEGORY Plan - Plan

P_COST DIRECT - Direct

P_CURR LC - Local Currency

P_TIME 2011.TOTAL - 2011 Total

MEASURES PERIODIC - Periodic

Note: Measure is a dimension provided by the system that allows you toview period vs. cumulative data.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 231

Page 244: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

a) Click in the EPM Context field for P_ACCOUNT, and choose Select OtherMembers... from the dropdown list.

The EPM - Member Selector opens.

b) Under Select member names to display (blue box to the left of thedropdown), select Description from the dropdown list.

Hint: You may need to maximize your screen to see the OK buttonin the next step.

Figure 169: EPM - Member Selector

c) Expand Net Income and Operating Income → Select Indirect Expenses→ Choose OK.

Your P_ACCOUNT context is now set to Indirect Expenses.

d) Use the same method to select your remaining context members as shownbelow.

Continued on next page

232 © 2011 SAP AG. All rights reserved. 2011

Page 245: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Figure 170: Ribbon with Context

5. Practice the list vs. hierarchy display as well as filtering in the P_ACCOUNTmember selector for the Calc Member Flag property.

To Practice Do This

The List vs.Hierarchy display

Choose the down arrow next to the field and select List

Member Filteringby Properties 1. Select the filter icon to display members based on

their Calc Member Flag property.2. To deactivate the filter, choose the red X.

a) In the EPM context field for P_ACCOUNT, choose Select Other Members...

The EPM - Member Selector is displayed.

b) Select the dropdown box next to Hierarchy and choose List.

The accounts are now displayed as list not as a hierarchy.

c) Choose Filter→ under Property choose Calc member flag→ underOperator choose =→ under Values choose Y.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 233

Page 246: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 171: Select Other Members

Under the Dimension Members you can see the parent account members.

d) Choose Cancel to close the EPM - Member Selector.

Task 2:Use a delivered template to analyze data, modify the context member selections, andpractice the drill down and back options to view the data at the level of detail you need.

1. Open the Dynamic Report with Nested Rows to view the data for indirectexpenses.

a) In the EPM ribbon, select Open → Open Server Root Folder...

Continued on next page

234 © 2011 SAP AG. All rights reserved. 2011

Page 247: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

Figure 172: Open Server Root Folder

The Open dialog box is displayed.

b) On the left of the dialog box, choose Company(Public) → Reports →Templates.

c) Select DYNAMIC REPORT WITH NESTED ROWS.

Figure 173: Open Dynamic Template

d) Choose Open and after the report opens, choose Refresh from the EPMRibbon

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 235

Page 248: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Figure 174: Dynamic Template Results

The report opens and displays the most recent data.

2. Drill down to the months for Q1. Then use the Back option in the Undo panel.

Hint: You may need to use the left arrow to scroll the EPM ribbon to theleft in the next step.

a) Double-click Q1 2011 to drill down to monthly data.

Figure 175: Drill Down to Months

b) In the Undo panel, choose Back.

Continued on next page

236 © 2011 SAP AG. All rights reserved. 2011

Page 249: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

3. Swap the axis.

a) On the lower right, next to Column Axis, select Switch Axis.

Now time is in the rows and accounts are in the columns.

b) Choose Back.

Task 3:Create a report via drag and drop, then save it to the company folder for later use.

1. In the Expense model, create a new workbook and use drag and drop to build areport with account by entity in the rows and time in the columns.

a) Choose the Office Button → New.

The Template dialog box opens.

b) Choose Create or OK.

c) From the EPM Pane, copy the dimensions to the cells specified belowby drag and drop.

Dimension Cell

P_COST B4

P_ACCOUNT C4

P_TIME D3

Figure 176: Drag and Drop Initial Result

You have created a new report. The row and column axis can be seen onthe lower right.

2. Define the P_ACCOUNT members as base members for the net income parent.

Hint: You may need to maximize your screen.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 237

Page 250: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

a) On the lower right on the Row axis, click P_ACCOUNT (in blue hypertext).

The EPM - Member Selector is displayed.

b) Select the Net Income parent by placing a checkbox to the left of themember.

c) In Selection Relationship on the lower left, select Base Level.

d) Choose the right arrow to move the selection to Selected Members.

Net income base level members are moved to selected members and theprior selection is highlighted.

e) Click the left arrow to remove the highlighted default selection.

Figure 177: Member Selection

f) Choose OK.

The EPM - Member Selector closes and you have base level membersfor net income in the rows.

Hint: If you receive a warning about the “Do not storeenvironment” option choose the checkbox for Do not show thismessage again then choose OK.

Then you will not receive this message again.

Continued on next page

238 © 2011 SAP AG. All rights reserved. 2011

Page 251: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

This option allows you to save a report without storing theconnection with the report so you will be able to use this reportwith other connections for Models with the same Dimensions.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 239

Page 252: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

3. Hide the empty rows.

a) Choose Options → Sheet options.

The EPM Sheet Options dialog box is displayed.

b) Next to Rows select Remove Empty.

Figure 178: Hide Empty Rows

c) Choose OK then from the EPM ribbon choose Refresh

Figure 179: Hide Empty Rows Result

The empty rows are removed.

Continued on next page

240 © 2011 SAP AG. All rights reserved. 2011

Page 253: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

4. Restrict the time members to Base Level for 2011 and the entity members toMember and Children for the TOTAL ID.

a) In the Column axis, choose P_TIME.

The EPM - Member Selector is displayed.

b) Select the 2011 parent by placing a checkbox to the left of 2011 (16).

Note: This member has 16 descendants.

c) In Selection Relationship on the lower left, select Base Level.

d) Choose the right arrow to move the selection to Selected Members.Choose the blue left arrow to remove the prior selection which is alreadyhighlighted.

e) Set the display to Description.

f) Choose OK.

g) Use the same steps to display Member and Children for the P_COSTdimension for the Total parent then choose OK.

Figure 180: Time Base Members

Your report now has months in the columns for the Direct, Support, andTotal cost center groups.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 241

Page 254: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

5. Save the report as the Account by Entity Trend ## in the Company REPORTSfolder.

a) In the EPM menu, choose Save → Save to Server Root Folder.

The Save dialog box is displayed.

b) Choose Company (Public) → REPORTS.

In the File Name field, enter Account by Entity Trend ##.

c) Choose Save.

Task 4:Change the Account by Entity Trend ## report so you can input budget data.

1. Switch your P_CATEGORY context to Budget and deactivate suppression.

a) In the EPM Context for P_CATEGORY, left click Plan → Select OtherMembers.

b) Select Budget → OK.

c) Choose Options → Sheet options.

d) Next to Rows select Keep All → OK.

e) Choose Refresh.

The report should display blank rows since no budget data exists.

Continued on next page

242 © 2011 SAP AG. All rights reserved. 2011

Page 255: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

2. Switch the report to an input form and set the Keep Formula on Data option sothat your formulas are not overridden.

a) Choose Options → Sheet Options.

The EPM - Sheet Options are displayed.

b) Select Use as Input Form.

c) Choose the Refresh tab and select Keep Formula on Data.

Figure 181: Keep Formula on Data

d) Choose OK→ Refresh.

3. Select Consulting for the rows.

a) In the EPM Pane on the Row axis, choose P_COST.

The EPM - Member Selector is displayed.

b) Expand Total → Expand Direct→ Select Consulting by placing a checkboxto the left of Consulting (0).

c) Choose the right arrow to move the selection to Selected Members. Choosethe blue left arrow to remove the highlighted default selection.

d) In Select member names to display, select ID from the dropdown list.

e) Choose OK.

4. Enter the following data for January 2011:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 243

Page 256: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Account Amount

Personnel Cost 25,000

Travel and Entertainment 2,000

Advertising and Promotion 500

a) Enter the values as shown above.

5. Use cell formulas to add 5% for February to December and save the data tothe database.

a) In E6, enter the following formula: =D6*1.05.

b) Copy the formula and paste it into the cells E7 and E8.

c) Copy E6:8 to F6:8 through O6:8.

d) Choose Save Data → Save Worksheet Data.

Figure 182: Save Worksheet Data

The EPM - Submit Data dialog box is displayed.

e) To send the data, choose Yes.

The Save Results dialog box is displayed.

f) Choose OK.

g) Select cell E6 to check if the formula is still the cell.

Continued on next page

244 © 2011 SAP AG. All rights reserved. 2011

Page 257: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing the Excel Interface of the EPM add-in

6. Save your input template to the Input Schedules folder for the company asAccount by Entity Input.

a) In the EPM ribbon, choose Save → Save to Server Root Folder.

The Save dialog box appears.

b) Choose Company (Public) → Input Schedules.

c) In the File Name field, enter Account by Entity Input ##.

d) Choose Save.

7. Close Excel

a) Choose the Office button → Exit Excel

b) Do not save any workbooks.

2011 © 2011 SAP AG. All rights reserved. 245

Page 258: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 3: Using the EPM add-in BPC420

Lesson Summary

You should now be able to:• Create an EPM add-in connection• Describe the features of the EPM add-in ribbon• Define default values for dimensions with the EPM Context Bar• Build a simple report

246 © 2011 SAP AG. All rights reserved. 2011

Page 259: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Unit Summary

Unit SummaryYou should now be able to:• Create an EPM add-in connection• Describe the features of the EPM add-in ribbon• Define default values for dimensions with the EPM Context Bar• Build a simple report

2011 © 2011 SAP AG. All rights reserved. 247

Page 260: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

248 © 2011 SAP AG. All rights reserved. 2011

Page 261: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 262: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 263: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

249 © 2011 SAP AG. All rights reserved. 2011

Page 264: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

250 © 2011 SAP AG. All rights reserved. 2011

Page 265: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4Data Acquisition

Unit OverviewAfter completing this unit, you will understand how load master and transaction datawell as hierarchies from BW. You will also understand how to load data via Flat File.This unit also shows how to create a MultiProvider and Query Scenario based onplan data from BO PC.

Unit ObjectivesAfter completing this unit, you will be able to:

• Explain the Data Manager Package tool and the issues related to it.• Explain the configuration of Flat File Uploads.• Describe the set up of Uploads from BW.• Install Master Data Upload, a Hierarchy Upload and Transaction Data Uploads

Unit ContentsLesson: Managing Data with Data Manager .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267

Procedure: Configuring a Flat File Upload ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278Exercise 5: Load Process using the Data Manager .. . . . . . . . . . . . . . . . . . . . . .291

2011 © 2011 SAP AG. All rights reserved. 251

Page 266: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Lesson: Managing Data with Data Manager

Lesson OverviewIn this lesson, you will learn about the Data Manager in Planning and Consolidation.The Data Manager is an important tool for all kinds of data loads.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Explain the Data Manager Package tool and the issues related to it.

Business ExampleYour project team wants to learn about the BO PC Data Manager Packages.

Data Manager Access

Figure 183: Data Manager UI Access

252 © 2011 SAP AG. All rights reserved. 2011

Page 267: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

You can access a BO PC model using two connection types:

• Webservice: Planning and Consolidation connection type whereby theconnection is stored on the SAP BusinessObjects Enterprise platform. Usingthis connection type, it is possible to use the “Data Manager” ribbon and setup data uploads of all kinds.

• ODBO provider: This local connection type can be stored on your machine oranother machine on the network but it is not possible to use the “Data Manager”ribbon with this connection type.

Figure 184: Be aware of the following

Note: The use of the Data Manager is only possible via a Webserviceconnection.

Figure 185: Data Manager Tab Card

The Data Manager is integrated with the Excel interface. Click the Data Managertab to start the Data Manager.

2011 © 2011 SAP AG. All rights reserved. 253

Page 268: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Two ribbons are available in the Data Manager tab: Connection:You can set up system logic to work together with packages in the Data Manager.When you import data, most packages automatically run default logic, which iscontained in the default.lgf file, for your application. You can also include logic filesin packages, or you can prompt users for logic files that they would like to use.

Data ManagerThe Data Manager is a Planning and Consolidation module that helps you move datainto the system, copy or move data within and across applications, and export datafrom an application for use in an external tool. In addition, the Data Manager supportsmapping and complex transformations of data.The Data Manager also allows you to export transactional and master data from anapplication within Planning and Consolidation to a file that you can use in an externaltool. The Data Manager is used with both

• SAP BusinessObjects Planning and Consolidation, version for the Microsoftplatform

• SAP BusinessObjects Planning and Consolidation, version for SAP NetWeaver.

Two ribbons are available in the Data Manager tab:

• Connection - the place where you define the Webservice connection to reach inorder to work with Data Manager features

• Data Manager Group - the place where you can perform all BO PC data managertasks:

– Run package or package links– View package– Package links and schedule status– Upload data– Download data– Data preview– Organize package or package links list– Create and manage Transformation files– Create and manage Conversion files– The More button will allow you to either Clear the prompt values or change

the dedicated connection for Data Manager.

254 © 2011 SAP AG. All rights reserved. 2011

Page 269: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

Figure 186: Security and Task Profiles for the Data Manager

Data Manager Packages Task Profiles are located under Security → Task Profiles inthe Administration Web Page. They direct which Data Manager Actions a user canexecute.

Figure 187: Security and Task Profile Descriptions

The figure above explains the Tasks available for Data Manager in detail.

2011 © 2011 SAP AG. All rights reserved. 255

Page 270: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 188: Data Management Packages

A package is a set of specific tasks that define the work to be done. These tasks arebased on information you provide by entering information in Data Manager packageprompts. Packages allow you to move data among your Planning and Consolidationdatabases according to the business processes.By default, there are three types of packages within the Data Manager:

• Data Management• Financial Processes• System Administration.

Note: By definition, a package in the Data Manager has been added eitherby default or as the result of customization in the "Run Package" dialog box.Packages in the Data Manager are standard and shared among all modelswithin all environments in a given Planning and Consolidation installation.

Data Manager Packages in Planning and Consolidation, version for SAP NetWeaverare technically Process Chains.A process chain is a sequence of processes, which are scheduled to wait in thebackground for an event. Some of these processes trigger a separate event that can inturn start other processes. A process in the context of process chains is a procedureinside of or external to an SAP system with a defined beginning and end.

256 © 2011 SAP AG. All rights reserved. 2011

Page 271: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

Figure 189: Organize Package List

The packages that come with Planning and Consolidation are designed to be dynamic,which means that you are not required to modify them for the packages to work withyour models and dimensions.You can modify packages to behave differently or to perform additional functions. Inthe “”Organize Package List" dialog box, you can do the following:

• Add a package• Modify a package• Remove a package• Copy a package• Move a package

Most process chains are delivered but you can also take a process chain as a template,copy it and modify the configuration.

The screenshots above show the creation of a Data Manager Package to which aprocess chain has to be added from the list of process chains.

You can use pre-defined process chains as described before or custom-built processchains.

2011 © 2011 SAP AG. All rights reserved. 257

Page 272: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

If you create your own process chains, we recommend that you take an existing BOPC process chain as template and copy it and then make the modifications in the copy.

Figure 190: Reusability of BO PC Process Chains

It is now possible to create multiple Data Manager packages using differentinstructions and parameters for the same SAP BusinessObjects Planning andConsolidation Process Chain. This avoids the need to copy the SAP BusinessObjectsPlanning and Consolidation process chain multiple times.

258 © 2011 SAP AG. All rights reserved. 2011

Page 273: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

Figure 191: Delivered Process Chains

These process chain templates can be displayed and edited in Advanced BusinessApplication Programming (ABAP) transaction RSPC.

Hint: Please note that the delivered process chains need to be activated toexecute them. This is a standard NetWeaver BW feature. When you activatethe process chains, the version changes from Delivered to Active.

Administrative Packages are designed to perform operational tasks on the database,such as back-end data manipulation. These packages are also designed for metadataand master data maintenance. Using tasks that have been provided, you can optimizeand manage non-application cube data. The majority of these tasks can be executedusing either the Data Manager or the administrative console. They can also bedesigned in a single custom process chain for overall system maintenance.

2011 © 2011 SAP AG. All rights reserved. 259

Page 274: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 192: Trigger BW Process Chains

The delivered package “BPC Trigger BW Process Chain”, above, can be used in apackage link to allow a business user to start a data load from ERP to BW andthen from BW to Planning and Consolidation.

Figure 193: Creating Custom Process Types

Customers can implement their own custom process types.

260 © 2011 SAP AG. All rights reserved. 2011

Page 275: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

The above list shows the BW Process Chains contained in the Administration group.

Hint: You can retract both master data and transaction data using theBADI process type called by a process chain. Before running the BADIprocess type, you must specify the filter in the data package script to indicateto the system which BADI implementation to call.

For master data, the BADI is called only once, since packaging is notsupported. However, for transaction data, the BADI is called for each packageduring the transaction data load. The BADI implementation (syntax) ischecked during validation. When validating a transformation file with astart_routine or end_routine, the system validates the results of these routineswhile the validation runs all code, except the commit (write).For more details concerning Retraction, see the Appendix and see “Howto... Retract Data from BPC 7.5 NetWeaver to SAP ERP Cost CenterAccounting, Part” in SDN.

Hint: In higher enhancement packages, BO PC Data Manager will supportloading master data and transaction directly from SAP ECC system,both in FULL & DELTA mode through SAP Delivered ERP Extractors.Business users will then have the ability to load data directly from SAP ECCthrough already replicated & configured data sources (like 0EC_PCA_1,3FI_SL_xx_TT, 0FI_GL_1, 0FI_GL_10, and so on) of underlying BWsystem to BO PC.

Hint: Delta initialization will also be available with a higher enhancementpackage.When available, you will be able to create delta initializations by going toOrganize → Organize Delta Initialization on the Excel “Data Manager”tab. Here, you will then see the existing data initializations and all relatedinformation and can create a new delta initialization. It is possible to flag“Trigger a full load at the first run”.To run the delta initialization, you will then have to execute the relevantpackage and select the delta initialization you want to run.

You run the delta initialization from the Run Package dialog box.

2011 © 2011 SAP AG. All rights reserved. 261

Page 276: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

To be able to work the Task Profile will have to be enriched by task “Edit DeltaInitialization (Task P0095)”. Also, follow SAP Note 1616508.

Hint: The BO PC Data Manager supports loading directly from BW’s DataStore Objects (DSO) both in FULL & DELTA mode.

Hint: Customers can NOT load master data from DSO to BO PC dimension.They can only load transaction data to BO PC Models.Full upload is supported for Standard Cube, Virtual Cube, Multi-provider,Standard DSO, Write-optimized DSO.Delta upload is supported for Standard Cube, Standard DSO, Write-optimizedDSO.

Figure 194: Data Manager Data Maintenance

Using Transaction Code: SE38 with Program Name: UJD_BACK-END_DATA_MAINTENANCE allows you to delete obsolete data when DataManagement Packages dump. This improves performance.

262 © 2011 SAP AG. All rights reserved. 2011

Page 277: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

Figure 195: Run a Data Management Package

You can run a package in the Data Manager or set the schedule on which it runs.Access to packages in the Data Manager is controlled by task security set by anadministrator.You can perform the following tasks with packages:

• Run or schedule packages• Organize your favorite packages into a selected packages list• View package status• View schedule status.

Note: Schedule status and package status are not identical.They can be defined as follows:

• Package status displays the result of a package that has already executed.• Schedule status displays the schedule on which various packages are

set up to run.

You can view the status of packages that are currently running and packagesthat have been completed as follows:

• Select View Status → View Status. The Package Status dialog boxdisplays a resume of the various packages.

• If you want to view the detail logs corresponding to the package, selectthe package, then click Detail.

2011 © 2011 SAP AG. All rights reserved. 263

Page 278: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 196: View Status of Package

The upper slide shows the possibilities you have to analyze if a load was successful ornot and why it was not successful.

Figure 197: Package Scheduler

You schedule packages to be run in the "Run Package" dialog box.

264 © 2011 SAP AG. All rights reserved. 2011

Page 279: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Managing Data with Data Manager

You can view the status of packages that have been scheduled via clicking ViewStatus → View Schedule Status.

Figure 198: Package Links

Package Links can be used to bundle together more than one Data Manager package.

2011 © 2011 SAP AG. All rights reserved. 265

Page 280: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Lesson Summary

You should now be able to:• Explain the Data Manager Package tool and the issues related to it.

266 © 2011 SAP AG. All rights reserved. 2011

Page 281: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Lesson: Flat File Upload and BW Data Upload – MasterData and Hierarchy Upload and Loading ofTransaction Data

Lesson Overview

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Explain the configuration of Flat File Uploads.• Describe the set up of Uploads from BW.• Install Master Data Upload, a Hierarchy Upload and Transaction Data Uploads

Business ExampleYou want to get some information about the set up of all kinds of data loads intoBO PC.

2011 © 2011 SAP AG. All rights reserved. 267

Page 282: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Flat File Upload and Harmonization Tools

Figure 199: Upload Data

To upload or download flat files to and from your local hard drive you can select“Upload Data” or “Download Data”.

268 © 2011 SAP AG. All rights reserved. 2011

Page 283: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 200: Data Preview

You can preview your data files. This is useful when you want to know which datamust be harmonized.

Data transformations allow you to map external data to internal Planning andConsolidation data structures. The Data Manager performs data transformations andmapping using transformation and conversion files. To be imported successfully,the source data must be in the proper format. In this case, you can define the correctdimension members in the conversion file. When the Data Manager import packageis run it reads the transformation file, which has a pointer to a conversion file, andcorrectly maps the data.Two interfaces for the Microsoft Excel workbook files are required to perform datatransformations. The files are as follows:

Transfor-mationfiles

The transformation file allows you to set up the rules for reading datafrom an external source and put it in the proper form for your systemdatabase. Transformation files are Microsoft Excel files that containone worksheet, named Instructions.The Instructions worksheet contains the following sections:

• Options, which contains definitions for various options that youcan set for your transformation

• Mapping, which defines how data is mapped to the Planning andConsolidation database

2011 © 2011 SAP AG. All rights reserved. 269

Page 284: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

• Conversion, defines which conversion sheet to use with whichdimensions.

Conver-sion files

The conversion file allows you to map member names from externalto internal dimension structures.You can set up multiple sheets in a conversion file so that manytransformations can access the same conversion workbook.You can have one conversion file per dimension.

Figure 201: Create a Transformation File

The screenshot above shows the structure of a transformation file, which consistsof three parts:

• *Options conclude some parameters executed during executing of the datamanipulation.

• *Mapping is the area where the technical name of the dimension on the serverand the technical name of the Field using in the Flat file are assigned.

• *Conversion refers to an Excel File which can be configured to map theexternal keys from the flat file to the internal database format of the key. Sincethe conversion is modeled in an Excel file, the transformation file links to theconversion file.

Hint: See Appendix for Option Parameters in Transformation File.

270 © 2011 SAP AG. All rights reserved. 2011

Page 285: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 202: *Options-Parameter“ Start Routine” and “End Routine” for BAdI

It is possible to let the system jump to ABAP during execution of an import packageusing the *Options-Parameter “START_ROUTINE” and “END_ROUTINE”.Therefore, it is necessary to create a BAdI implementation for UJD_ROUTINE asfollows:

• The BAdI implementation is done in transaction SE18 in BW

– Enter the filter of the BAdI. The filter is used in the transformation fileto call the BAdI

– Create the transformation logic using ABAP Objects. Working with aninclude would be preferable.

–Note: All BAdI implementations cannot be executed, if one isnot active.

Create a transformation file in SAP BusinessObjects Planning and Consolidation.

Enter the BAdI filter value in the *OPTIONS section

START_ROUTINE=<BADI_FILTER1>

END_ROUTEINE=<BADI_FILTER2>

Define a Data Manager Package using the transformation file

Run the Data Manager Package

Further notes:

2011 © 2011 SAP AG. All rights reserved. 271

Page 286: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Process type 0-1: Start

Process type 0-2: Modify

Process type 1: Reader transaction data

Process type 2: Convert

Logic:

BADI_start_routine

Transformation including conversion

BADI_end_routine

Process type 3: Writer

Call BADI_retractor

Process type 4: Clear SAP BusinessObjects Planning and Consolidation Temp table

Figure 203: Business Example: Transformation File with Start- and End Routine

This business example shows a transformation file using new *OPTIONS keywordsfor START_ROUTINE and END_ROUTINE.

272 © 2011 SAP AG. All rights reserved. 2011

Page 287: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

The filter name is defined in the BW system within the BAdI implementation.

Note: We are going to refer to the Start/End Routines in the Unit “LOGICSCRIPTS” in the ABAP integration section.

See some important *Mapping Parameters in the following table:

Mapping Function Description

*COL(A) This function defines a dimension for a field in the datafile when the data file does not have a header row.Example: Account =*COL(2)

*COL(A, B:C) This function defines a dimension for a subset of afield in the data file.Example: Account=*COL(3,1:4)with A = column index in the data filewith B:C = the start and end positions within thecolumn

*NEWCOL(A) This function creates a new field with the given value.Example: Account=*NEWCOL(Revenue)

Dimension=*MVAL(keyfigure-type1|dim_mem1||key fig-ure type2|dim_mem2||key-fig uretype3|dim_mem3)

Can be used to do a data transfer from a key figuremodel to an account model.

*Str(string) This function adds a text string to the members of acolumn.This function is useful if you need to map data filefields to fields in your database that have the samenames, except that the field names contain extracharacters (either before or after the name).Example: Entity = *Str(NE) + *COL(1)

*If (Condition1 then Action1;Condition2 thenAction2;Default Action)

Condition1 - If this evaluates to "True," map usingAction1 Condition2 - If Condition1 is "False" andCondition2 is "True," map using Action2 DefaultAction– If both Condition1 and Condition2 are "False", mapusing this Default Action Condition1 and Condition2 can contain multiple items that are added together(using the plus (+) sign)

2011 © 2011 SAP AG. All rights reserved. 273

Page 288: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

The *CONVERSION section of the transformation file defines which conversionsheet to use with which dimensions.Use the following syntax to associate a dimension with a conversion sheet: DimensionName = [COMPANY]WorkbookName[!SheetName]

Note: Items in brackets are optional.

The following table describes the variables:

Dimen-sion-Name

Enter he dimension name that correlates to the conversion file or thekeyword Amount. Use the Amount option to specify the conversionfile to be used if you specify the ConverAmountWDim option in the*Options section. This allows you to use a formula to scale the inputor output values.

Work-book-name

The name of the conversion file

Sheet-Name

This is the name of the worksheet to use within the conversion file. If aname is not specified, the system assumes the sheet name is Conversion.

[COM-PANY]

If [COMPANY] is defined then the Data Manager tries to obtain theconversion file from the main company Data Manager folder. Otherwisethe Data Manager looks in the appropriate Site folder.

Figure 204: Validate Transformation Files for new Process Chains

274 © 2011 SAP AG. All rights reserved. 2011

Page 289: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

It is possible to validate your Transformation Files, which means checking if therelevant upload will work or not. This is a very helpful tool for the person who setsup any kind of package related activities. This tool can always be executed fromany opened transformation file.

Figure 205: Create a Conversion File

Conversion files define the mapping by dimensions from external member names tointernal member names. They also provide the ability to perform arithmetic and datadecimal places during the conversion. You create one conversion file per dimension ina transformation. Each conversion file can contain one or more sheets for differenttypes of data transformations.

As a best practice, conversion files should be named the same as the dimension forwhich they are being used.

• If you want to ignore certain external data, you can place the keyword *skip inthe Internal column.For example: External ACCPAY Internal *SKIP.

2011 © 2011 SAP AG. All rights reserved. 275

Page 290: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 206: Using Javascript in Conversion Files

You can use Javascript for coding.

Figure 207: Revaluation – Using the Import Package

276 © 2011 SAP AG. All rights reserved. 2011

Page 291: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

The figure above gives you an idea how to model a revaluation that is executed“during data upload”.

The transformation file contains the *Options Parameter “CONVERTA-MOUNTVVDIM” and points to the dimension which will get a revaluation.*Conversion refers to the key figure value (AMOUNT) which will be changed bythe revaluation.

The revaluation factors have to be added by a conversion file as described above.

Figure 208: Flat File Transaction Data Upload – Available Packages andConfiguration Possibilities

The figure above gives an overview about the available packages concerningtransaction data upload via flat file scenario. Three packages are available:

• Append Package – which adds the data of several uploads• Import Package – which allows overwriting of existing transaction data• Import Append Package – which also contains two overwriting possibilities

for transaction data uploads

.

Note: Compare Appendix for configuration of package and data base results.

2011 © 2011 SAP AG. All rights reserved. 277

Page 292: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Configuring a Flat File Upload

1. You are logged on to BO PC Excel and are connected to your environmentand your model. First, go to the “Data Manager” tab.

2. When doing a flat file upload, navigate to the Data Manager Group sectionand choose “Upload Data”.

3. In the next pop-up “Data Manager - Upload”, choose “Browse and searchfor your Flat File”. When found, choose “Open” and then “Upload”.

4. A further pop-up “Save” comes up. Here, select the “Examples” nodeand in the “File Name:” field, fill in the technical name of your file. Thenchoose “Save” and finally “OK”.

5. Choose “Data Preview”, which is located in the Data Manager Groupsection. A pop up “Open” comes up. Here, choose “Examples” on the lefthand side and then choose your file on the right hand side. Choose “Open”.

6. A new pop up “Preview Data File -....” appears. Here, select “Select FileType or table:” and select “Delimited”.

7. For “Select a delimiter:”, select “Comma”. Have a look at your source dataand check if transformations are necessary. Then press “Cancel”.

8. If you do not load from a flat file, the upload configuration starts with thisstep.In the Data Manager Group section, select Conversion Files → NewConversion File .... Fill in the “External” and “Internal” column.

9. To save your conversion file on the server, choose Conversion Files →Copy Conversion File, click at “Examples” and fill in a technical name inthe “File Name:” field. Then click at “Save” and then “OK”.

10. Create a transformation file by navigating to the Data Manager Groupsection and choosing Transformation File → New Transformation File....

11. Fill in your *Options, *Mapping and *Conversion and then saveyour transformation file by choosing Transformation File → CopyTransformation File..

12. In the next pop up “Save”, choose “Examples” on the left hand side andthen fill in a technical name for the transformation file in the “File Name:”field. Then choose “Save” and then “Cancel”.

13. Add the relevant package to the package list as follows: Organize →Organize Package List.

14. In the yellow “Package Name” section, right-click and select “Addpackage”. Then press “Select”.

Continued on next page

278 © 2011 SAP AG. All rights reserved. 2011

Page 293: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

15. In the next pop-up, search for the relevant process chain that representsyour data management package.

When found, choose “OK”.

16. Back in your “Add Package” pop up, fill in the Package Name and thedescription, flag whether it is “User Package” or “Admin Package”, andpress “Add”. Choose “Close”.

17. To execute your new package, click Run Package → Run Package in theData Manager Group section of your tab card “Data Manager”.

18. Click the relevant package group on the left hand side and, when found,choose your package on the right hand side. Then press “Run” and followthe instructions of the package. Always click “Next” to jump to the nextwizard screen and finally choose “Finish” and then “OK”.

19. To see the results of your load, choose “View Status” in the “Run Package”pop up.

20. The “Package Status” pop up appears. Here, mark your run and then flag“Refresh Status every ”. Finally, choose “Detail” to see the results of yourload and check the error protocol which can be found on the left handside of your pop up “Detail Log” under “Reject List”, “Reject Data” and“Formula Log”.

21. Finally, choose “Close” three times to close all editors.

2011 © 2011 SAP AG. All rights reserved. 279

Page 294: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Loading Transaction Data from BW into BO PC

Figure 209: Load Transaction Data from BW InfoProvider into BO PC using aData Management Package

The upper slide gives you an idea of the Data Management Package with which youcan transfer transaction data from a BW InfoProvider to a BO PC model.The target model is determined by the environment and model set in the Excel EPMconnection. Depending on the configuration of your model, you will either findseveral packages already preinstalled for the model, or your will first have to addthe relevant package manually.

When doing a data transfer from a BW InfoProvider to BO PC model using BO PCpackages, you often have the situation that the data sets of the sender provider aregiven in a key account model and the target model is always an account model. Inthis case, the data transfer has to take into account that a change of model has to berealized when setting up the transformation rule in BO PC. This is done with thekeyword *MVAL in the transformation file. The syntax is as follows:Dimension=*MVAL(keyfigure1|member1||keyfigure2|member2||keyfig3|mem-ber3||...).

280 © 2011 SAP AG. All rights reserved. 2011

Page 295: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 210: Business Example Using *MVAL for Mapping Multiple Key Figures

This business example shows a transformation file using *MVAL keyword formapping multiple key figures to Planning and Consolidation dimension members.

Here, the intention is to map the 0BALANCE and 0QUANTITY key figures from thePCA cube into Planning and Consolidation dimension members ZBALANCE andZQUANTITY of a user-defined dimension called ZKEYFIGURE. The syntax toaccomplish this mapping is as follows:

ZKEYFIGURE=*MVAL(0BALANCE|*NEWCOL(ZBALANCE)||0QUAN-TITY|*NEWCOL(ZQUANTITY))

Another commonly found scenario would be to use the account dimension to isolatethe multiple key figures, rather than using a separate key figure dimension.

2011 © 2011 SAP AG. All rights reserved. 281

Page 296: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

For example, you might elect to use the mapping: ZACCOUNT=*MVAL(0BAL-ANCE|*NEWCOL(0000800000)||0QUANTITY|*NEWCOL(ZQUANTITY)).

Note: Be consistent when handling leading zeros in BW master data andPlanning and Consolidation dimension members.

• For example, the BW characteristic value 0000800000 on 0ACCOUNTin BW is different than account dimension member 800000 in Planningand Consolidation.

• Otherwise, you may receive a Data Manager error message similar to thefollowing: “0000800000 is not a valid command or column 0000800000does not exist in the source”.

Figure 211: BW Transaction Data Upload - Package and ConfigurationPossibilities

The figure above refers to the “Load Transaction Data from BW InfoProvider”Package and gives an overview about the four different configuration settingsconcerning the way data is uploaded when several loads are executed.

Note: Compare Appendix for package settings and results from a reportingperspective.

282 © 2011 SAP AG. All rights reserved. 2011

Page 297: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Loading Master Data from BW into BO PC

Figure 212: Import BW InfoObject Master Data and Text

To import master data and text from a BW characteristic InfoObject, use the processchain /CPMB/IMPORT_IOBJ_MASTER.The master data can be filtered by values or by hierarchy selection, and can becombined by AND or OR relationships. Select text of multiple languages and of onetype (short, medium, or long). The user can select specific attributes for import. Keydate selection when reading time-dependent source master data and texts is supported.For compounded InfoObjects, a mapping can be made in the transformation orconversion file to concatenate values.

In the “Set Selection ” dialog box, Planning and Consolidation supports two operators:equal (=) and between (BT). All operations on a single attribute or hierarchy are<OR> operations. Any operations between multiple attributes are <AND> operations.

When using the Set Selection and flagging “Import Text Node with Y” the systemautomatically enriches the text nodes as node members of the relevant dimension.It is also possible to only let the system enrich node members that represent a sub-tree.Therefore, in the mask above, you would only select a sub-tree and get the relevantnode members as members of your dimension.

2011 © 2011 SAP AG. All rights reserved. 283

Page 298: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Syntax: Level = 2. This means the two levels below the specified member ID willbe selected with the member ID itself.The total level number of the sub-tree including the root node is 3. If Level = 0 isdesignated, then only the specified member ID will be returned as a tree which onlyhas one node.If the Level is not specified (blank), then the whole sub-tree is selected by takingthe member ID as root.

Note: If the source BW hierarchy contains an external InfoObject, thesevalues will not be imported into SAP BusinessObjects Planning andConsolidation concurrently. The user needs to import master data from suchan external InfoObject using a separate Data Manager package.

Set the Write Mode: if Overwrite is chosen, the master data in Planning andConsolidation will be replaced/overwritten by the new master data. If master datavalues are occupied by transaction data or hierarchy, the master data values are notdeleted, while other unoccupied master data will be deleted.If Update mode is chosen, the property values will be overwritten if the ID is thesame, while other master data will be kept and the new master data will be added.

If Internal format is selected, no conversion routine is used during the import process;

284 © 2011 SAP AG. All rights reserved. 2011

Page 299: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

If External format is set, then the related ABAP conversion routine will be used, ifone is maintained on the source InfoObject from BW transaction RSD1.

Figure 213: Business Example Import Cost Center Master Data from BW

This example shows a transformation file and conversion file which could be used toimport cost center master data from BW into Planning and Consolidation.

In the transformation file, some of the relevant *OPTIONS settings include:FORMAT=DELIMITED, HEADER=YES, DELIMETER=TAB.

In the *MAPPING section, notice that the Planning and Consolidation propertyname is on the left side of the equal to (=) sign, while the BW InfoObject is to theright of the equals sign.

The last row shows an example for handling compounded InfoObjects like ControllingArea and Cost Center. In this case, the Controlling Area and the Cost Center willbe concatenated together, while separated by an underscore (_). This design willguarantee unique dimension members are created in Planning and Consolidation,since the same Cost Center ID could be used in multiple Controlling Areas in BW.

In the conversion file, a JavaScript replace method [ js: %external%.replace(“-”, “_”) ]is used to substitute an underscore (_) in the SAP Planning and Consolidation memberID value for any hyphens (-) used in the BW InfoObject characteristic values.

2011 © 2011 SAP AG. All rights reserved. 285

Page 300: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

The second JavaScript example [ js:%external%.split(' ').join('') ] demonstrates use ofthe split and join methods to remove any spaces which may exist in the BW masterdata values before importing to Planning and Consolidation dimension member IDs.

Figure 214: Import BW InfoObject Master Data Hierarchy

To import master data hierarchies from a BW characteristic InfoObject, use processchain /CPMB/IMPORT_IOBJ_HIER.The Set Selection is similar to importing master data and texts using a hierarchyrestriction. The user can import sub-trees of hierarchies taking member ID as root andspecifying the level. The Hierarchy name is taken as the key to specify a hierarchy.If more than one hierarchy is used, it will constitute an OR relationship This importpackage only supports overwrite mode, not update modeThe node names in the hierarchy, after transformation, should be existing members inthe Planning and Consolidation target dimension.Planning and Consolidation supports reading BW hierarchies by time and versiondependency. It does not support writing hierarchies to Planning and Consolidation bytime and version dependency.

In the Set Selection dialog box, the user does not have to import the entire hierarchy.Alternatively, a sub-tree can be selected by taking the member ID as root andspecifying the level.

286 © 2011 SAP AG. All rights reserved. 2011

Page 301: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

For example, if Level =2, this means the two levels below the specified member IDwill be selected with the member ID itself.

The total level number of the sub-tree including the root node is 3.

If Level=0 is designated, then only the specified member ID will be returned as atree which only has one node.

If the Level is not specified (blank), then the whole sub-tree is selected by takingthe member ID as root.

Note: If the source BW hierarchy contains an external InfoObject, thesevalues will not be imported into Planning and Consolidation concurrently.

Figure 215: Hierarchy Structure from a Technical Point of View

Note: If the user needs to map the BW source hierarchy to Planning andConsolidation differently than expected above, then they must make sure thestructure will not be changed.

The hierarchy name in Planning and Consolidation must obey the namingconversion: PARENTH*.

If the source hierarchy name does not follow such a rule, the user must convertthe hierarchy name from, for example, Hierarchy1 to PARENTH1.

2011 © 2011 SAP AG. All rights reserved. 287

Page 302: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 216: Business Example: Import Cost Center Hierarchy from BW

This business example shows a transformation file and conversion file, which couldbe used to import cost center master data hierarchy from BW into Planning andConsolidation.

In the transformation file, some of the relevant *OPTIONS settings include:FORMAT=DELIMITED, HEADER=YES, DELIMETER=TAB.In the *MAPPING section, observe the source and target field names are identical onboth sides of the equal to (=) sign since the same structure (UJN_S_HIER_NODE) isused for both.

In the conversion file, the “default CONVERSION tab” is used to convert one ormore BW hierarchy names to the corresponding Planning and Consolidation hierarchy– obeying the standard Planning and Consolidation naming convention PARENTH1,PARENTH2, PARENTH* used for hierarchies.

On the “second tab”, a JavaScript snippet [ js:%external%.split(' ').join('') ]demonstrates use of the split and join methods to remove any spaces which may existin the BW hierarchy nodes before importing to Planning and Consolidation.

288 © 2011 SAP AG. All rights reserved. 2011

Page 303: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

The second JavaScript example [ js: %external%.replace(“-”, “_”) ] is used tosubstitute an underscore (_) in Planning and Consolidation member ID value for anyhyphens (-) used in the BW InfoObject hierarchy nodes.

Note: When loading a master data hierarchy from BW into Planning andConsolidation, it is also possible to specify in the NODE_NAME conversionfile the following JavaScript [js: %external%.toString().replace(/\s+/g,“”) ]which uses a regular expression construct to remove all unwanted spaces.

2011 © 2011 SAP AG. All rights reserved. 289

Page 304: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

290 © 2011 SAP AG. All rights reserved. 2011

Page 305: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Exercise 5: Load Process using the DataManager

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create Data Loads from BW• Construct Master Data Uploads from BW• Define Flat File Uploads for Master and Transaction Data

Business ExampleYou have master data and transaction data from external sources and in BW andwant to transfer them to BO PC.

Hint: Whenever you store a Data File, a Conversion File and a TransformationFile to the server, the file name you are going to enter in the “File Name” fieldof the relevant pop-up must not contain .txt or .xls.

Hint: Whenever you are going to save a Conversion File to the server,store it to the “ConversionFiles” node in the relevant pop-up but not to the“Examples” folder.

Task 1: Loading of Flat File Master Data into the CategoryDimensionLoad some new Category Members via Flat File Upload.

1. Open Excel. Then, navigate to the epm tab and log on. In the pop-up “EPMConnection Manager”, create a new connection to your environment BPC420_##with model D_ACT##. Choose Connection Type “Planning and Consolidation,Version for the NetWeaver”, enter the Server URL given to you by the trainerand as Connection Name fill in “Connection_1_BPC420_##_D_ACT##”.Connect and then set the above-mentioned environment and model. Having doneso, log on to this connection with your user and password.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 291

Page 306: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

2. Navigate to your “Data Manager” tab and first upload your master data flat filecalled “Category_10.txt”. You can find this file by going to: My Documents →BPC420 → BPC420-## → Category_10.txt. When saving this data file to theserver, enter “Category_10” in the “File Name” field and then select “Text File(*.txt)” in the dropdown box to the right the File Name field.

3. Use the Preview to get an idea about the master data structure for Category.

Note: No transformation and conversion is needed. The master dataquality in the file and server are the same.

4. Create a transformation file but do not change the set up of the default file. Whensaving your transformation file, enter “Transformation_Category” and make surethat the file name doesn't contain .xls or any other suffix. Select “Excel 97-2003Workbook (*.xls)”. Then “Validate and Process Transformation File...” so youcan simulate the master data upload first. As “Data Type” select “Master Datafrom Flat File”. Enter your Category field and your data file. Have a look at thesimulation protocol and flag “Output File” to see the results. Then Cancel.

5. Finally, run your “Import Master Data Attrib and Hier Flat File” DataManagement Package for the Flat File, Transformation File and Dimensionmentioned above, flag “Update Hierarchy” and finally have a look at “ViewStatus” to see if you ran the package successfully. If you were successful, returnto the BO PC Administration Web Client and have a look at the member editorfor Category if both new members are in this list. After that, close the editor andreturn you your Excel Data Manager tab.

Task 2: Import transaction data from a BW KeyFigure-based InfoProvider to an account-based BO PCModelBW Transaction Data Transfer to BO PC

1. Navigate to your backend system and have a look at the transaction data of sourceInfoProvider S_ACT00 . Doing so use the “Listviewer” for this provider and youwill get an idea of the structure of the source data and get a feeling what has to betransformed when adapting data to the BO PC structures. Leave this screen open.

Hint: To search for the Provider, use the binoculars. There are two ofthem, use the lower one.

The following table will give you an overview about the necessarytransformations and conversions according to your source data:

Continued on next page

292 © 2011 SAP AG. All rights reserved. 2011

Page 307: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

S_ACT00 D_ACT## Mapping in Transformation File in BOPC

ZVERSION(Version)

Category Version will be mapped to category,conversion necessary

ZSALE_OFF(Sales Office)

ENTITY Sales office will be mapped to Entity,conversion necessary

BPPRODUCT(BPPRODUCT)

PRODUCT2 Field Transformation necessary, but noconversion necessary (IDs will comeover as is)

0FISCPER(Fiscal YearPeriod)

TIME Fiscal year period will be mapped toTime, conversion necessary

0FISCVARNT(Fiscal YearVariant)

BLANK No Mapping, field has no pendant in BOPC

0CURRENCY(Currency Key)

Input Currency: Field Transformation necessary, but noconversion necessary (ID's will comeover as is)

Hint: We have 3 records with some blank values and, when workingwith the Data Manager to load data, that is not allowed. Therefore, wewill exclude the 3 records from being loaded. We have to take this intoaccount when modeling the transformation and conversion files for thisscenario.

2.

Hint: Before you work with the Conversion File and copy dimensionmembers, you should flag two issues on the EPM tab. Navigate to theEPM card and then to Options → User Options → Others and un-flag“Activate Member Recognition by Default”. Also, un-flag “ActivateLocal Member Recognition by Default”. Doing this will allow you tocopy Store1 and Store2 into Store 3 to Store24, for example.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 293

Page 308: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

As a consequence, when you are in the Conversion File itself later andnavigate via Options → Sheet Options → General, both flags should notbe set on each sheet of your file.

Hint: If the EPM Pane and Context cannot be seen, navigate asfollows: EPM Tab Card → Sheet Options → General. Then, flag “EPMWorksheet” and select “OK”.

Leave your Listviewer open and, in parallel, navigate to the “Data Manager” tabin Excel.

Create the first conversion file for your scenario and name the first sheet“CATEGORY”. Use the sheet to convert 0 to ACTUAL (External to Internal).

Then, copy the CATEGORY sheet in the same conversion file and name it“FISCALYEARPERIOD”. Set up the sheet to convert 2010001 to 2010.001and so on.

Note: Set the internal value for 2010.010 to Textfield.

Hint: To copy sheets, click the 1st sheet, press the Ctrl key and drag the1st sheet to the right and drop it, a new sheet with the same name and (1)will appear. Then, just double-click it and change the name.

Add a third sheet for “ENTITY” to convert ST01 to ST24 (STORE1 for 1through 24).

Caution: In the EXTERNAL column, the 3rd character of ST01-09 is azero and “not” a capital o.

Note: I_NON is skipped via *SKIP (this refers to the three emptyrecords with some blank fields in the sender InfoProvider).

Validate and save your conversion file on the “Company” Folder and name itCONVERSION_CATEGORY_FYP_ENTITY. In the dropdown box to theright of “File Name”, select “Excel 97-2003 Workbook (*.xls)”. Then, closeyour file.

Note: The Conversion File “must not ”be stored in the Examples folder!

Continued on next page

294 © 2011 SAP AG. All rights reserved. 2011

Page 309: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

3. The next step is to access the provided Transformation file:TRANSFORMATION_KEYFIGURE_ACCOUNT_MODEL.XLS and totake a look at the mapping section to see the transformation of the key figuresto accounts.The file can be found as follows: Office Button → Open → My Documents→ BPC420 → BPC420_##. Try to understand the mappings done in thetransformation file.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 295

Page 310: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 217: Transformation file for transfer from key figure to accountmodel

Note: According to line 19 of the screenshot, KeyFigures are mappedinto Accounts of P_ACCT

Note: Remember the datasets in S_ACT00 with three empty lines.Here, we learn how to handle this in BO PC since BO PC cannot workwith any blanks in a record. Here, we exclude the 3 records with blanksfrom being loaded. This is done via line 15 of the screenshot in the*Mapping section.To do this, we will use I_NON and skip I_NON in the conversion file wedefine. The coding of the transformation file then says: if zsale_off isempty (*str() then set *str(I_NON).

Note: Look at the Selection Parameter in the *Options section of yourtransformation file. It is a must when transferring transaction data froman InfoProvider to a model. This parameter filters the data from thesource. In our example, we want to transfer all data so we do not make alimiting selection but leave the selection blank, which means that all datasets will be transferred. In the exercise, all data will be selected fromthe source. If you leave the parameter “Selection= “ unfilled, then alldata is taken when loading.

Below, you can see the transformation of the key figures into the individualaccounts in row 19 in more detail.

Continued on next page

296 © 2011 SAP AG. All rights reserved. 2011

Page 311: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 218: Transformation File - Row 19 - Details on syntax, which shiftsdata from key figure model to account model

Then, save the file on the server as “TRANSFORMATION_KEYFIGURE_AC-COUNT_MODEL”. In the dropdown box, to the right of the “File Name” field,select “Excel 97-2003 Workbook (*.xls)”. Leave the file open.

4. With your transformation file open, simulate your data transfer before youexecute the relevant package. So “Validate&Process Transformation File”selecting “Transaction Data from NetWeaver BW InfoProvider” as “Data Type”and entering your source Provider “S_ACT00”. When Validation is done, havea look at the protocol and also flag “Output File”. Then, choose “Cancel” andclose your Transformation File.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 297

Page 312: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 219: Result of the Transformation Validation

5. The last step is to use the “Load Transaction Data from BW InfoProvider UI”Data Manager Package to transfer your transaction data. Within this package,first select your source InfoProvider S_ACT00 , then your transformation fileTRANSFORMATION_KEYFIGURE_ACCOUNT_MODEL.XLS. As“Data Transfer Method ” select “Append”. Run it in “Merge” mode, withoutusing default logic, and do not check work status. After the load, choose“ViewStatus” and take a look at the protocol. Then close the package.

6. Navigate to the BW Application Server and within the Data WarehousingWorkbench look for your InfoProvider D_ACT##. Use the display data optionto view the data in the Listviewer. After that, return to your screen after systemlog on.

7. Now, you want to see the loaded data in a BO PC report. Navigate to the“EPM” tab and open the delivered Report Library Template Dynamic Reportwith Nested Rows.XLTX. Activate the “Context Bar and Pane” and then clickthe“Show Pane&Context” button so that you can see all dimensions of yourmodel and can select the relevant members.Select the following members of dimensions:

Continued on next page

298 © 2011 SAP AG. All rights reserved. 2011

Page 313: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Category Actual

Entity Headquarter

Inputcurrency CHF

Product2 Dogdrypuppy

P_Acct CE0000000

Time 2010.001

Measures Periodic

Refresh your workbook.We will now have to adapt the standard report as follows:- P_ACCT and INPUTCURRENCY should be in the Rows- ENTITY should be in the Column- P_ACCT should be limited to those members that contain Property “Selection”with “Y”.- INPUTCURRENCY should be limited to EUR,GBP, CHF- ENTITY should be limited to STORE1,STORE10,STORE16.

Refresh your workbook, have a look at your data and then save your workbookon the server as “Report_Actuals_2010”. Finally, close your report but leave theEPM add-in tab open.

Task 3: Create the D_PLAN## Application and manuallyplan Budget data in comparison to ActualsKeep Actual and Plan Data in separate models. Create Plan Model and do manualPlanning in comparison to Actual data.

1. Navigate to your Administration Web Client to create a new model forenvironment BPC420_##. The model will get the name and description“D_PLAN##” and should be a “Reporting - Financial ”cube. “Periodic” and“Rates” should be selected. As “an existing model”, select “ D_ACT##”. Do notexchange any fields and do not change the secured dimensions' settings.When creation is done execute a “light optimize”.Maintain the Data Access Profile “Adminmbraccprof” for the new model sothat both secured dimensions Category and Entity have “Write” access and canwrite for “All Members”.

Leave the administration Web mode open when optimization is finished.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 299

Page 314: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

2. Actual Data was stored in D_ACT##, plan Data is going to be stored inD_PLAN##. Although we have separate data storage, we want the end userto plan their data in comparison to the Actuals. We use a preconfigured InputSchedule which refers to both models in one sheet.

Hint: We are only going to plan Revenues in D_PLAN## and wantto see the actual data stored in D_ACT## at the same time within thissheet. From all actual data we had loaded before we only want to see thevalues for January of 2011 and for DOGDRYPUPPY.Return to the EPM tab and create and then set a new epmconnection for environment BPC420_## with model D_PLAN## called“Connection_2_BPC420_##_D_PLAN##”. The Server URL is givento you by the trainer. Select environment “BPC420_##” and model“D_PLAN##”.

Change the selections for all model related dimensions. The following selectionsshould be set:

Category Budget

Entity Headquarter

Input Currency Chf

Product2 Dogdrypuppy

P_Acct CE0002100

Time 2011.001

Measures Periodic

3. In this task step, you will work with a pre-configured input form that first has tobe migrated and flagged as “Use as Input Forms”. Having done so, the templatewill be stored on the server and then planning will start in comparison to therelevant actuals. We are going to plan for one Swiss store, one British Store,and one German Store.

To open the delivered sheet, navigate as follows: Office Button →Open → My Documents → BPC420 → BPC420-##. Select the excelfile“INPUT_SCHEDULE_ACTUAL_PLAN_STORES.xls” and confirm with“Yes” .First, migrate this sheet as follows: More → EVDRE Migration..., then clickat your connection and then choose “OK” several times until you are back inyour sheet.

Continued on next page

300 © 2011 SAP AG. All rights reserved. 2011

Page 315: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Then, you have to flag your sheet as an “Input Form” in the “Sheet Options”.Finally, the “Header sections” of the template have to be adapted to yourstructures:- in cell A3, fill in “D_ACT##” and set your monitor number for ##.- in cell C3, fill in “D_PLAN##” with ## as your monitor number.- in cells A9 and C9, fill in “Measures”.

Refresh your workbook. The “Actual” column should be filled with 1000 foreach store.Save your input form on the server and keep the same file name“INPUT_SCHEDULE_ACTUAL_PLAN_SWISS_STORES”.Enter the following plan data:

Budget

Store1 1200

Store2 1300

Store3 1200

Store4 1400

Store5 1500

Store6 1100

Store7 1300

Store8 1200

Store9 1400

Save your data into the Cube and leave your input form open.

4. Now, we will plan the British stores. To do so, change the selection as follows:

Category Budget

Entity Headquarter

Input Currency GBP

Product2 Dogdrypuppy

P_Acct CE0002100

Time 2011.001

Measures Periodic

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 301

Page 316: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Then, navigate to cell B5 and exchange CHF with GBP. In the rows, you willfind Store1 to Store9 which were Swiss Stores. Manually type in the followingstores instead for the British stores. :

Column A

Cell 13 STORE10

Cell 14 STORE11

Cell 15 STORE12

Cell 16 STORE13

Cell 17 STORE14

Cell 18 STORE15

Delete all lines below row 18. Refresh your workbook. Fill in the followingplan data in the relevant Budget cells:

Budget

STORE10 1600

STORE11 1400

STORE12 1300

STORE13 1200

STORE14 1700

STORE15 1300

Save your plan data and save the input form on the server as“INPUT_SCHEDULE_ACTUAL_PLAN_GBP_STORES”. Leave the inputform open.

5. Now, we will plan the German stores. To do so, change the selection as follows:

Category Budget

Entity Headquarter

Input Currency EUR

Product2 Dogdrypuppy

Continued on next page

302 © 2011 SAP AG. All rights reserved. 2011

Page 317: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

P_Acct CE0002100

Time 2011.001

Measures Periodic

Then navigate to cell B5 and exchange GBP with EUR. In the rows, you willfind Store10 to Store15, which were stores in Great Britain. Manually type inthe following stores instead for the German stores.

Column A

Cell 13 STORE16

Cell 14 STORE17

Cell 15 STORE18

Cell 16 STORE19

Cell 17 STORE20

Cell 18 STORE21

Copy row 18 into row 19, row 20 and row 21 and then fill in STORE22 in cellA19, STORE23 in cell A20, STORE24 in cell A21. Refresh your workbook. Fillin the following plan data in the relevant Budget cells:

Budget

STORE16 1100

STORE17 1200

STORE18 1300

STORE19 1400

STORE20 1500

STORE21 1400

STORE22 1300

STORE23 1200

STORE24 1100

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 303

Page 318: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Save your plan data and save the input form on the server as“INPUT_SCHEDULE_ACTUAL_PLAN_EUR_STORES”. Close the inputform but leave Excel open.

Task 4: Cost Center Scenario - Create COSTC (costcenter) Dimension

Note: Configure CostCenter Dimension

1. Navigate to your Administration Web Client within environment BPC420_##and create a further “Entity” type dimension called: COSTC. As “ReferentialIntegrity for: Currency”, select “InputCurrency. Add the following properties:”

Property Number of Characters

COMPCODE 20

OWNER 50

REVIEWER 50

COUNTRY 5

REGION 5

Also, add a hierarchy named “PARENTH1”. Save the structure of your newdimension.Then, also add one member called 'NONE' so that we can add the new dimensionto a mode. “Save and Process” your new dimension and then return to the listof dimensions screen.

Note: The other members will later be loaded from 0COSTCENTER.

Task 5: Create a Cost Center model CC_PLAN##Create a model for Cost Center Scenario

1. Create a “new ”model“ called CC_PLAN##. Use the “Planning ” model as “AnExisting Model”. You should select Model type “Financial”. “PER” and Rates”should be selected. Exchange “Entity” with “COSTC” and flag“ COSTC”and “CATEGORY ”as “Secured Dimension”. Exchange “RPTCurrency” with“InputCurrency and ACCOUNT with P_ACCT”. Remove “AUDITTRAIL,PRODUCT” and INTERCO. “Light Optimize” your model. Finally, you need tomaintain the only existing “Data Access Profile” for model CC_PLAN##. Allowthat, for the secured dimensions, a “Write” access for “All Members” is possible.Save your profile and return to the list of profiles.

Continued on next page

304 © 2011 SAP AG. All rights reserved. 2011

Page 319: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Task 6: Master Data Upload into COSTC from BWCharacteristic 0CostCenterSet up a Master data upload from a BW characteristic

1. First of all, we must become familiar with the BW InfoObject 0costcenter.Navigate to the backend system and then into the Data Warehousing Workbench.In the “Modeling” section, navigate to “InfoObjects” and search for characteristic“0COSTCENTER”. Open this field and have a look at the tabs which are givenbelow:

Figure 220: Costcenter general tab - field length 10

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 305

Page 320: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 221: Cost center master data tab - texts are time and languagedependent

Figure 222: Cost center hierarchy tab- set up for time independenthierarchies

Let's take a look at the hierarchy data:

Continued on next page

306 © 2011 SAP AG. All rights reserved. 2011

Page 321: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 223: Cost center BPC420_CC_Hierarchy

Note: The group called 'GERMANY' is referred to as a 'text' nodebecause it only exists in the context of this hierarchy.

Continue with the Attribute tab:

Figure 224: Cost center attribute tab

On the “Compounding” tab, you will find 0CO_AREA as the second primarykey in the master data table. Continue by having a look at the existing “masterdata” for 0COSTCENTER:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 307

Page 322: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 225: Cost center master data

Note: Characteristic values 1110 and AC30 will be excluded fromthe upload later. The source master data for this scenario was builtfollowing the rule that for each store, one cost center was created. Leavethe screen open.

2. Now, we have to configure the Master Data Upload from 0costcenter to COSTC.

To do this, here is what we need to do:The Compounded controlling area is required in the key for costc which meansthat member costc1 will be 1000costc1 after the upload.The Properties Country, Region, owner, and reviewer will be derived whenloading master data since the source does not contain them.For the master data of 0Costcenter, a conversion file will be used to skip costcenter 1110 and AC30.Nodes of Hierarchies have to be created as members in the COSTC dimension.Currency and Compcode also have to be derived for the text node members.

First, navigate to your Excel mode and make sure you are in the epmtab. Log off and log on again, and then create a new connection for“BPC420_##” and model “CC_PLAN##”. Name this connection:“Connection_3_BPC420_##_CC_PLAN##”. The server URL is given to you bythe trainer. Set this connection and then navigate to the Data Manager tab.

Continued on next page

308 © 2011 SAP AG. All rights reserved. 2011

Page 323: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

3. Set up a “new conversion file”.

Hint: Before you create the new Conversion File, you should flag twoissues in the EPM tab. Navigate to the EPM tab and then to Options →User Options → Others and unflag “Activate Member Recognition byDefault”. Also unflag “Activate Local Member Recognition by Default”.

Hint: If you cannot see the EPM Pane and Context, navigate asfollows: EPM Tab Card → Sheet Options → General. Then flag “EPMWorksheet” and select “OK”.

The new conversion file should take into account that converted hierarchytext nodes into members have to be enriched with 1000 as “compounded”controlling area. Also the exclusion of cost center 1110 and AC30 has to betaken into account. Configure the file as given in the screenshot below:

Figure 226: Cost center Master Data Conversion File - Nodes and CostCenter exclusion

Save your conversion file as ID_MD_CONVERSION under the“ConversionFiles” node and select “Excel 97-2003 Workbook (*.xls)” in thedrop downbox to the right of the “File Name” field. Close the file afterwards.

4. Use an already existing conversion file to derive Country.Navigate as follows to find the relevant file: Office Button →Open → My Documents → BPC420 → BPC420-## . Open file“ID_CONVERSION_COUNTRY”, validate it and save it to the server with thesame technical name. Make sure that no .xls file suffix is stored in the “File

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 309

Page 324: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Name” field. Select “Excel 97-2003 Workbook (*.xls)” from the dropdownbox to the right of the “File Name” field. Have a look at the configuration andthen close the file.

5. Use an already existing conversion file to derive Region.Navigate as follows to find the relevant file: Office Button →Open → My Documents → BPC420 → BPC420-## . Open file“ID_CONVERSION_REGION”, validate it and save it on the server with thesame technical name. Select “Excel 97-2003 Workbook (*.xls)” in the dropdownbox to the right of the “File Name” field. Have a look at the configuration ofthe file and then close the file.

6. Use a provided transformation file under the same menu path calledTRANSFORMATIONFILE_MD_CCA. Exchange ## for your monitornumber in line 17 and 18 (Owner and Reviewer). Then delete the “-” sign inBPC-## within the Owner and Reviewer row.

Hint: This is necessary until EPM Add-in SP6 is available.

Store it with the same technical name on the server, but this time in the“Examples” folder. Make sure that the “Excel 97-2003 Workbook (*.xls)” isselected in the dropdown box to the right of the “File Name” field. Then, havea look at the configuration and leave the file open.

Figure 227: *Options

Continued on next page

310 © 2011 SAP AG. All rights reserved. 2011

Page 325: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 228: *Mapping for COMPCODE Property

Figure 229: *Mapping for Currency Property

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 311

Page 326: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 230: *Mapping for Owner and Reviewer and incorporating0CO_AREA

Figure 231: *Conversion

7. Do a simulation to see whether or not the master data upload will work. Withyour transformation file open select “Validate&Process Transformation File...”and simulate an upload of “Master Data/texts from Netweaver BW InfoObjects”and take “0COSTCENTER” as source characteristic. Leave the “InternalFormat” flagged and select your “COSTC” dimension. When the validation isdone, flag “Output File” to see the transferred master data. Stop the simulationand close your transformation file.

8. Finally, you want to load the master data and attributes via an appropriate DataManagement Package called “Import Master Data Attrib and Text InfoObj”.Click the “Set Selection” button. Here, configure as follows:

Continued on next page

312 © 2011 SAP AG. All rights reserved. 2011

Page 327: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 232: Attribute Tab

Figure 233: Hierarchy Tab

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 313

Page 328: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 234: Language Tab

Figure 235: Attribute List Tab

Continued on next page

314 © 2011 SAP AG. All rights reserved. 2011

Page 329: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Use “Update” as “Write Mode” and leave the “Internal Format” flagged. Runthe package and have a look at the “Status View” afterwards. Finally, close the“Run Package” editor but stay in Excel.

9. Now, we want to make sure that all master data was successfully loaded from amaster data editor perspective. Doing so, navigate back to the AdministrationWeb Page. For your dimension, have a look at the master data maintenance. Youshould see the cost center 1000COST1 to 1000COST24 and, in addition, fourcost centers that represent the nodes of the hierarchy which had been enrichedduring the upload. The “PARENTH1” column should be empty but all relevantproperty columns should be filled. Finally, return to the list of dimensions screen.

Figure 236: Master Data Maintenance Editor for COSTC - Members andProperties

Task 7: Hierarchy Upload for COSTC from BW InfoObject0COSTCENTERModeling a Hierarchy upload from a BW InfoObject

1. Concerning the master data of COSTC, the “PARENTH1” column is not filledyet. So, with the help of a provided conversion file and the BW hierarchy on topof 0COSTCENTER, we are now going to transfer this hierarchy to COSTC.First, open conversion file “ID_CONVERSION_HIERARCHY”, validate andsave it to the server under the “ConversionFiles” folder. Do not save with .xlssuffix. Make sure that “Excel 97-2003 Workbook (*.xls)” is selected. Then,have a look at the three sheets provided with this file:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 315

Page 330: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

- The “Conversion” sheet contains the mapping of the BW hierarchy ID to theParentH1 column in the COSTC member sheet.- The “Node_Names” sheet contains the mapping of node names to member IDs.- The “Parents” sheet contains the mapping of parent IDs in BW to parent IDs inBO PC.Finally close the Conversion File.

2. Open the provided transformation file “TRANSFORMATION-FILE_CCA_HIER” and save it to your model. Do not add .xls to the file name.Instead, select “Excel 97-2003 Workbook (*.xls)” in the drop down box rightto the “File Name” field. Then, have a look at the file content and leave itopen afterwards.

Figure 237: Hierarchy transformation mapping

3. Let's simulate the Hierarchy upload from the open transformation file using the“Master Data hierarchy from NetWeaver BW InfoObject” “Data Type”. Press“Set Selection” and select your source hierarchy “BPC420_CC_Hierarchy”.Also select “Empty” for “Version”. Keep “Internal Format” flagged. Whenvalidation is done, also click the “Output File” and then stop simulation andclose the transformation file.

4. As a last upload step, we now want to execute the hierarchy upload package.As “Write Mode”, select “Update”. Leave “Internal Format” flagged. After therun, select “View Status” to check the protocol. After this step close the “RunPackage” editor but stay in Excel.

5. Now, we want to make sure that the hierarchy was successfully loaded from amaster data editor perspective. Navigate back to the Administration Web Pageand, for your dimension, have a look at the master data maintenance. The“PARENTH1” column should be filled this time and, if you set the “View” fromList to “Hierarchy”, you should also see the hierarchy in a hierarchical display.Finally, return to the list of dimensions.

Continued on next page

316 © 2011 SAP AG. All rights reserved. 2011

Page 331: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Task 8: Loading of Transaction Data per Flat File,Copying Data and Generation of a Package Link: ModelCC_PLAN##Flat File Upload, Copy Data and Package Link

1. You are in the Data Manager tab of Excel and are already connected toenvironment BPC420_## with model CC_PLAN##.We now want to model the import of transaction data via a flat file to theCC_PLAN## model. First, execute the “Upload Data” step using thefollowing file Flat_File_for_TD_CC_PLAN_JAN2011.TXT and load iton the server. The file can be found as follows: My Documents → BPC420→ BPC420-## . When saving to the server, make sure that the file is savedas “Flat_File_for_TD_CC_PLAN_JAN2011”, which means without the .txtsuffix. In the drop down box to the right of the “File Name” field select “TextFile (*.txt) ”. After that, have a look at the “Preview”. As you can see, noconversions and transformations will be necessary. Then, execute the import forthe January 2011 data.

2. Create a transformation file. Do not change any settings and save it tothe “Company” folder in the “Examples” section. Name it as follows:TRANSFORMATIONFILE_CCA_TD_2011_JAN. Do not enter .xls; insteadselect “Excel 97-2003 Workbook (*.xls)” for the dropdown box to the right ofthe “File Name” field. Leave the file open.

3. Now, do a simulation of the load. Use the “Validate&Process TransformationFile...” tool and test the “Transaction Data from Flat File” scenario for your flatfile “Flat_File_for_TD_CC_PLAN_JAN2011”. If the validation is successful,flag “Output File”, have a look at the simulation results, and then stop thesimulation. Close the transformation file buy stay in Excel.

Note: The simulation data only refers to January of 2011. Data forFebruary will be created by copying the January data to February.

Hint: We are not going to execute the package run now, since wewant to include the relevant package together with other packages ina package link at the end of this exercise and execute all packagescentrally from this link!

4. The next goal is to create a package link, which contains both the importpackage and a copy package, which will copy the uploaded data from Januaryto February 2011.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 317

Page 332: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Create a package link with the following name and description:“PACKAGE_LINK_IMPORT_COPY_2011”.Take into account the following information when creating the first Task:Add Name and Description: “TASK_1_IMPORT to Jan 2011”, then select“Import Transaction Data Last Overwrite Mode” and Filter by: “Team ”and“Company (Public)”.Take into account the following information when creating the second Task:Add Name and Description: “TASK_2_COPY_to Feb 2011”, then select “Copy”and Filter by: “Team ”and “Company (Public)”.Save your settings and now Set Prompts for the“ first task” as follows:Select your import and transformation file and flag “Merge Data Values”. Flag“No” for the default logic and flag “No, do not check work status settings”.

Save your settings and now Set Prompts for the“ second task” as follows:Select “Merge Data Values”, then flag “No” for the default logic and do not flag“Check the Work Status Settings”. Fill in the relevant source and destinationmonth of 2011 according to the exercise. Save your package link.Execute the package link and see the results by choosing “View Status” for bothtasks. When finished, close the package link and remain in Excel.

318 © 2011 SAP AG. All rights reserved. 2011

Page 333: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Solution 5: Load Process using the DataManagerTask 1: Loading of Flat File Master Data into the CategoryDimensionLoad some new Category Members via Flat File Upload.

1. Open Excel. Then, navigate to the epm tab and log on. In the pop-up “EPMConnection Manager”, create a new connection to your environment BPC420_##with model D_ACT##. Choose Connection Type “Planning and Consolidation,Version for the NetWeaver”, enter the Server URL given to you by the trainerand as Connection Name fill in “Connection_1_BPC420_##_D_ACT##”.Connect and then set the above-mentioned environment and model. Having doneso, log on to this connection with your user and password.

a) When logging on to Excel, first go to the “EPM” tab and then choose“Logon”. An EPM logon pop up appears. Choose the button on the right with the“three dots” and a further pop-up comes up “EPM - Connection Manager”.Here, choose “Create...”. A new pop up “Create Connection” appears.Choose “Planning and Consolidation, Version for SAP NetWeaver” and, asConnection Name, fill in “Connection_1_BPC420_##_D_ACT##”. Fill inthe Server URL as given by the trainer. Then, choose “Connect” and the“EPM -Logon” pop-up comes up. Enter your user name and password andthen choose “Log on”. For the “Environment” field, select “BPC420_##”and for the model field select “D_ACT##”. Then, choose “OK”. In thelist of connections, make sure that your new connection is selected andthen choose “OK”. If a log on pop-up appears, fill in your user name andpassword and then select “Log on”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 319

Page 334: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

2. Navigate to your “Data Manager” tab and first upload your master data flat filecalled “Category_10.txt”. You can find this file by going to: My Documents →BPC420 → BPC420-## → Category_10.txt. When saving this data file to theserver, enter “Category_10” in the “File Name” field and then select “Text File(*.txt)” in the dropdown box to the right the File Name field.

a) Go to the “Data Manager” tab and then choose “Upload Data”. A pop upcomes up “Data Manager - Upload”. Here, press the “Browse” button. Inthe next pop-up, choose “My Documents”. You should see your BPC420node. Follow the menu path given in the exercise to find the necessaryupload file. When found, mark it and then click at “Open” then at“Upload”. In the next pop-up “Save” make sure that “Company” is selectedand then choose the “Examples” folder. Then enter “Category_10” in the“File Name” section and make sure that “Text File (*.txt)” is selected in thedropdown box right to “File Name”. Then choose “Save” and then “OK”.Your file is now stored on the server.

3. Use the Preview to get an idea about the master data structure for Category.

Note: No transformation and conversion is needed. The master dataquality in the file and server are the same.

a) To get an impression of the source data, click “Data Preview” on the DataManager tab. A pop-up called “Open” appears. Here, make sure that“Company” and then “Examples” are chosen. Then, mark your categoryfile and select “Open”. In the next pop up “Preview Data File”, select“Delimited” for the “Select File Type or Table:” field. Then, for the “Selecta Delimiter.” field keep “Comma” selected. You should then see two datasets, one for “PLAN1” and one for “PLAN2” with all attributes filled.Select “Cancel”.

4. Create a transformation file but do not change the set up of the default file. Whensaving your transformation file, enter “Transformation_Category” and make surethat the file name doesn't contain .xls or any other suffix. Select “Excel 97-2003Workbook (*.xls)”. Then “Validate and Process Transformation File...” so you

Continued on next page

320 © 2011 SAP AG. All rights reserved. 2011

Page 335: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

can simulate the master data upload first. As “Data Type” select “Master Datafrom Flat File”. Enter your Category field and your data file. Have a look at thesimulation protocol and flag “Output File” to see the results. Then Cancel.

a) On the “Data Manager” tab, go to Transformation File → NewTransformation File.... Do not change anything in this file and then storeit as follows: Transformation File → Copy Transformation File.... In the“Save” pop-up, again make sure that Company and Examples are clickedat and then fill in the technical name given in the exercise. Make surethat no .xls is entered in the “File Name” field and in the drop down boxright to this field select “Excel 97-2003 Workbook (*.xls)”. Then, choose“Save” and then “Cancel”.To simulate the master data upload, stay in the open transformation file andthen navigate as follows: Transformation File → Validate and ProcessTransformation File.... A pop up appears. As “Data Type”, select “MasterData from Flat File”, for the “Data” field click the button with the “threedots”. When a new pop-up “Open” appears, make sure that Company andExamples are clicked and then choose your file and then press “Open”. Forthe field “Select a Dimension”, select “Category”. Then select “Save” andthe validation process starts. As “Status Log”, you should get “Acceptcount: 2”. Flag “Output File” to see which data sets were accepted bythe system. Then click at “Cancel”.

5. Finally, run your “Import Master Data Attrib and Hier Flat File” DataManagement Package for the Flat File, Transformation File and Dimensionmentioned above, flag “Update Hierarchy” and finally have a look at “ViewStatus” to see if you ran the package successfully. If you were successful, returnto the BO PC Administration Web Client and have a look at the member editorfor Category if both new members are in this list. After that, close the editor andreturn you your Excel Data Manager tab.

a) On the “Data Manager” tab, navigate as follows: Run Package → RunPackage. A pop-up including the package mentioned in the exerciseappears. Choose this package and then click “Run”. The “Run Package”pop-up appears and for the “Import File:” field click “Browse”. The“Open” pop-up appears. Here, choose “Company”, then “Examples”and then choose your file and press “Open”. Then, choose “Next” andthen “Browse” for the “Transformation File:”. In the subsequent pop-up,“Open”, choose “Company” and then “Examples” Then choose yourtransformation file and select “Open” then “Next”. Open the dropdown boxfor “Dimension name:” and select “Category”. Choose “Next”. On thenext screen, flag “Update Hierarchy”, then choose “Next” and in the nextpop-up, flag “Run”. Select “Finish”, then “OK”. Choose “View Status”

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 321

Page 336: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

to see if your package “Succeeded”. Mark your succeeded package andthen flag “Refresh Status Every”. After that, choose “Detail” and checkthe package log. Then, choose “Close” three times. Finally, close thetransformation file, which should still be open, by clicking Office → Close.In the second system mode which should already be open, navigate tothe Administration Web Client and to the “Administration” tab. Here, goto: Dimensions and Models → Dimensions. Choose “Category” and then“Edit”. In the “ID” column, you should also see “Plan1” and “Plan2”.Then choose “Close”.

Task 2: Import transaction data from a BW KeyFigure-based InfoProvider to an account-based BO PCModelBW Transaction Data Transfer to BO PC

1. Navigate to your backend system and have a look at the transaction data of sourceInfoProvider S_ACT00 . Doing so use the “Listviewer” for this provider and youwill get an idea of the structure of the source data and get a feeling what has to betransformed when adapting data to the BO PC structures. Leave this screen open.

Hint: To search for the Provider, use the binoculars. There are two ofthem, use the lower one.

The following table will give you an overview about the necessarytransformations and conversions according to your source data:

S_ACT00 D_ACT## Mapping in Transformation File in BOPC

ZVERSION(Version)

Category Version will be mapped to category,conversion necessary

ZSALE_OFF(Sales Office)

ENTITY Sales office will be mapped to Entity,conversion necessary

BPPRODUCT(BPPRODUCT)

PRODUCT2 Field Transformation necessary, but noconversion necessary (IDs will comeover as is)

Continued on next page

322 © 2011 SAP AG. All rights reserved. 2011

Page 337: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

0FISCPER(Fiscal YearPeriod)

TIME Fiscal year period will be mapped toTime, conversion necessary

0FISCVARNT(Fiscal YearVariant)

BLANK No Mapping, field has no pendant in BOPC

0CURRENCY(Currency Key)

Input Currency: Field Transformation necessary, but noconversion necessary (ID's will comeover as is)

Hint: We have 3 records with some blank values and, when workingwith the Data Manager to load data, that is not allowed. Therefore, wewill exclude the 3 records from being loaded. We have to take this intoaccount when modeling the transformation and conversion files for thisscenario.

a) Your backend system should already be open and should show the screenafter system logon.Navigate as follows to enter the Data Warehousing Workbench: SAP Menu→ Business Warehouse → Modeling → Data Warehousing Workbench:Modeling. Double-click “Data Warehousing Workbench: Modeling”.In the “Modeling” section, on the left hand side of the screen, choose“InfoProvider”. Click in the grey area of the InfoProvider list and then usethe binoculars icon for InfoProvider search (lower binocular icon). Fill inS_ACT00 in the “Find” field. Then, choose “Search”. You are directly leadto this provider. Right-click it and then select “Display Data”. A messagecomes up. Confirm with “Continue”. A second pop-up appears. Here,press the “Select” button. Click the black triangle on the right of this buttonand choose “Select Characteristics”. Then, click the black triangle on theright of “Select” and choose “Select Key figures”. Choose “Continue”.On the next screen, select “Fld selecn for Output”. On the next screen,choose “Select All Characteristics” and “Highlight all Key Figs”. Then,choose “Execute” twice. Then, you should see the source data in yourInfoProvider. Try to get an overview. Also refer to the table above andthe Hint and leave this screen open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 323

Page 338: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

2.

Hint: Before you work with the Conversion File and copy dimensionmembers, you should flag two issues on the EPM tab. Navigate to theEPM card and then to Options → User Options → Others and un-flag“Activate Member Recognition by Default”. Also, un-flag “ActivateLocal Member Recognition by Default”. Doing this will allow you tocopy Store1 and Store2 into Store 3 to Store24, for example.As a consequence, when you are in the Conversion File itself later andnavigate via Options → Sheet Options → General, both flags should notbe set on each sheet of your file.

Hint: If the EPM Pane and Context cannot be seen, navigate asfollows: EPM Tab Card → Sheet Options → General. Then, flag “EPMWorksheet” and select “OK”.

Leave your Listviewer open and, in parallel, navigate to the “Data Manager” tabin Excel.

Create the first conversion file for your scenario and name the first sheet“CATEGORY”. Use the sheet to convert 0 to ACTUAL (External to Internal).

Then, copy the CATEGORY sheet in the same conversion file and name it“FISCALYEARPERIOD”. Set up the sheet to convert 2010001 to 2010.001and so on.

Note: Set the internal value for 2010.010 to Textfield.

Hint: To copy sheets, click the 1st sheet, press the Ctrl key and drag the1st sheet to the right and drop it, a new sheet with the same name and (1)will appear. Then, just double-click it and change the name.

Add a third sheet for “ENTITY” to convert ST01 to ST24 (STORE1 for 1through 24).

Caution: In the EXTERNAL column, the 3rd character of ST01-09 is azero and “not” a capital o.

Note: I_NON is skipped via *SKIP (this refers to the three emptyrecords with some blank fields in the sender InfoProvider).

Continued on next page

324 © 2011 SAP AG. All rights reserved. 2011

Page 339: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Validate and save your conversion file on the “Company” Folder and name itCONVERSION_CATEGORY_FYP_ENTITY. In the dropdown box to theright of “File Name”, select “Excel 97-2003 Workbook (*.xls)”. Then, closeyour file.

Note: The Conversion File “must not ”be stored in the Examples folder!

a) First, follow the instructions of the Hint and navigate to tab “Data Manager”tab. Then navigate as follows: Conversion File → New Conversion File....First, change the name of the first sheet “Category” by right-clicking thesheet and selecting “Rename”. Then, fill in “CATEGORY” in capitalletters. Then, click in cell A2 and fill in as shown in the screenshot below:

Figure 238: Conversion Sheet for Category

Click the “Insert Worksheet” icon in your conversion file to create asecond sheet.. Right-click this new sheet and select “Rename”. Fill in“FISCALYEARPERIOD”. Then, navigate back to sheet “CATEGORY”by clicking at the sheet name. Then, mark cell A1 to C1 and press Ctrl+C.Then, click the “FISCALYEARPERIOD” sheet and click in cell A1. Thenpress Ctrl+V.Before you fill in column B, right-click the complete column B andthen select “Format Cells”. In the next pop-up “Format Cells”, open the“Number” tab and select “Text”. Then choose “OK”. After that, enter thetime information as given in the screenshot below:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 325

Page 340: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 239: Conversion Sheet for Time

Create a third sheet the same way, name it “ENTITY” as described before.Also, copy the three columns “External, Internal, Formula” as describedbefore and then fill in the following information from the next screenshot:

Hint: In ST01-09 “0” is a zero not a capital o.

Continued on next page

326 © 2011 SAP AG. All rights reserved. 2011

Page 341: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 240: Conversion sheet for Entity

Validate and save your conversion file as follows: Data Manager tab card→ Conversion Files → Validate & Process Conversion File ....

In the next pop-up, click “Company” and then “Conversionfiles”. Inthe field “File Name:” fill in the technical name of your conversion filementioned in the exercise. Make sure that the file name does notcontainany suffix. In the dropdown box to the right of “File Name”, select “Excel97-2003 Workbook (*.xls)”. Then, click “Save” and then “OK”. Closeyour Conversion file.

3. The next step is to access the provided Transformation file:TRANSFORMATION_KEYFIGURE_ACCOUNT_MODEL.XLS and totake a look at the mapping section to see the transformation of the key figuresto accounts.The file can be found as follows: Office Button → Open → My Documents→ BPC420 → BPC420_##. Try to understand the mappings done in thetransformation file.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 327

Page 342: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 241: Transformation file for transfer from key figure to accountmodel

Note: According to line 19 of the screenshot, KeyFigures are mappedinto Accounts of P_ACCT

Note: Remember the datasets in S_ACT00 with three empty lines.Here, we learn how to handle this in BO PC since BO PC cannot workwith any blanks in a record. Here, we exclude the 3 records with blanksfrom being loaded. This is done via line 15 of the screenshot in the*Mapping section.To do this, we will use I_NON and skip I_NON in the conversion file wedefine. The coding of the transformation file then says: if zsale_off isempty (*str() then set *str(I_NON).

Note: Look at the Selection Parameter in the *Options section of yourtransformation file. It is a must when transferring transaction data froman InfoProvider to a model. This parameter filters the data from thesource. In our example, we want to transfer all data so we do not make alimiting selection but leave the selection blank, which means that all datasets will be transferred. In the exercise, all data will be selected fromthe source. If you leave the parameter “Selection= “ unfilled, then alldata is taken when loading.

Below, you can see the transformation of the key figures into the individualaccounts in row 19 in more detail.

Continued on next page

328 © 2011 SAP AG. All rights reserved. 2011

Page 343: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 242: Transformation File - Row 19 - Details on syntax, which shiftsdata from key figure model to account model

Then, save the file on the server as “TRANSFORMATION_KEYFIGURE_AC-COUNT_MODEL”. In the dropdown box, to the right of the “File Name” field,select “Excel 97-2003 Workbook (*.xls)”. Leave the file open.

a) First, navigate as described in the exercise to open the transformation file.After double-clicking the file, click “Open”. Make yourself familiar withthe instructions of the file. Afterwards, click Transformation File → CopyTransformation File... and, in the “Save” pop-up, first click Company,then Examples. Finally, fill in the above-mentioned technical name in thefield “File Name”. In the dropdown box to the right of this field, select“Excel 97-2003 Workbook (*.xls)”. Choose “Save” and then “OK”. Leavethe file open.

4. With your transformation file open, simulate your data transfer before youexecute the relevant package. So “Validate&Process Transformation File”selecting “Transaction Data from NetWeaver BW InfoProvider” as “Data Type”and entering your source Provider “S_ACT00”. When Validation is done, havea look at the protocol and also flag “Output File”. Then, choose “Cancel” andclose your Transformation File.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 329

Page 344: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 243: Result of the Transformation Validation

a) Open the transformation file. Then select Transformation File →Validate&Process Validation File.... In the next pop up, select the “DataType” given in the exercise. Then manually type in the source Providergiven in the exercise into “Data” field. Press “Save”. After the validation,look at the result and then flag “Output File”. Finally select “Cancel”.

5. The last step is to use the “Load Transaction Data from BW InfoProvider UI”Data Manager Package to transfer your transaction data. Within this package,first select your source InfoProvider S_ACT00 , then your transformation fileTRANSFORMATION_KEYFIGURE_ACCOUNT_MODEL.XLS. As“Data Transfer Method ” select “Append”. Run it in “Merge” mode, withoutusing default logic, and do not check work status. After the load, choose“ViewStatus” and take a look at the protocol. Then close the package.

a) On your “Data Manager” tab, choose Run Package → Run Package.In the subsequent “Run Package” pop-up, choose Company, then DataManagement on the left hand side. Then on the right hand side, choose thepackage mentioned in the exercise. Then choose “Next” and then choosethe yellow “InfoProvider Selection” button on the right hand side to selectyour InfoProvider “S_ACT00”. In the write field, in the lower part of thepop-up, manually enter your Provider and then press the “Search” buttonon the right. When the Provider is found, click it and then press “OK”.

Continued on next page

330 © 2011 SAP AG. All rights reserved. 2011

Page 345: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Then click “Next”. Click the “Browse” button on the right-hand side and inthe upcoming pop-up, first choose “Company”, then “Examples” and thenchoose your file. Then, click “Open”, then “Next”. On the next screen, set“Append” as “Data-transfer Mode”. Then, choose “Next”. Then, choose“Merge data values” , click “Next” and flag “No”, since you don't wantto run the default logic during the data load. Choose “Next” and thenflag “No, do not check work status settings”. Then flag “Run” and click“Finish”. Then choose “OK”. In the “Run Package” pop-up, choose “ViewStatus”. In the next pop-up, click at the status message for your package.Then, choose “Refresh Status every” and then “Detail”. On the “DetailLog” screen, have a look at the protocol. You should get a similar result:

Figure 244: Package Log for D_ACT## data transfer from BWInfoProvider

Note: Interpretation of the result:There were 6627 records in S_ACT00 (key figure model) and, aftertransferring, there are 66240 records in the D_ACT## (Accountmodel). The Key figure model had 10 key figures. This means onerecord in the key figure model results in 10 records in the accountmodel. For all records in the source, this would make 66270 in theaccount model. Since we skipped the 3 empty records (times 10)this makes minus 30 and so we get 66240 in the account model!

Finally click three times at “Close”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 331

Page 346: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

6. Navigate to the BW Application Server and within the Data WarehousingWorkbench look for your InfoProvider D_ACT##. Use the display data optionto view the data in the Listviewer. After that, return to your screen after systemlog on.

a)Your backend system should already be open, make sure that you are onthe screen after system logon. If necessary, click “BACK” several timesuntil you will reach the screen after system logon.Then, navigate as follows to enter the Data Warehousing Workbench:SAPMenu → Business Warehouse → Modeling → Data WarehousingWorkbench: Modeling. Double-click “Data Warehousing Workbench:Modeling” . In the “Modeling” section, on the left-hand side of the screen,choose “InfoProvider”. Click in the grey area of the InfoProvider list andthen use the binoculars icon for InfoProvider search (lower binocular icon),entering D_ACT## in the “Find” field. Then, choose “Search”. You aredirectly led to this provider. Right-click it and then select “Display Data”.A message comes up. Confirm with “Continue”. A second pop up comesup. Here, click the “Select” button. Click the black triangle at the right ofthis button and choose at “Select Characteristics”. Again click the blacktriangle at the right of “Select” and then click “Select Key figures”. Then,choose “Continue”.On the next screen, select “Fld selecn for Output”. On the next screen,choose “Select All Characteristics” and “Highlight all Key Figs”.De-select: “Change run ID”, “Record Type” and “Request ID”. Then,choose “Execute”. On the following screen, flag “Use DB Aggregation”and “Use mat. Aggregates”. Again, choose “Execute”. Now, you shouldsee the transferred data within your InfoProvider.

Continued on next page

332 © 2011 SAP AG. All rights reserved. 2011

Page 347: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 245: D_ACT##: Transferred Data - Results from ListviewerPerspective

Finally, choose “BACK” three times to return to the screen after systemlogon.

7. Now, you want to see the loaded data in a BO PC report. Navigate to the“EPM” tab and open the delivered Report Library Template Dynamic Reportwith Nested Rows.XLTX. Activate the “Context Bar and Pane” and then clickthe“Show Pane&Context” button so that you can see all dimensions of yourmodel and can select the relevant members.Select the following members of dimensions:

Category Actual

Entity Headquarter

Inputcurrency CHF

Product2 Dogdrypuppy

P_Acct CE0000000

Time 2010.001

Measures Periodic

Refresh your workbook.We will now have to adapt the standard report as follows:- P_ACCT and INPUTCURRENCY should be in the Rows- ENTITY should be in the Column

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 333

Page 348: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

- P_ACCT should be limited to those members that contain Property “Selection”with “Y”.- INPUTCURRENCY should be limited to EUR,GBP, CHF- ENTITY should be limited to STORE1,STORE10,STORE16.

Refresh your workbook, have a look at your data and then save your workbookon the server as “Report_Actuals_2010”. Finally, close your report but leave theEPM add-in tab open.

a) Go to the “EPM” tab and then navigate as follows to activate “Context Barand Pane”: Options → User Options → Others. On this tab, flag “DisplayEPM context Bar” and “Display EPM Pane”. Both can be found in thelower right corner beneath the item “Context Bar and Pane”. Then, click“OK”. After that, click “Show Pane&Context” and you will see a listof drop down boxes, which represent the dimensions and their memberselection.Then, go to: Open → Open Server Report Folder... and the “Open”pop-up appears. Here, choose Company and then “Templates”. In the listof templates, in the right section of this pop-up, click the report templatementioned in the exercise. Then click “Open”.To select the dimension members mentioned in the above table, navigateas follows:Go to the dropdown box for Category and click the black triangle onthe right hand side. Then select “ Select Other Members...” and in thesubsequent pop-up, first click the black triangle on the right of the “SelectMember Names to Display” button and then select “ID”. Click “Actual”and then “OK”.For the other selections in the table, the selection works the same way.Execute all selections and then click Refresh → Refresh Workbook.Now, the report adaptation is done as follows:In your report, click in a cell of your choice and then choose “Edit Report”.The “EPM - Report Editor” pop-up appears. Here, navigate to the “RowAxis Dimension” and right-click “ENTITY”. A pop-up appears. Here,select “Remove”. Then drag and drop “INPUTCURRENCY” from the“Dimensions:” section on the left hand side in the “Row Axis Section”.Then, navigate to the “Column Axis Dimension” and right-click “TIME”.Select “Remove” in the next pop-up. Drag and drop ENTITY in the“Column Axis Dimension”.Drag and drop all remaining dimensions from the “Dimensions:” section inthe “Page Axis Dimensions” section. These are Product2 and Time. Theother dimensions are already in this section.Now let's only select P_ACCT members that have Property “Selection”with property member “Y” in the master data.

Continued on next page

334 © 2011 SAP AG. All rights reserved. 2011

Page 349: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Click P_ACCT in the “Row Axis Dimension” section and a further pop-up,“EPM - Member Selector”, appears. Here, click the “Filter Members byProperties” button in the upper left row of icons. Make sure that “Displayonly Filtered Members” is flagged. In the “Property” dropdown box,choose “SELECTION” and in the “Operator” dropdown box, choose “=”.In the “Values” dropdown box, choose “Y” and press the “Add DynamicFilter” button. If on the right hand side you will still find “SelectedMembers” as “Context”, mark this line and press the “Remove” arrow.Then, in the “Selection Relationship” section, flag “Static” and in thedropdown box below, select “Base Level”. Click “OK” several times untilyou see the results in the report. Select Refresh → Refresh Workbook.Then, reduce Input Currency to “EUR,GBP,CHF” by first clicking in acell of your choice in the report and then clicking “Edit Report”. Click“Input Currency” in the “Row Axis Dimension”. In the next pop up “EPM- Member Selector” navigate to the right hand side and click “Context” inthe “Selected Members” section. Then, click the second blue arrow iconto remove the selection. After that, flag “Static” and select “Base Level”in the dropdown box. Then flag EUR, click the blue arrow to add thisselection, then flag GBP and add this selection and then flag EUR andadd this selection. After that, click “OK” several times until you reachthe executed report.Now, we want to limit ENTITY to “STORE1”, “STORE10” and“STORE16”. To do so, first click in a cell of your choice in the reportand then click “Edit Report”. Click “ENTITY” in the “Column AxisDimension”. In the next pop-up, “EPM - Member Selector”, navigateto the right hand side and click “Context” in the “Selected Members”section. Then, click the second blue arrow icon to remove the selection.After that, flag “Dynamic” and select “Base Level” in the dropdown box.Then, select “List” in the upper dropdown box to see the list of entities.Here, flag the three stores and press the blue arrow to add the three to the“Selected Members” list. Then press “OK” several times until you see theresults in your report.Finally, click Refresh → Refresh Workbook and see the results of yourdata transfer:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 335

Page 350: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 246: D_ACT## - Data Transfer Results from ReportingPerspective

Finally, save your report as follows: Save → Save to Server Root Folder...,then click Company and then open the “Reports” folder. In the “FileName:” section, fill in “Report_Actuals_2010”. Then, click “Save”.Close the report via Office Button → Close. Leave your EPM tab open.

Task 3: Create the D_PLAN## Application and manuallyplan Budget data in comparison to ActualsKeep Actual and Plan Data in separate models. Create Plan Model and do manualPlanning in comparison to Actual data.

1. Navigate to your Administration Web Client to create a new model forenvironment BPC420_##. The model will get the name and description“D_PLAN##” and should be a “Reporting - Financial ”cube. “Periodic” and“Rates” should be selected. As “an existing model”, select “ D_ACT##”. Do notexchange any fields and do not change the secured dimensions' settings.When creation is done execute a “light optimize”.

Continued on next page

336 © 2011 SAP AG. All rights reserved. 2011

Page 351: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Maintain the Data Access Profile “Adminmbraccprof” for the new model sothat both secured dimensions Category and Entity have “Write” access and canwrite for “All Members”.

Leave the administration Web mode open when optimization is finished.

a) Back in the Administration Web Client for environment BPC420_##, go tothe “Administration” tab and navigate as follows: Dimensions and Models→ Models. Choose “New” and, in the next pop-up, enter “D_PLAN##”as ID and Description. Then, choose “Next”. In the second step, flag“Financial” and keep “PER- Periodic” and “Rates” selected. Press “Next”.In Step 3, flag “An existing Model” and then mark your source model“D_ACT##”. Then, choose “Next”. In the fourth step, do not changeanything. Press “NEXT” twice and then “Create”. When creation is done,select “Close” In the list of models, mark your model and then click at“Optimize”. In the next popup, keep “Light Optimization” flagged. Thenclick“Optimize”.Then, navigate as follows: Security → Data Access Profiles and click theprofile mentioned in the exercise. Then, click “Edit”. In the “Models” liston the left-hand side click your new model and then, on the right handside of Category, open the dropdown box and select “All Members”. Forthe Entity dropdown box, also select “All Members”. Click the first lineunder “Access Rights” for Category and select “Write”. Also for Entity,click in the first line under “Access Rights” and select “Write”. Then,choose “Save” and then “Close”.

Leave this mode open.

2. Actual Data was stored in D_ACT##, plan Data is going to be stored inD_PLAN##. Although we have separate data storage, we want the end userto plan their data in comparison to the Actuals. We use a preconfigured InputSchedule which refers to both models in one sheet.

Hint: We are only going to plan Revenues in D_PLAN## and wantto see the actual data stored in D_ACT## at the same time within thissheet. From all actual data we had loaded before we only want to see thevalues for January of 2011 and for DOGDRYPUPPY.Return to the EPM tab and create and then set a new epmconnection for environment BPC420_## with model D_PLAN## called“Connection_2_BPC420_##_D_PLAN##”. The Server URL is givento you by the trainer. Select environment “BPC420_##” and model“D_PLAN##”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 337

Page 352: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Change the selections for all model related dimensions. The following selectionsshould be set:

Category Budget

Entity Headquarter

Input Currency Chf

Product2 Dogdrypuppy

P_Acct CE0002100

Time 2011.001

Measures Periodic

a) Navigate to the EPM tab and choose “Log Off”, then click “Log On” andthe “EPM-Logon” pop-up appears. Here, click the button with the threedots and then click “Create”. Keep “Planning and Consolidation” flaggedand, fill in “Connection_2_BPC420_##_D_PLAN##” as “ConnectionName”. Then, click at “Connect”. The “EPM-Logon” pop-up appears.Enter your credentials and click “Log on”. In the dropdown box“Environment:”, select “BPC420_##” and in the “Model:” dropdown box,select “D_PLAN##”. Then, choose “OK”. In the list of connections, clickyour new connection and then press “OK”. Again, fill in your credentialsand choose “Logon”. Then, navigate to the first drop down selection box.It should the be the “Category” drop down box. Click the black triangleand select “Set other Members...”. Press the “Select Member Name toDisplay.” button and click “ID”. Select “Budget” and then click “OK”.make the other settings as shown in the table above.

3. In this task step, you will work with a pre-configured input form that first has tobe migrated and flagged as “Use as Input Forms”. Having done so, the templatewill be stored on the server and then planning will start in comparison to therelevant actuals. We are going to plan for one Swiss store, one British Store,and one German Store.

To open the delivered sheet, navigate as follows: Office Button →Open → My Documents → BPC420 → BPC420-##. Select the excelfile“INPUT_SCHEDULE_ACTUAL_PLAN_STORES.xls” and confirm with“Yes” .First, migrate this sheet as follows: More → EVDRE Migration..., then clickat your connection and then choose “OK” several times until you are back inyour sheet.Then, you have to flag your sheet as an “Input Form” in the “Sheet Options”.

Continued on next page

338 © 2011 SAP AG. All rights reserved. 2011

Page 353: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Finally, the “Header sections” of the template have to be adapted to yourstructures:- in cell A3, fill in “D_ACT##” and set your monitor number for ##.- in cell C3, fill in “D_PLAN##” with ## as your monitor number.- in cells A9 and C9, fill in “Measures”.

Refresh your workbook. The “Actual” column should be filled with 1000 foreach store.Save your input form on the server and keep the same file name“INPUT_SCHEDULE_ACTUAL_PLAN_SWISS_STORES”.Enter the following plan data:

Budget

Store1 1200

Store2 1300

Store3 1200

Store4 1400

Store5 1500

Store6 1100

Store7 1300

Store8 1200

Store9 1400

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 339

Page 354: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Save your data into the Cube and leave your input form open.

a) On the EPM tab, go to Office Button → Open → My Documents →BPC420 → BPC420-##. Select the excel file “INPUT_SCHEDULE_AC-TUAL_PLAN_STORES.xls” and “Open”, then confirm with “Yes”. Then,navigate as follows: Refresh → Refresh Workbook. Then do the migrationvia the following navigation: More → EVDRE Migration.... In the “EPM- EVDRE Migration” pop-up, click “OK”, then “OK” again. After that,go to Options → Sheet Options → General. Flag “Use as Input Form”and then click “OK”.In the orange colored section, in cell A3, fill in “D_ACT##” and set yourmonitor number for ##. In the blue colored section, in cell C3, fill in“D_PLAN##” with ## as your monitor number. In cell A9 and C9 fillin “Measures”.

Refresh your workbook by clicking Refresh → Refresh Workbook.As a result, you should see the “Actual” column filled with 1000 for eachstore. This data results from transaction data upload.Save your input form on the server by clicking Save → Save toServer Root Folder.... Then, choose “Company”, then “InputSchedules” and enter the “File Name:” “INPUT_SCHEDULE_AC-TUAL_PLAN_SWISS_STORES”. Then click “Save”.Enter the data given in the exercise table and then press Save Data →Save Workbook Data. Confirm with “Yes” and then with “OK”. Leavethe sheet open.

4. Now, we will plan the British stores. To do so, change the selection as follows:

Category Budget

Entity Headquarter

Input Currency GBP

Product2 Dogdrypuppy

P_Acct CE0002100

Time 2011.001

Measures Periodic

Then, navigate to cell B5 and exchange CHF with GBP. In the rows, you willfind Store1 to Store9 which were Swiss Stores. Manually type in the followingstores instead for the British stores. :

Continued on next page

340 © 2011 SAP AG. All rights reserved. 2011

Page 355: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Column A

Cell 13 STORE10

Cell 14 STORE11

Cell 15 STORE12

Cell 16 STORE13

Cell 17 STORE14

Cell 18 STORE15

Delete all lines below row 18. Refresh your workbook. Fill in the followingplan data in the relevant Budget cells:

Budget

STORE10 1600

STORE11 1400

STORE12 1300

STORE13 1200

STORE14 1700

STORE15 1300

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 341

Page 356: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Save your plan data and save the input form on the server as“INPUT_SCHEDULE_ACTUAL_PLAN_GBP_STORES”. Leave the inputform open.

a) With your Swiss input form open, click the black triangle to the right ofthe InputCurrency dropdown box in the “EPM Context” line and choose“Select Other Members...”. In the “EPM - Member Selector” pop-up, click“GBP” and then “OK”. The other selections do not need to be changed.Then, click in cell “B5” and manually type GBP in this cell. Then, navigateto cell A13 and type STORE10. Then click in cell A14 and type STORE11.Follow the instructions in the table in the exercise until STORE 15. Markline 19 to 21 and right-click. Select “Delete”. Navigate as follows: Refresh→ Refresh Workbook. Then, enter the data given in the exercise tablein cell D13 to D18 and then click Save Data → Save Workbook Data.Confirm with “YES”, then with “OK”.Finally, save your input form on the server by clicking Save→Save to ServerRoot Folder..., then click “Company”, then “Input Schedules” and enter the“File Name:” “INPUT_SCHEDULE_ACTUAL_PLAN_GBP_STORES”.Then, click “Save”. Leave the file open.

5. Now, we will plan the German stores. To do so, change the selection as follows:

Category Budget

Entity Headquarter

Input Currency EUR

Product2 Dogdrypuppy

P_Acct CE0002100

Time 2011.001

Measures Periodic

Then navigate to cell B5 and exchange GBP with EUR. In the rows, you willfind Store10 to Store15, which were stores in Great Britain. Manually type inthe following stores instead for the German stores.

Column A

Cell 13 STORE16

Cell 14 STORE17

Continued on next page

342 © 2011 SAP AG. All rights reserved. 2011

Page 357: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Cell 15 STORE18

Cell 16 STORE19

Cell 17 STORE20

Cell 18 STORE21

Copy row 18 into row 19, row 20 and row 21 and then fill in STORE22 in cellA19, STORE23 in cell A20, STORE24 in cell A21. Refresh your workbook. Fillin the following plan data in the relevant Budget cells:

Budget

STORE16 1100

STORE17 1200

STORE18 1300

STORE19 1400

STORE20 1500

STORE21 1400

STORE22 1300

STORE23 1200

STORE24 1100

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 343

Page 358: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Save your plan data and save the input form on the server as“INPUT_SCHEDULE_ACTUAL_PLAN_EUR_STORES”. Close the inputform but leave Excel open.

a) With your input form for Great Britain open, click the black triangle tothe right of the InputCurrency dropdown box in the “EPM Context” lineand choose “Select Other Members...”. In the “EPM - Member Selector”pop-up, click “EUR” and then “OK”. The other selections do not need tobe changed. Then, click in cell “B5” and manually type EUR in this cell.Then navigate in cell A13 and type STORE16. Then click in cell A14 andtype STORE17. Follow the instructions in the table in the exercise upto STORE 21 in cell A18.Mark row 18, right-click and select “Copy”. Then mark line 19 up to line21, right-click and select “Paste”.Fill cell A19 to A21 as follows:

Cell fill in:

A19 STORE22

A20 STORE23

A21 STORE24

Navigate as follows: Refresh → Refresh Workbook. Then, enter the datagiven in the exercise table in cell D13 to D21 and then click Save Data →Save Workbook Data. Confirm with “YES”, then with “OK”.Finally, save your input form on the server by clicking Save →Save to Server Root Folder..., then choose “Company”, then “InputSchedules” and enter the “File Name:” “INPUT_SCHEDULE_AC-TUAL_PLAN_EUR_STORES”. Then click “Save”. Close your sheet bygoing to Office Button → Close. Leave Excel open.

Task 4: Cost Center Scenario - Create COSTC (costcenter) Dimension

Note: Configure CostCenter Dimension

1. Navigate to your Administration Web Client within environment BPC420_##and create a further “Entity” type dimension called: COSTC. As “ReferentialIntegrity for: Currency”, select “InputCurrency. Add the following properties:”

Continued on next page

344 © 2011 SAP AG. All rights reserved. 2011

Page 359: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Property Number of Characters

COMPCODE 20

OWNER 50

REVIEWER 50

COUNTRY 5

REGION 5

Also, add a hierarchy named “PARENTH1”. Save the structure of your newdimension.Then, also add one member called 'NONE' so that we can add the new dimensionto a mode. “Save and Process” your new dimension and then return to the listof dimensions screen.

Note: The other members will later be loaded from 0COSTCENTER.

a) Within the Administration Web Client and for your environmentBPC420_##, go to the Administration Tab and navigate as follows:Dimensions and Models → Dimensions. Click “New”. In the nextpop-up, fill in ID and Description. Both carry “COSTC”. As type,select “ENTITY”. Then, click “Create”. On the next screen, select“InputCurrency” as “Referential Integrity for: Currency” and then click“Add”. In the next pop-up, “Add new Property”, fill in “COMPANY”as “ID” and “NAME”, and “20” as “Number of Characters”. Then,click “OK”. Again, click “Add” and fill in the “OWNER” information.Continue for all properties mentioned in the table above. Then navigateto the “Hierarchies” section on the right and click “ADD”. In the “NewHierarchy” pop-up, fill in “PARENTH1” as “Name” and then click “OK”and then “Save”.In the upper right corner, click the link “Members of dimension: COSTC”to the right of “Go To:” and then click in cell ID1 and fill in “NONE”. Incell “Description1”, enter “NONE”. Then click “Save and Process” andclick “No” when asked if you want to set the environment offline. Finally,click “Close” to return to the list of dimensions.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 345

Page 360: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Task 5: Create a Cost Center model CC_PLAN##Create a model for Cost Center Scenario

1. Create a “new ”model“ called CC_PLAN##. Use the “Planning ” model as “AnExisting Model”. You should select Model type “Financial”. “PER” and Rates”should be selected. Exchange “Entity” with “COSTC” and flag“ COSTC”and “CATEGORY ”as “Secured Dimension”. Exchange “RPTCurrency” with“InputCurrency and ACCOUNT with P_ACCT”. Remove “AUDITTRAIL,PRODUCT” and INTERCO. “Light Optimize” your model. Finally, you need tomaintain the only existing “Data Access Profile” for model CC_PLAN##. Allowthat, for the secured dimensions, a “Write” access for “All Members” is possible.Save your profile and return to the list of profiles.

a) First, navigate as follows within your Administration Web Client:Dimensions and Models → Models. Click “New”. A wizard comesup. First enter “CC_PLAN##” as “ID” and “Description” and thenclick “Next”. On the next screen, flag “Financial” as “Model Type: -Reporting:” configuration. Select “PER-Period” as “Data Entry Mode:”and “Rates” as “Model Containing Exchange Rates:”. Then, click “Next”,flag “An Existing Model”, and then click “Planning”. Click “Next”. In the“Selected Dimensions:” section, keep the “Ctrl” key pressed and mark“Entity, Audittrail, Interco, Account, Product and RptCurrency” and press“Remove”. Then, in the “Available Dimensions:” section, click “COSTC”and press “Add”. Mark InputCurrency on the left-hand side and press“Add”. Do the same for P_ACCT. On the right hand side, flag“ Category”and “Costc” as “Secured” and then click at three times at “Next” and thenat “Create”. Finally, click “Close” to return to the list of models.Here, mark your model and click the “Optimize” button. Leave “LightOptimization” flagged and click “Optimize”. Then, navigate to the “DataAccess Profiles” by clicking as follows: Security → Data Access Profiles.Here, click “AdminMbrAccProf” and, on the next screen, click your model“CC_PLAN##” on the left-hand side. Then, on the right-hand side, for“Category” open the dropdown box and in line 1 and select “All Members”.Click in line 1 for column “ Access Right” and select “Write”. Do the samefor the “Entity” dimension. Select “Save” then “Close” and you will beback in the list of Profiles.

Continued on next page

346 © 2011 SAP AG. All rights reserved. 2011

Page 361: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Task 6: Master Data Upload into COSTC from BWCharacteristic 0CostCenterSet up a Master data upload from a BW characteristic

1. First of all, we must become familiar with the BW InfoObject 0costcenter.Navigate to the backend system and then into the Data Warehousing Workbench.In the “Modeling” section, navigate to “InfoObjects” and search for characteristic“0COSTCENTER”. Open this field and have a look at the tabs which are givenbelow:

Figure 247: Costcenter general tab - field length 10

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 347

Page 362: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 248: Cost center master data tab - texts are time and languagedependent

Figure 249: Cost center hierarchy tab- set up for time independenthierarchies

Let's take a look at the hierarchy data:

Continued on next page

348 © 2011 SAP AG. All rights reserved. 2011

Page 363: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 250: Cost center BPC420_CC_Hierarchy

Note: The group called 'GERMANY' is referred to as a 'text' nodebecause it only exists in the context of this hierarchy.

Continue with the Attribute tab:

Figure 251: Cost center attribute tab

On the “Compounding” tab, you will find 0CO_AREA as the second primarykey in the master data table. Continue by having a look at the existing “masterdata” for 0COSTCENTER:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 349

Page 364: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Continued on next page

350 © 2011 SAP AG. All rights reserved. 2011

Page 365: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 252: Cost center master data

Note: Characteristic values 1110 and AC30 will be excluded fromthe upload later. The source master data for this scenario was builtfollowing the rule that for each store, one cost center was created. Leavethe screen open.

a) In your backend system, after system log on, first navigate as follows:SAP Menu → Business Warehouse → Modeling → Data WarehousingWorkbench:Modeling and double-click “Data Warehousing Workbench:Modeling”. On the next screen, on the left-hand side, click “InfoObjects” inthe “Modeling” section. Then, click in the gray section in the right part ofthe screen and then click the lower binocular icon (of the two binoculars).A new pop-up appears. Here enter “0COSTCENTER” in the “Find” field,then click at “Search”. The system will find the characteristic for you andmark it yellow. Double-click this characteristic. You should be led to the“General” tab. Try to become familiar with the settings and then navigateto the “Master Data/Texts” tab. Have a look at the settings here and thennavigate to the “Hierarchy” tab. Here, click the “Maintain Hierarchies”button. You will see one hierarchy. Double-click this hierarchy. On thenext screen, click the “Root” node and then press “Expand Branch” to seeall nodes and leaves for this hierarchy.

Click “BACK” twice and then select the attribute tab. As you can see, someattributes are time dependent. Some are merely 'DIS' display attributes,while some are 'NAV' navigational attributes and can be used to drill down.Then, go to the “Compounding” tab. Here, you can see that 0CO_AREAis the superior InfoObject.

Then, click the “Maintain Master Data” button in the upper middle sectionof the screen and then choose “Execute”. As a result, you will see allexisting master data for 0COSTCENTER. Compare with the screenshotabove.

Hint: COST1 to COST24 exist, but for the hierarchy nodes in BW,no characteristic value exists because the nodes are reporting setsor text nodes. When transferring the master data to COSTC, thenodes have to be transferred into dimension members. If not, nohierarchy upload will be possible. Leave the screen open.

2. Now, we have to configure the Master Data Upload from 0costcenter to COSTC.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 351

Page 366: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

To do this, here is what we need to do:The Compounded controlling area is required in the key for costc which meansthat member costc1 will be 1000costc1 after the upload.The Properties Country, Region, owner, and reviewer will be derived whenloading master data since the source does not contain them.For the master data of 0Costcenter, a conversion file will be used to skip costcenter 1110 and AC30.Nodes of Hierarchies have to be created as members in the COSTC dimension.Currency and Compcode also have to be derived for the text node members.

First, navigate to your Excel mode and make sure you are in the epmtab. Log off and log on again, and then create a new connection for“BPC420_##” and model “CC_PLAN##”. Name this connection:“Connection_3_BPC420_##_CC_PLAN##”. The server URL is given to you bythe trainer. Set this connection and then navigate to the Data Manager tab.

a) Navigate back to your Excel mode and, if necessary, click the “epm” tab.Then, click “Log Off” and then “Log On”. In the next pop-up, click thebutton with the three dots and then press “Create”. Leave “Planningand Consolidation” flagged and enter the upper technical name in the“Connection Name:” field. Server URL is given to you by the trainer.Click “Connect”. In the next pop-up, enter your user name and passwordand then press “Logon”. Then, set the environment “BPC420_##” andmodel “CC_PLAN##” and press “OK”. On the next screen, click your newconnection and press “OK”. Enter user name and password. Click “Logon”and then go to the “Data Manager” tab.

3. Set up a “new conversion file”.

Hint: Before you create the new Conversion File, you should flag twoissues in the EPM tab. Navigate to the EPM tab and then to Options →User Options → Others and unflag “Activate Member Recognition byDefault”. Also unflag “Activate Local Member Recognition by Default”.

Hint: If you cannot see the EPM Pane and Context, navigate asfollows: EPM Tab Card → Sheet Options → General. Then flag “EPMWorksheet” and select “OK”.

The new conversion file should take into account that converted hierarchytext nodes into members have to be enriched with 1000 as “compounded”controlling area. Also the exclusion of cost center 1110 and AC30 has to betaken into account. Configure the file as given in the screenshot below:

Continued on next page

352 © 2011 SAP AG. All rights reserved. 2011

Page 367: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 253: Cost center Master Data Conversion File - Nodes and CostCenter exclusion

Save your conversion file as ID_MD_CONVERSION under the“ConversionFiles” node and select “Excel 97-2003 Workbook (*.xls)” in thedrop downbox to the right of the “File Name” field. Close the file afterwards.

a) On the “Data Manager” tab, navigate as follows: Conversion Files →New Conversions... and follow the information given in the screenshotto fill the first sheet of the conversion file. Click Conversion Files →Copy Conversion File.... In the next popup, first click Company, then“Conversion Files” and then fill in the technical name given in the exercisein the “File Name” field. Make sure that “Excel 97-2003 Workbook (*.xls)”is selected in the dropdown box to the right of the “File Name” field. Thenclick “Save”. Validate your conversion file as follows: Data Manager tabcard → Conversion Files → Validate & Process Conversion File .... Thenclick a“OK”. To close the file, go to Office Button → Close.

4. Use an already existing conversion file to derive Country.Navigate as follows to find the relevant file: Office Button →Open → My Documents → BPC420 → BPC420-## . Open file“ID_CONVERSION_COUNTRY”, validate it and save it to the server with thesame technical name. Make sure that no .xls file suffix is stored in the “File

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 353

Page 368: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Name” field. Select “Excel 97-2003 Workbook (*.xls)” from the dropdownbox to the right of the “File Name” field. Have a look at the configuration andthen close the file.

a) Follow the instructions in the exercise to find the relevant file and select itand click “Open”. Validate your conversion file as follows: Data Managertab card → Conversion Files → Validate & Process Conversion File.... First, choose Company, then “Conversion Files” and then fill in thetechnical name given in the exercise in the “File Name:” field. In thedropdown box to the right of the “File Name” field, select “Excel 97-2003Workbook (*.xls)”. Then, click “Save”, then click “OK”. Then, have a lookat the configuration and close the file by clicking Office Button → Close.

5. Use an already existing conversion file to derive Region.Navigate as follows to find the relevant file: Office Button →Open → My Documents → BPC420 → BPC420-## . Open file“ID_CONVERSION_REGION”, validate it and save it on the server with thesame technical name. Select “Excel 97-2003 Workbook (*.xls)” in the dropdownbox to the right of the “File Name” field. Have a look at the configuration ofthe file and then close the file.

a) Follow the instructions in the exercise to find the relevant file and select itand click “Open”. Validate your conversion file as follows: Data Managertab card → Conversion Files → Validate & Process Conversion File ....First click at Company, then at “Conversion Files” and then fill in thetechnical name given in the exercise in the “File Name” field. Select “Excel97-2003 Workbook (*.xls)” in the dropdown box to the right of “FileName”. Then click “Save”, then “OK”. Have a look at the configurationand then close the file by clicking Office Button → Close.

6. Use a provided transformation file under the same menu path calledTRANSFORMATIONFILE_MD_CCA. Exchange ## for your monitornumber in line 17 and 18 (Owner and Reviewer). Then delete the “-” sign inBPC-## within the Owner and Reviewer row.

Hint: This is necessary until EPM Add-in SP6 is available.

Store it with the same technical name on the server, but this time in the“Examples” folder. Make sure that the “Excel 97-2003 Workbook (*.xls)” isselected in the dropdown box to the right of the “File Name” field. Then, havea look at the configuration and leave the file open.

Continued on next page

354 © 2011 SAP AG. All rights reserved. 2011

Page 369: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 254: *Options

Figure 255: *Mapping for COMPCODE Property

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 355

Page 370: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 256: *Mapping for Currency Property

Figure 257: *Mapping for Owner and Reviewer and incorporating0CO_AREA

Continued on next page

356 © 2011 SAP AG. All rights reserved. 2011

Page 371: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 258: *Conversion

a) Navigate as follows to find the relevant file: Office Button →Open → My Documents → BPC420 → BPC420-## . Open file“TRANSFORMATIONFILE_MD_CCA”, navigate to line 17 and 18 andexchange the user BPC-## with your user which means exchange ## withyour monitor number. Then, delete “-” in BPC-##. This can be done in theOwner and Reviewer row. Then, save the file to the server by clickingTransformation Files → Copy Transformation File... and, in the nextpop-up, choose Company, then “Examples” and then fill in the technicalname given in the exercise in the “File Name:” field. Make sure that the filename does not contain .xls as a suffix and in the dropdown box to the rightof the “File Name” field, select “Excel 97-2003 Workbook (*.xls)”. Then,click “Save”, then “Cancel”. Then, have a look at the configuration itself.Leave the transformation file open.

7. Do a simulation to see whether or not the master data upload will work. Withyour transformation file open select “Validate&Process Transformation File...”and simulate an upload of “Master Data/texts from Netweaver BW InfoObjects”and take “0COSTCENTER” as source characteristic. Leave the “Internal

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 357

Page 372: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Format” flagged and select your “COSTC” dimension. When the validation isdone, flag “Output File” to see the transferred master data. Stop the simulationand close your transformation file.

a) With the transformation file open, navigate as follows: Transformation File→ Validate&Process Transformation File.... In the next pop-up, select“Master Data/texts from Netweaver BW InfoObjects” for “Data Type”. Forthe “Data” field, navigate to the button at the right hand side and clickit. The “Info Object Selection” comes up. In the white search field, typein “0COSTCENTER” and then press “Search” The field will be markedin gray. Click this field and then click “OK”. Leave “Internal Format”flagged. Open the dropdown box for field “Select a Dimension” and select“COSTC”. Then, click “Save”. When the validation is done have a lookat the status protocol.

Figure 259: Validation Status Log

Then flag “Output File”. Also, have a look at the results and then click“Cancel”. Close your transformation file via Office Button → Close.

8. Finally, you want to load the master data and attributes via an appropriate DataManagement Package called “Import Master Data Attrib and Text InfoObj”.Click the “Set Selection” button. Here, configure as follows:

Continued on next page

358 © 2011 SAP AG. All rights reserved. 2011

Page 373: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Figure 260: Attribute Tab

Figure 261: Hierarchy Tab

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 359

Page 374: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 262: Language Tab

Figure 263: Attribute List Tab

Continued on next page

360 © 2011 SAP AG. All rights reserved. 2011

Page 375: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Use “Update” as “Write Mode” and leave the “Internal Format” flagged. Runthe package and have a look at the “Status View” afterwards. Finally, close the“Run Package” editor but stay in Excel.

a) Navigate as follows: Run Package → Run Package → Company → DataManagement. Click at package “Import Master Data Attrib and TextInfoObj” and then click “Run”. After that, click at the yellow button at theright-hand side called “Display the Select InfoObject dialog”. In the nextpop-up, navigate to the white field and type “0COSTCENTER” then click“Search”. 0COSTCENTER will be marked gray. Click 0COSTCENTERand then click “OK”. Then click “Set Selection” and configure all tabcards as shown in the screenshots. Then click “OK”. Then click “Next”.On the next screen, keep “Update” flagged as “Write Mode”. Then, click“Next”. Keep “Internal Format” flagged and then click “Next”. On the nextscreen, click “Browse”, then “Company”, then “Examples” and then clickyour transformation file “TRANSFORMATIONFILE_MD_CCA”. Click“Open” then “Next”. On the next screen, open the dropdown box and select“COSTC”. Then click “Next” and then leave “Run” flagged. Then, click“Finish” and then “OK”. Click “View Status” and then click your Statusline. Flag “Refresh Status every”. Then choose “Detail”. Have a look atthe Package Log and finally click “Close” three times. Stay in Excel.

9. Now, we want to make sure that all master data was successfully loaded from amaster data editor perspective. Doing so, navigate back to the AdministrationWeb Page. For your dimension, have a look at the master data maintenance. Youshould see the cost center 1000COST1 to 1000COST24 and, in addition, fourcost centers that represent the nodes of the hierarchy which had been enrichedduring the upload. The “PARENTH1” column should be empty but all relevantproperty columns should be filled. Finally, return to the list of dimensions screen.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 361

Page 376: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Figure 264: Master Data Maintenance Editor for COSTC - Members andProperties

a) Navigate back to the Administration Web Client, click your“Administration” tab and navigate as follows: Dimensions and Models →Dimensions and then mark your dimension “COSTC”. Then, click “EditMembers”. When you have checked everything choose “Close” to return tothe list of dimensions.

Task 7: Hierarchy Upload for COSTC from BW InfoObject0COSTCENTERModeling a Hierarchy upload from a BW InfoObject

1. Concerning the master data of COSTC, the “PARENTH1” column is not filledyet. So, with the help of a provided conversion file and the BW hierarchy on topof 0COSTCENTER, we are now going to transfer this hierarchy to COSTC.First, open conversion file “ID_CONVERSION_HIERARCHY”, validate andsave it to the server under the “ConversionFiles” folder. Do not save with .xlssuffix. Make sure that “Excel 97-2003 Workbook (*.xls)” is selected. Then,have a look at the three sheets provided with this file:- The “Conversion” sheet contains the mapping of the BW hierarchy ID to theParentH1 column in the COSTC member sheet.- The “Node_Names” sheet contains the mapping of node names to member IDs.- The “Parents” sheet contains the mapping of parent IDs in BW to parent IDs inBO PC.

Continued on next page

362 © 2011 SAP AG. All rights reserved. 2011

Page 377: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Finally close the Conversion File.

a) Navigate as follows to find the delivered conversion file: Office Button→ Open → My Documents → BPC420 → BPC420-## . Open file“ID_CONVERSION_HIERARCHY”. Validate your conversion file asfollows: Data Manager tab card → Conversion Files → Validate &Process Conversion File .... Then, fill in the technical name given in theexercise in the “File Name” field. Make sure that the file name does notcontain the .xls suffix and in the drop down box right to the “File Name”field select “Excel 97-2003 Workbook (*.xls)”. Then click “Save”, then“OK”. To close the file, go to Office Button → Close

2. Open the provided transformation file “TRANSFORMATION-FILE_CCA_HIER” and save it to your model. Do not add .xls to the file name.Instead, select “Excel 97-2003 Workbook (*.xls)” in the drop down box rightto the “File Name” field. Then, have a look at the file content and leave itopen afterwards.

Figure 265: Hierarchy transformation mapping

a) Navigate as follows to find the delivered transformation file: OfficeButton → Open → My Documents → BPC420 → BPC420-## . Open file“TRANSFORMATIONFILE_CCA_HIER” and then save it as follows tothe server: Transformation Files → Copy Transformation File... and inthe next pop-up first click Company, then “Examples” and then fill in thetechnical name given in the exercise in the “File Name” field. Make surethat the file name does not contain .xls. Instead, select “Excel 97-2003Workbook (*.xls)”. Then click “Save” and “Cancel”. Have a look at theconfiguration. Do not close the transformation file.

3. Let's simulate the Hierarchy upload from the open transformation file using the“Master Data hierarchy from NetWeaver BW InfoObject” “Data Type”. Press“Set Selection” and select your source hierarchy “BPC420_CC_Hierarchy”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 363

Page 378: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

Also select “Empty” for “Version”. Keep “Internal Format” flagged. Whenvalidation is done, also click the “Output File” and then stop simulation andclose the transformation file.

a) With the transformation file open, navigate as follows: Transformation File→ Validate&Process Transformation File.... In the next pop-up, select“Data Type” “Master Data hierarchy from NetWeaver BW InfoObject”.For the “Data” field, click the gray button on the right and then fill in“0COSTCENTER” in the white search field. Then click “Search” and,when the field is found, click it and then click “OK”. Click “Set Selection”and then, on the “Hierarchy” tab, select the hierarchy mentioned in theexercise and then select “empty” for the “Version” field. Choose “OK”.Keep “Internal Format” flagged. Open the drop down box for “Select aDimension” and then press “Save”. When the validation is done, flag“Output File” and then have a look at the result. Finally, choose “Cancel”.Close the transformation file via Office Button → Close.

Continued on next page

364 © 2011 SAP AG. All rights reserved. 2011

Page 379: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

4. As a last upload step, we now want to execute the hierarchy upload package.As “Write Mode”, select “Update”. Leave “Internal Format” flagged. After therun, select “View Status” to check the protocol. After this step close the “RunPackage” editor but stay in Excel.

a) Navigate as follows: Run Package → Run Package → Company →Data Management. Click the package “Import Master Data HierarchiesInfoObj” and then click “Run”. After that, click at the yellow button at theright hand side called “Display the Select InfoObject dialog”. In the nextpop-up, navigate in the white field and type “0COSTCENTER” then click“Search” on the right. 0COSTCENTER will be marked gray. Click at0COSTCENTER and then click “OK”. Then click “Set Selection” .On the “Hierarchy” tab, select your hierarchy “BPC420_CC_Hierarchy”for the “Hierarchy” field. For the “Version” field ,select “Empty” andmanually type “ROOT” in the “Member ID” field. Navigate to thekey date field and click the left button with the triangle to navigate toJanuary. When January is reached, click the “1” since the key date willbe 1/1/2011. Then, click “OK”, then “Next”. As “Write Mode”, keep“Update” flagged. Click “Next” and keep “Internal Format” flagged. Click“Next”. For the “Transformation file:” field, click “Browse”, then choose“Company”, then “Examples” and then select your transformation file“TRANSFORMATIONFILE_CCA_HIER”. Then, click “Open”, then“Next”. For the “Dimension Name:” field, open the drop down box andselect “COSTC”. Keep “Run” flagged. Then, click “Finish” and then“OK”. Click “View Status” and then select your Status line. Flag “RefreshStatus every”. Then click “Detail”. Have a look at the Package Log andfinally click “Close” three times. Stay in Excel.

5. Now, we want to make sure that the hierarchy was successfully loaded from amaster data editor perspective. Navigate back to the Administration Web Pageand, for your dimension, have a look at the master data maintenance. The

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 365

Page 380: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

“PARENTH1” column should be filled this time and, if you set the “View” fromList to “Hierarchy”, you should also see the hierarchy in a hierarchical display.Finally, return to the list of dimensions.

a) Navigate back to the Administration Web Client. The list of dimensionsshould be your starting screen here. Mark your dimension COSTCand press “Edit Members”. On the next screen, you should see the“PARENTH1” column filled. Scroll to the upper right to the “View” dropdown box and select “Hierarchy”. As a consequence, you will get a similarresult:

Figure 266: Master Data and Hierarchy for COSTC

Click “Close” and you are back in the list of dimensions. Leave this screenopen.

Task 8: Loading of Transaction Data per Flat File,Copying Data and Generation of a Package Link: ModelCC_PLAN##Flat File Upload, Copy Data and Package Link

1. You are in the Data Manager tab of Excel and are already connected toenvironment BPC420_## with model CC_PLAN##.We now want to model the import of transaction data via a flat file to theCC_PLAN## model. First, execute the “Upload Data” step using thefollowing file Flat_File_for_TD_CC_PLAN_JAN2011.TXT and load it

Continued on next page

366 © 2011 SAP AG. All rights reserved. 2011

Page 381: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

on the server. The file can be found as follows: My Documents → BPC420→ BPC420-## . When saving to the server, make sure that the file is savedas “Flat_File_for_TD_CC_PLAN_JAN2011”, which means without the .txtsuffix. In the drop down box to the right of the “File Name” field select “TextFile (*.txt) ”. After that, have a look at the “Preview”. As you can see, noconversions and transformations will be necessary. Then, execute the import forthe January 2011 data.

a) On your Data Manager tab in Excel, select “Upload Data” and, inthe next pop-up, click “Browse” until you find your file. Follow theexercise descriptions to find the file. When found, choose the fileand then click “Open”, then “Upload”. On the next screen, click“Company” and then “Examples”. For the “File Name” field, fill in“Flat_File_for_TD_CC_PLAN_JAN2011” and make sure that .txt is notentered in this cell. Then, select “Text Field (*.txt)” in the dropdown boxto the right of the “Field Name” field. Click “Save” then “OK”. Then,click “Data Preview”, then “Company”, then “Examples”. Choose yourfile and press “Open”. On the next screen for “Select File type or table:”field, select “Delimited” and in the “Select a Delimiter.” dropdown box, set“COMMA”. Have a look at the data and then press “Cancel”.

2. Create a transformation file. Do not change any settings and save it tothe “Company” folder in the “Examples” section. Name it as follows:TRANSFORMATIONFILE_CCA_TD_2011_JAN. Do not enter .xls; insteadselect “Excel 97-2003 Workbook (*.xls)” for the dropdown box to the right ofthe “File Name” field. Leave the file open.

a) Navigate as follows: Transformation File → New Transformation File....On the next screen, choose “Company” and then “Examples”. For the field“File Name”, fill in the technical name given in the exercise. Make surethat .xls is not entered in the “File Name” field and that “Excel 97-2003Workbook (*.xls)” is selected. Then, click “Save”, then “Cancel”. Leavethe file open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 367

Page 382: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

3. Now, do a simulation of the load. Use the “Validate&Process TransformationFile...” tool and test the “Transaction Data from Flat File” scenario for your flatfile “Flat_File_for_TD_CC_PLAN_JAN2011”. If the validation is successful,flag “Output File”, have a look at the simulation results, and then stop thesimulation. Close the transformation file buy stay in Excel.

Note: The simulation data only refers to January of 2011. Data forFebruary will be created by copying the January data to February.

Hint: We are not going to execute the package run now, since wewant to include the relevant package together with other packages ina package link at the end of this exercise and execute all packagescentrally from this link!

a) With the transformation file open, navigate as follows: TransformationFile → Validate&Process Transformation File.... As “Data Type”, keep“Transaction Data from Flat File” selected and for the “Data” selection,click the button at the right-hand side with the three dots. In the nextpop-up, choose “Company”, then “Examples” and choose your flat file.Then, click “Open”. Choose “Save” and see the Status Log. Afterwards,flag “Output File”, take a look at it and see that the data is only for2011.001. Then, click “Cancel”. Close the transformation file via OfficeButton → Close. Stay in Excel.

4. The next goal is to create a package link, which contains both the importpackage and a copy package, which will copy the uploaded data from Januaryto February 2011.Create a package link with the following name and description:“PACKAGE_LINK_IMPORT_COPY_2011”.Take into account the following information when creating the first Task:Add Name and Description: “TASK_1_IMPORT to Jan 2011”, then select“Import Transaction Data Last Overwrite Mode” and Filter by: “Team ”and“Company (Public)”.Take into account the following information when creating the second Task:Add Name and Description: “TASK_2_COPY_to Feb 2011”, then select “Copy”and Filter by: “Team ”and “Company (Public)”.Save your settings and now Set Prompts for the“ first task” as follows:Select your import and transformation file and flag “Merge Data Values”. Flag“No” for the default logic and flag “No, do not check work status settings”.

Save your settings and now Set Prompts for the“ second task” as follows:

Continued on next page

368 © 2011 SAP AG. All rights reserved. 2011

Page 383: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Select “Merge Data Values”, then flag “No” for the default logic and do not flag“Check the Work Status Settings”. Fill in the relevant source and destinationmonth of 2011 according to the exercise. Save your package link.Execute the package link and see the results by choosing “View Status” for bothtasks. When finished, close the package link and remain in Excel.

a) Navigate as follows on the Data Manager tab: Organize → OrganizePackage Link List. On the next pop-up, right-click in the yellow sectionand select “Add Package Link”. In the next pop-up, fill in the “PackageLink Name” and “Package Link Description” as given in the exercise.Then, click the button “Add Task” and in the “Package Task” pop-up, fillin “TASK_1_IMPORT to Jan 2011” as Name and Description. Clickthe line “Company (Public) Data Management Import Transaction DataLast Overwrite Mode”. In the “Filter by:” dropdown box, leave “Team”selected. In the dropdown box to the right of the first one, select “Company(Public)”. Then click “OK”. Then click “Add Task” and, as Name andDescription, fill in “TASK_2_COPY_to Feb 2011” . Mark the “Company(Public) Data Management Copy ” line. Then keep “Team” selected and inthe last drop down box select “Company (Public)”. Then select “OK”.Now, mark the first task and select “Set Prompt”. Click “Browse”,then “Company”, then “Example”. select your flat file. . Then click“Open”. Then click “Next”. On the next screen, also choose “Next”, then“Company”, then “Examples” and then mark your transformation file.Choose “Open”, then “Next”. On the next screen, leave “Merge DataValues” flagged. Choose “Next” and, on the next screen, choose “No”.Then, choose “Next”. Flag “No, do not check work status settings”. Select“Finish”.Mark the second task in the list of tasks and select “Set Prompt”. Keep“Merge Data Values” flagged and select “Next”. On the next screen, flag“No”. Press “Next”. On the next screen, flag “No, do not check work statussettings”. Then, choose “Next”. On the following screen, navigate to the“Source” column on the left and click “Add” for the “TIME” field. The“EPM - Member Selector” pop-up appears. We want to select “2011.001”as “Member only” selection. To achieve this, first flag “2011.Q1” and, inthe dropdown box below, select “Member only”. Also flag “2011.001” andmake sure that “Member only” remains selected in the dropdown box.Then, click at the blue “Add” arrow and both “2011.Q1” “ and “2011.001”

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 369

Page 384: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 4: Data Acquisition BPC420

will appear on the right-hand list, both with the “Relationship” “Memberonly”. Now, mark “2011.Q1” and click at the blue “Remove” arrow” andthen select “OK”.

Hint: If you entered the “EPM - Member Selector” editor againand marked “2011.001” “Member only” would automatically beavailable in the dropdown box. However, when first opening thiseditor, “Member only” is not available with leaf members like“2011.001”.

Now, navigate to the “Destination” column and open the dropdown box forthe “TIME” field. Here again, “Member only” is not yet available. Flagthe “2011.Total” node and “Member only” automatically comes up. Keepthis selection. Then, open the “2011.Total” hierarchy using the “+” iconsto the left of the hierarchy and open until you see all months. Now, “flag2011.Feb” and unflag “2011.Total”. Then, click the blue “Add” arrowand then click “OK”. On the next screen, choose “Finish”, then “Save”.Click “Close” twice.To execute the package link, navigate as follows: Run Package → RunPackage Link. In the next pop-up, click your package link and select“Run”. On the next screen, select “Next”. Leave “Run” flagged and thenselect “Finish”. Then, click “OK”. Keep your package link marked andchoose “View Status”. Mark the line of your “Status” and then choose“Detail”. The “Link Tasks Status” popup will come up. Mark the first taskand click “Detail” to see the Package Log for the Import package. Then,click “Close” and then mark the second Task. Again, click “Detail” andhave a look at the Package Log for the Copy package. When finished, click“Close” four times. Stay in Excel.

370 © 2011 SAP AG. All rights reserved. 2011

Page 385: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Flat File Upload and BW Data Upload – Master Data and HierarchyUpload and Loading of Transaction Data

Lesson Summary

You should now be able to:• Explain the configuration of Flat File Uploads.• Describe the set up of Uploads from BW.• Install Master Data Upload, a Hierarchy Upload and Transaction Data Uploads

2011 © 2011 SAP AG. All rights reserved. 371

Page 386: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

Unit SummaryYou should now be able to:• Explain the Data Manager Package tool and the issues related to it.• Explain the configuration of Flat File Uploads.• Describe the set up of Uploads from BW.• Install Master Data Upload, a Hierarchy Upload and Transaction Data Uploads

372 © 2011 SAP AG. All rights reserved. 2011

Page 387: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 388: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 389: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

373 © 2011 SAP AG. All rights reserved. 2011

Page 390: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

374 © 2011 SAP AG. All rights reserved. 2011

Page 391: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5Logic Scripts

Unit OverviewThis unit is about all kinds of Logic in BO PC and shows different ways of executingthe logic.

Unit ObjectivesAfter completing this unit, you will be able to:

• Describe the concept of Logic Scripts• Identify Logic Script Commands• Recognize Golden Rule for Logic Scripts• Describe the central execution of Logic Scripts• Define how to adapt Packages for Central Execution• Explain how to execute a Logic Script from a Button• Illustrate how to create a prompt for Variable Values• Discuss the concept of allocation in BO PC• Define the logic elements for Allocation• Execute an Allocation• Discuss function modules in BO PC• Describe the integration between ABAP and BO PC• Identify the possibility of on the fly calculation• Create Member Formulas

Unit ContentsLesson: Creating Basic Logic Scripts and Online Execution... . . . . . . . . . . . . . . .377

Procedure: Configuring online execution of Logic Scripts .. . . . . . . . . . . . . . .385Exercise 6: Create a Basic Online Execution of Logic Scripts .. . . . . . . . . .407

Lesson: Creating Logic Scripts and Central Execution ... . . . . . . . . . . . . . . . . . . . . .464Exercise 7: Execute Logic Scripts Centrally .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .471

2011 © 2011 SAP AG. All rights reserved. 375

Page 392: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Lesson: Defining Logic Scripts for Allocation ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .498Exercise 8: Create a Logic Script Allocation ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . .507

Lesson: Integrating Logic Scripts and ABAP... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .523Exercise 9: Integrate ABAP in BO PC .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .527

Lesson: Introducing Member Formulas ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .548Procedure: To create and Execute Member Formulas ... . . . . . . . . . . . . . . . . .554Exercise 10: OPTIONAL: Create Member Formulas ... . . . . . . . . . . . . . . . . . . .555

376 © 2011 SAP AG. All rights reserved. 2011

Page 393: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Lesson: Creating Basic Logic Scripts and Online Execution

Lesson OverviewYou use Logic Scripts in Planning and Consolidation to do any kind of businesscalculation. It is necessary to learn some commands to understand the coding of thebusiness logic. The focus in this lesson is on online execution, which means that theend users shall execute the logic by themselves.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Describe the concept of Logic Scripts• Identify Logic Script Commands• Recognize Golden Rule for Logic Scripts

Business ExampleYou need formulas to carry out some calculations in planning and so you need to knowabout the options that script logic provides.

Types of Logic• Worksheet Based Logic exists in worksheets of input forms and reports only.• Member Formulas (use sparingly) give you the ability to define very powerful

formulas for calculating mostly Account dimension members.• Dimension member formulas are defined at the Environment level. Thus, they

are valid across all models which use the dimension.• Within the definition of a dimension using Microsoft MDX language

(Multidimensional Expressions Language).• Logic Scripts are defined within each model and used to calculate data but

only for base level data in the model. You can perform script logic calculationson base level members only.

• Calculations can cross models within one environment.• Business Rules are a table-based logic, which provides the flexibility to

customize certain delivered functions to meet specific business needs, withouthaving to understand scripting/programming. Business rules can only be usedfor management and legal consolidation.

2011 © 2011 SAP AG. All rights reserved. 377

Page 394: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 267: Example - Worksheet-Based Logic

Figure 268: Example - Member Formulas

378 © 2011 SAP AG. All rights reserved. 2011

Page 395: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 269: Example - Logic Scripts

Figure 270: Example - Business Rules

2011 © 2011 SAP AG. All rights reserved. 379

Page 396: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Script Logic ConceptLogic Scripts are used for any kind of business calculations that must be performedon base level members (that is, before aggregations).You can use MDX or SQL syntax. MDX logic has a fairly intuitive and easy to mastersyntax. However, experience has shown that MDX queries may easily deliver buthave a very poor performance and do not scale well. It is also possible to link toABAP from the Logic Script editor. Logic Script statements are case-insensitive.

Benefits related to Script Logic include:

• Real-time – allows for real-time calculations.• Option to run in batch from Data Manager.• Flexible – enables you to apply different formulas to different applications within

an application set (dimension member formulas are applied to all applicationsusing the dimension).

• Powerful and effective tool to perform calculations, delivering the desired resultsefficiently and accurately.

Figure 271: Types of Logic Scripts

380 © 2011 SAP AG. All rights reserved. 2011

Page 397: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

You access logic files from the Administration Web Client by navigating as followsfrom the Administration tab: Rules → Logic Scripts. As you can see from thescreenshot, two types of Logic Scripts exist:

• Default Logic• Other Logic Script

Default logic is a special logic statement that is automatically executed on everywrite back to a model.Since having all logic statements in the Default.LGF logic file might becomeunmanageable, other logic files are created and assigned to the Default.LGF Includewhen real time execution of their logic is desired. In the figure above, you can see thatthe Default.LGF refers to Logic_1.LGF, which means that the content of Logic_1 isexecuted when the end user is saving data to the cube. Working with separate logicfiles and linking them to the default by the *INCLUDE instruction makes it easierwhen errors come up and you want to find out in which part of the coding the errorcame up.

If an online execution is not wanted, the “Other Logic Script” Include must not beintegrated in the Default Include. In this case, Logic Script can be run from DataManager for batch processing of formulas.

Using Data Manager to execute Logic module formulas is useful for calculations thatdo not need to be executed immediately. We will focus on central execution later.

For each Logic Script file you create, you have the following two files:

• A .LGF file, which is an ASCII file you create and edit when setting up logiccalculations

• An .LGX file, which is the compiled logic file created by the system when youvalidate and save your logic. This is an executable version of the .LGF file thatis not stored in Planning and Consolidation.

2011 © 2011 SAP AG. All rights reserved. 381

Page 398: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 272: Structure of Script Logic

Planning and Consolidation loads a specific selection of data (known as Scoping) inmemory, applies a set of user-defined formulas to it, and derives an appropriate setof calculated amounts (Body/Code). These amounts are then written back into thefact table as if they were additional input data (Commit).

Figure 273: Transaction UJFS - Logic Library

382 © 2011 SAP AG. All rights reserved. 2011

Page 399: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Planning and Consolidation has a library of standard logic functions available for youruse. The file has the extension .LGF, which can be called at validation by using theINCLUDE function in your logic file. The logic module scans the library file for theappropriate formulas to use, based on the information in the .LGF file.

The following are examples of logic delivered with Planning and Consolidation:

Allocation.lgf: runs an allocation

Calcaccount.lgf: used to prepare Cash Flow; runs an Account CalculationBusiness Rule

Consolidation.lgf: used to run a Legal Consolidation Business Rule

Copy_Opening.lgf: used to run a Balance Carry Forward business rule

FX_Trans.lgf: used to run currency conversion

ICBooking.lgf: used for running Intercompany reconciliation anddifference posting

ICData.lgf: used to run Intercompany reconciliation

ICElim.lgf: used for running Intercompany reconciliation

MDXlib.lgf: library of MDX financial functions

System_Constants.lgf: stores constant values for use within script logic. Seethe System constants file section that follows for moreinformation.

System_Library.lgf: includes basic examples of a set of keywords

Validation.lgf used for running a Validation rule

2011 © 2011 SAP AG. All rights reserved. 383

Page 400: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 274: How to run Logic Script

Figure 275: Logic Script - ABAP Program Tester

To test your Script Logic, it is possible to debug using programUJK_SCRIPT_LOGIC_TESTER which is run from transaction SE38 in SAPNetWeaver BW.

Input the environment and model you wish to test. In the Data Region section, inputthe Dimension and Member IDs (similar to inputting your current view). Then,specify your script location or copy/paste or input the logic directly in the lower-lefteditor box.

There are three run options:

• Validate• Execute• Execute (simulate)

You can check the log in the lower right section.

384 © 2011 SAP AG. All rights reserved. 2011

Page 401: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Configuring online execution of Logic Scripts

1. You are logged on in the Administration Web Client and on the“Administration” tab you navigate as follows: Rules → Logic Scripts.

2. Select the model for which you want to create a Logic Script Include byclicking the model.

3. Click “Open”.4. Click “New”.5. In the next pop-up “Create a new Logic Script”, enter the technical name

for your include and then click “Create”.6. Fill in your coding, then click “Validate”, then “Save”.7. On the next screen, “Scripts for: “Name of Model””, click

“DEFAULT.LGF” and enter *INCLUDE and then enter the technical nameof the Include you had defined in Step 5.

8. Press “Validate”, then “Save” and then “Close”.9. Choose “Return to Logic Scripts”.10. In Excel, on the “EPM” tab plan some data in an open Input Schedule

whereby the selections should match the selections mentioned in the LogicScript Coding.

11. Finally, click Save Data → Save and Refresh Workbook Data or Save Data→ Save and Refresh Worksheet Data. You should see the calculated resultsaccording to your business logic.

2011 © 2011 SAP AG. All rights reserved. 385

Page 402: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Script Logic Commands

Figure 276: *WHEN Statement

Note: There should be no space between the two characters of the unequalsign operator (<>). You can insert one or more blanks between the operatorsand the value. If an unequal sign (<>) is used, you can pass only one value.Therefore, the syntax *IS <> 2,3,4 is invalid. Other relational operators likeAND, OR and NOT are not currently supported. *IS dimension.propertyis not supported.

WHEN / ENDWHEN structures can be nested by as many levels as desired and inany sequence:*WHEN xxx

*IS “A”

*REC()

*REC()

*IS “B”

*REC()

*WHEN yyy

*IS “C”, “D”, “E”

*REC()

386 © 2011 SAP AG. All rights reserved. 2011

Page 403: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

*ELSE

*REC()

*ENDWHEN

*ENDWHEN

Figure 277: *REC Statement

The *REC( ) instruction tells the program what to do once the specified criteria hasbeen met. Each *REC instruction generates one new record to post to the database.Each source record can generate as many records as desired, even pointing to the samedestination cell. The parameters of the REC( ) function specify what to modify inthe original record.

Hint: Restrictions For Using the REC Instruction: You cannot use MDXkeywords in *REC.

The only permitted operations are addition (+), subtraction (-), multiplication (*), anddivision (/), combinations of these operators, and parenthesis for tuple and priorities ofthe operations. Dynamic properties such as HLEVEL, PARENTHn are not supportedin the REC statement. REC always needs to be accompanied by WHEN / IS /ENDWHEN. Stand-alone REC statements do not have any effect. You cannot useSIGNEDDATA or any measure name in a WHEN statement to write a condition on ameasure value. WHEN / IS / REC / ENDWHEN cannot be used in SELECTCASE /ENDSELECT.

2011 © 2011 SAP AG. All rights reserved. 387

Page 404: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 278: *REC – Using Multiple REC Statements

Figure 279: *COMMIT Statement

A logic file can contain formulas that depend on the result of calculations performedby the cube, and these calculations in turn depend on the results of some otherformulas in the same logic.

For-mula1

[P_ACCT].[#CE0004030] = ( [P_ACCT].[CE0004010] +[P_ACCT].[CE0004020] ) * 0.15

For-mula2

[P_ACCT].[#CE0661000] = ( [P_ACCT].[CE0004010] +[P_ACCT].[CE0004020] + [P_ACCT].[#CE0004030] ) /[P_ACCT].[CE0652000]

388 © 2011 SAP AG. All rights reserved. 2011

Page 405: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

In this example, CE0661000 depends on the first calculation, and this calculation inturn depends on the calculation of CE0004030. The logic, if written in the aboveformat, does not work correctly, because CE0004030 cannot be retrieved from thecube until its result has been posted to the cube. To get the right results, CE0004030must be calculated AND stored in the cube. THEN, the calculated result can beretrieved from the cube and be used to calculate CE0661000. To force a write backof the result of the calculation of CE0004030 into the cube before the calculation ofCE0661000, you can insert the instruction *COMMIT between the two calculations.

The logic then works when written as follows:

For-mula1

[P_ACCT].[#CE0004030] = ( [P_ACCT].[CE0004010] +[P_ACCT].[CE0004020] ) * 0.15*COMMIT

For-mula2

[P_ACCT].[#CE0661000] = ( [P_ACCT].[CE0004010] +[P_ACCT].[CE0004020] + [P_ACCT].[#CE0004030] ) /[P_ACCT].[CE0652000]

Hint: In this case, CE0004030 in the second formula does not have the poundsign (#), because it is a stored amount read from the cube.

Figure 280: Scope of the Query: *XDIM_MEMBERSET

2011 © 2011 SAP AG. All rights reserved. 389

Page 406: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Behind the screens of Logic Scripts, the Logic module loads a selection of data intomemory (scope of the query). The user-defined formulas are applied to the selecteddata and a result set of records is generated. The result set is written back to thedatabase. *XDIM_MEMBERSET defines the scope of the data in which subsequentbusiness logic will be applied.

Syntax:

• *XDIM_MEMBERSET {Dimension name} = {Members Set}• XDIM_MEMBERSET {Dimension}<>{MemberSet}

Note: XDIM_MEMBERSET does not allow the use of Properties. To scopeon Properties, there are two commands, which will be explained later:*XDIM_FILTER or *SELECT.

Figure 281: *XDIM_MEMBERSET and *XDIM_ADDMEMBERSET

With the keyword XDIM_ADDMEMBERSET, the logic can merge a specific setof members with the members passed in the region for which the logic should beexecuted. This instruction is similar to the instruction *XDIM_MEMBERSET. Thedifference is that, while *XDIM_MEMBERSET redefines the region passed by theuser, *XDIM_ADDMEMBERSET adds the defined set to the passed region.

390 © 2011 SAP AG. All rights reserved. 2011

Page 407: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 282: *XDIM_MAXMEMBERS

When the number of records being processed is too big, the performance candeteriorate significantly. Also, processing too much data in the memory will slowdown the system for other uses and eventually run out of memory and an ABAPdump can occur even with high Roll memory settings. In this case, you can breakthe action into multiple packets and execute them sequentially. This is done with*XDIM_MAXMEMBERS.

2011 © 2011 SAP AG. All rights reserved. 391

Page 408: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 283: *FOR/*NEXT

*FOR / *NEXT is used to repeat certain scripts written between a FOR and animmediate NEXT for a set of members. Sets of members can be provided, eitherdirectly in the FOR statement or through variable. The Logic Module supports anynumber of FOR/NEXT loops in the body of the logic files. The *FOR Statement hasto be accompanied by a variable. In the Example %KPI% is the user defined variablewhich was used for the Loop.

Figure 284: *XDIM_FILTER

392 © 2011 SAP AG. All rights reserved. 2011

Page 409: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

XDIM_FILTER brings all members when the specified condition is met. Thiskeyword can return only base members. XDIM_FILTER selects the scope membersvia properties unlike the *XDIM_MEMBERSET syntax.

Example:

*XDIM_MEMBERSET Category = PLAN

*XDIM_MEMBERSET Entity = C3000

*XDIM_MEMBERSET P_DataSrc = MANUAL

*XDIM_MEMBERSET RptCurrency = LC

*XDIM_MEMBERSET P_Activity = EMPL1

*XDIM_MEMBERSET P_ACCT = CE0004220

*XDIM_FILTER Time = [Time].properties(“MONTHNUM”) = “2”

*WHEN P_ACCT

*IS CE0004220

*REC (EXPRESSION = 888)

*ENDWHEN

*COMMIT

Figure 285: *SELECT

2011 © 2011 SAP AG. All rights reserved. 393

Page 410: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

The special instruction *SELECT allows the user to retrieve a list of elements froma dimension and save it in a user-defined variable for later use anywhere else in thelogic. The SELECT instruction is not specific to a given logic section, but it can bewritten once anywhere in the logic and used across multiple commit sections. TheSELECT statement is fairly limited, as it only supports the equals sign (=), not equal to(<>) and cannot be used to combine multiple filter criteria with AND or OR keywords.

Figure 286: *SELECTCASE

*SELECTCASE coding line MDX output generated

*SELECTCASE [AC-COUNT].CURRENT-MEMBER.PROPER-TIES(“CALC”)

=IIF([ACCOUNT].CURRENTMEM-BER.PROPERTIES(“CALC”)=Y,1,IIF([AC-COUNT].CURRENTMEMBER.PROPER-TIES(“CALC”)=N,1,null))

Note: SELECTCASE structures currently CANNOT be nested.

Note: WHEN/ENDWHEN which has a much better performance then*SELECTCASE.

394 © 2011 SAP AG. All rights reserved. 2011

Page 411: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 287: *ADD

*ADD can only carry one formula and it must be an MDX formula. Working with*ADD has a much better impact on performance than using the appropriate MDXlanguage.

A user-defined function is the name of a placeholder that a user can insert in formulasin place of a corresponding MDX statement or part of one. This can greatly improvethe readability of a logic statement. The definitions of the logic functions can beinserted anywhere in a logic file or in an included file.

Note: If your function executes a division, you do not have to check thedenominator for Zero to avoid divide-by-zero error. The Script Logic engineautomatically replaces the divide by zero error with zero.

2011 © 2011 SAP AG. All rights reserved. 395

Page 412: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 288: *TMVL

You can use TMVL:

• In FACTOR/EXPRESSION within REC• Inside FOR/NEXT loops• In IS conditions inside WHEN/ENDWHEN.

If TMVL is used with variables, like %TIME_SET%, the first period of the time setis used as base period for negative offset and last period of the time set is used asbase period for positive offset. Multiple separate (not nested) TMVLs can be usedin one scoping statement. When 0 is used as offset, no offset will be done for theprovided time member.

Figure 289: *TMVL – Where Can TMVL be set?

The upper slide gives you some ideas where in coding and how TMVL can be used.

396 © 2011 SAP AG. All rights reserved. 2011

Page 413: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 290: Logic Keyword SET

An implied keyword is available for each dimension. This keyword holds the set ofmembers passed to the logic engine for a given dimension. This keyword can be usedas a replacement string anywhere in the logic.

Figure 291: Logic Keyword DIM

2011 © 2011 SAP AG. All rights reserved. 397

Page 414: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Another type of implied keyword is available for each non-user-defined dimension.This keyword holds the actual name of a dimension of a given type, and can be usedas a replacement string to use anywhere in the logic.

Figure 292: Cross Model Logic Scripts - Overview

Lookup and Destination_App are appropriate for multi-model scripting.

Figure 293: *LOOKUP – READ VALUES (1 of 2)

Lookup is only for reading values and Lookup is positioned in the application thatwants to read a value from a further cube. Its also possible to read values from thesame application which are not in the scope!

398 © 2011 SAP AG. All rights reserved. 2011

Page 415: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Since we are only interested in the value itself, no mapping or skipping or addingof dimensions is needed.

Note: Reading multiple Measures within one LOOKUP for multiple lookupIDs is not supported. Within a script, reads from the same Application needsto be written within one LOOKUP block. Multiple LOOKUP blocks forsame Application is not supported.

Note: RATEEUR in coding line “*DIM RATEEUR:INPUTCURRENCY=”EUR “ ” is a placeholder or variable not a dimension, not a member, not aproperty.

Figure 294: *LOOKUP – READ VALUES (2 of 2)

The figure above gives an example of how to refer to property values in *LOOKUP.

2011 © 2011 SAP AG. All rights reserved. 399

Page 416: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 295: *DESTINATION_APP

Destination_App copies/writes data sets from the source cube to the destination cubeand is so created from the Source Application! To do so, we need functionality whichtells us how to handle dimensions which can only be found in the source and thoseones which you only find in the destination and how to map dimensions.

Explanation to the above coding example:

• DETAIL_PLAN has two additional dimensions, namely PRODUCT, andMARKET.

• DETAIL_PLAN is the target application, which has all dimensions ofPLANNING except for P_ACCT.

• This dimension is replaced with P_ACCTDETAIL.

The above script logic moves the data into DETAIL_PLAN with:

• Blank data in the PRODUCT and MARKET dimensions.• P_DATASRC defined by the keyword INPUT.• Corresponding values of P_ACCT copied to P_ACCTDETAIL.

400 © 2011 SAP AG. All rights reserved. 2011

Page 417: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Constant File

Figure 296: Constant File - Scenario 1: Configuration of Constants atEnvironment Level

Scenario 1: Configuration of Constants at Environment LevelThe system constants file is the logic file that maps your dimension name toan Environment Constant. By updating the dimension constants file with yourdimensions, you avoid having to change or rewrite any function (dimension logic andscript logic, delivered and custom logic). If all your models use the same dimensions,it could be a working solution for you to download the system constant file, to adapt itappropriately and then to upload the file again.

2011 © 2011 SAP AG. All rights reserved. 401

Page 418: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 297: Constant File - Scenario 2: Configuration of Constants at ModelLevel

Scenario 2: Configuration of Constants at Model Level:

Take the constant file structure and build up an Include for the model for which youwant to use Constants. Then integrate the Include into the Default Include for thismodel. In this case the mapping is only model specific.

Logic Scripts - Golden Rules

Figure 298: Rule 1: Stay away from MDX logic

402 © 2011 SAP AG. All rights reserved. 2011

Page 419: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 299: Rule 2: Load in Memory Only the Required Data

Figure 300: Rule 3: Keep the Logic Structure as Compact as Possible

2011 © 2011 SAP AG. All rights reserved. 403

Page 420: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 301: Rule 4: Minimize the Number of COMMITs

Figure 302: Rule 4: Minimize the Number of COMMITs - Example

The efforts of reducing the number of COMMIT sections may force the user to violaterule number 2 (load in memory as few data as possible). In general, loading less datain memory is not as effective a performance improvement as reducing the number

404 © 2011 SAP AG. All rights reserved. 2011

Page 421: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

of COMMITs. In most cases, the logic will run faster even if loading more data inmemory, thanks to the benefit of having fewer COMMIT sections in the logic itself.This trade-off must be evaluated on a case-by-case basis.

Figure 303: Rule 5: Keep in default logic only the calculations that areabsolutely required to be performed in real time

Figure 304: Rule 6: Avoid “Save and Refresh Workbook Data ”or “Save andRefresh Worksheet Data”

2011 © 2011 SAP AG. All rights reserved. 405

Page 422: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

406 © 2011 SAP AG. All rights reserved. 2011

Page 423: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Exercise 6: Create a Basic Online Executionof Logic Scripts

Exercise ObjectivesAfter completing this exercise, you will be able to:• Define some LogicScript Commands• Organize Online Execution• Recognize the Logic Script Validation Tool

Business ExampleYou use Logic Script Formulas to be flexible when Business Calculations are neededand you want the end user to execute the Logic himself / herself.

Task: Test Logic Script Commands and practice OnlineExecutionTest the most important script logic commands.

Hint: For the exercise, the backend system, the Administration Web Clientfor environment BPC420_##, and the Excel “EPM” tab should be open.Make sure that the connection for environment “BPC420_##” with model“D_PLAN##” is set. It was created in a former exercise.

1. Since you want to test logic script calculations online, you first require an inputform in which you could fill in some test data and then see the effects of yourlogic script examples. Therefore, for your relevant connection, on the “EPM”tab flag “Display EPM Context Bar” and “Display EPM Pane” . Then click the“Show Pane&Context” button and set the following selections:

Dimension Selection

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

PRODUCT2 DOGDRYPUPPY

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 407

Page 424: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Dimension Selection

P_ACCT KPI_NODE

TIME 2011.Q1

MEASURES PERIODIC

- select the delivered Template Input Form “Trend by Account.XLTX” and thenpress “Refresh Selected Report”.- since you want to save your new input form to the server, first create anInput Schedules Folder called “BPC420-##” and then save your input form as“IF_TEST_SCRIPT_LOGIC”. Leave the input form open.

2. Navigate to your Administration Web Client for environment BPC420_## andcreate the first Logic Script for your “D_PLAN##” model.The intention is to introduce the “When” statement and do some simplecalculations for P_ACCT member “KPI5”. Create a first Include with thetechnical name “LOGIC_1” for your model and copy the following coding intothis include:

Figure 305: Logic Script - Example 1

You can find the TXT file, which includes the relevant source coding as follows:Start → My Documents → My Documents → BPC420 → BPC420-## → Logic→ Logic1.TXT. Having copied the coding, validate it and then save and closethe include. Leave the .txt file open.Then, refer to this include “LOGIC_1.LGF” in the “DEFAULT.LGF” includefor model “D_PLAN##”. Within the Default include, delete row 1 first and thenenter the necessary coding line. After that, validate and then save and close theinclude editor. Leave the list of includes open.

Continued on next page

408 © 2011 SAP AG. All rights reserved. 2011

Page 425: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

3. Now, let's have a look where the Logic Script file is stored. Navigate tothe backend system and use transaction “UJFS”. Navigate to your file“LOGIC_1.LGF” for environment “BPC420_##” and model “D_PLAN##”.Don't download your file, since we just wanted to see where it is stored. Returnto your screen after system logon.

4. Now, we want to check our coding with the help of the “Logic Script ABAPProgram Tester”. Use “program” “UJK_SCRIPT_LOGIC_TESTER” in yourenvironment and for your model to test if the coding is OK. Only “Validate” and“Execute (Simulate)” your coding, which you take from the “LOGIC_1.txt” file.Do not press “Execute”, otherwise the system runs the program and saves allcreated data in your underlying InfoProvider. When validation and simulation isdone, return to the backend system after system log on and also close the .txt file.

5. Now we want to test the calculation from the input form in your Excelenvironment. Enter 100 for KPI1 in 2011.JAN in your input form and then saveby going to Save Data → Save and Refresh Workbook Data. According to thebusiness logic, we should expect 100 * 2 = 200 for KPI5 in 2011.JAN. Have alook at the following screenshot to compare results:

Figure 306: Logic Script - Example 1 - Reporting Results

Hint: The best way to save your data and to refresh it in one step is touse the Save Data → Save and Refresh Workbook Data or the Save Data→ Save and Refresh Worksheet Data variant. If you only use the SaveWorkbook Data or Save Worksheet Data variant, you will have to do therefresh afterwards via Refresh → Refresh Selected Report.

Afterwards, input zero for KPI 1 and KPI5 and then select Save Data → Saveand Refresh Workbook Data again. Remain in your input form.

Hint: Environment BPC420_## and model D_PLAN## will also beused in the following logic script codings.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 409

Page 426: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

6. Now let us create a second logic called “LOGIC_2”, which will sum up thevalues for KPI1 and KPI2, then multiply the sum by 1.5 and write the result inKPI5. To reach this goal, copy the source coding from file “LOGIC_2.TXT” intoyour new include. Your coding should look like this:

Figure 307: Logic Script - Example 2

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_1.LGF toLOGIC_2.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 and 200for KPI2. Then, save your data and refresh it in one step. See the results of yourcalculation as given in the screenshot:

Figure 308: Logic Script - Example 2 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

Continued on next page

410 © 2011 SAP AG. All rights reserved. 2011

Page 427: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

7. Now, let's create a third logic called “LOGIC_3” which includes properties.The logic will add the values for all accounts with the SELECTION propertyvalue of B, then multiply the sum by 3 and book it to KPI5. To reach this goal,copy the source coding from file “LOGIC_3.TXT” into your new include. Youcoding should look as follows:

Figure 309: Logic Script - Example 3

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_2.LGF toLOGIC_3.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, 200 forKPI2, and 300 for KPI3. Then save your data and refresh it in one step. See theresults of your calculation as given in the screenshot:

Figure 310: Logic Script - Example 3 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

8. Create a fourth logic called “LOGIC_4”, which uses the “Expression” commandwith a local variable “%VALUE%”. The coding will sum the values for allaccounts with the SELECTION property value B. This sum is written into the

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 411

Page 428: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

local variable. Then, the sum is multiplied by 3 and booked to KPI5 To reachthis goal copy the source coding from file “LOGIC_4.TXT” into your newinclude. Your coding should look like this:

Figure 311: Logic Script - Example 4

Note: Expressions are used in more complex scenarios. %VALUE% is alocal variable and it is used to temporarily store results. Local variablescan be called multiple times in one file.

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_3.LGF toLOGIC_4.LGF. Validate first; then save and close your editor. Stay in the list ofincludes for your model D_PLAN##.Then navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3 and KPI4. Then, save your data and refresh it in one step. See the resultsof your calculation as given in the screenshot:

Figure 312: Logic Script - Example 4 - Reporting Results

Continued on next page

412 © 2011 SAP AG. All rights reserved. 2011

Page 429: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

9. Create a fifth logic called “LOGIC_5”, which uses the “Expression” commandto calculate ratios. The coding will sum the values for all accounts with theSELECTION property value B into the local variable and then divide the sumby the KPI1 value and book the result to KPI5. To reach this goal, copy thesource coding from file “LOGIC_5.TXT” into your new include. You codingshould look as follows:

Figure 313: Logic Script - Example 5

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_4.LGF toLOGIC_5.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then navigate to your Excel “EPM” input form and enter 200 for KPI1,KPI2,KPI3 and KPI4. Then, save your data and refresh it in one step. See theresults of your calculation as given in the screenshot:

Figure 314: Logic Script - Example 5 - Reporting Results

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 413

Page 430: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

10. Let's go back to LOGIC_2. That logic only performs calculations on datachanges. Let's prove that by first setting “*INCLUDE LOGIC_2.LGF” in yourDEFAULT.LGF logic. Save and Close afterwards. Then, move to your inputform and enter 100 for KPI1 and 100 for KPI2. Then save and refresh your plandata. After saving, enter 300 for KPI1 and do not change the KPI2 value. Again,save and refresh. Which value for KPI5 do you expect?______________________________________and which value did the system calculate?______________________________________For actual results compare the following screenshot:

Figure 315: Logic Script - Example 2 - Reporting Results for first anddelta saving

Set all values to 0 and then save and refresh your data.

Since the second result is wrong, we have to adapt our coding so that we will getcorrect results when delta values change.

Create a sixth logic called “LOGIC_6”, which uses the *XDIM_MEMBERSETcommand for a more robust processing. The coding is the same as in LOGIC_2,but this time *XDIM_MEMBERSET reads all data into memory whether it haschanged or not. Copy the source coding from file “LOGIC_6.TXT” into yournew include. Your coding should look like this:

Continued on next page

414 © 2011 SAP AG. All rights reserved. 2011

Page 431: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 316: Logic Script - Example 6

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_2.LGF toLOGIC_6.LGF. Validate first, then save and close your editor. Stay in the list ofincludes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and first enter 100 for KPI1 and100 for KPI2. Then, save and refresh your plan data. After saving enter 300 forKPI1 and don't change the KPI2 value. Again, save and refresh in one step. Seethe correct result of your second calculation as given in the screenshot:

Figure 317: Logic Script - Example 6 - Reporting Results for first anddelta saving

Set all values to zero and save and refresh again. Leave your input form open.Close your .txt file.

11. The next Logic script introduces the *FOR loop, which repeats the calculationfor each variable value of variable %KPI%.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 415

Page 432: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Create a seventh logic called “LOGIC_7”. Copy the source coding from file“LOGIC_7.TXT” into your new include. Your coding should look like this:

Figure 318: Logic Script - Example 7

Note: *IS in your upper coding cannot be accompanied by a variable!*IS * means that you operate on the entire selection having a startingvalue together with *XDIM_MEMBERSET P_ACCT=KPI1.The *REC command is always accompanied by a *WHEN statement.

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_6.LGF toLOGIC_7.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Also, have a look at the next screenshot, which shows how the system calculateswhen working with the *FOR loop:

Continued on next page

416 © 2011 SAP AG. All rights reserved. 2011

Page 433: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 319: Logic Script - Example 7 - “Script Logic ABAP Program Tester”- Validation View

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 butonly for 2011.JAN.Enter 200 for KPI1 in 2011.Feb, 300 for KPI2 in 2011.Feb, 400 for KPI3 in2011.Feb, 500 for KPI4 in 2011.Feb and 600 for KPI5 in 2011.Feb.Then, save your data and refresh it in one step. See the results of your calculationas given in the screenshot:

Figure 320: Logic Script - Example 7 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

12. In the next coding example, we want show how to read data into memory usingProperty selections. Since the *XDIM_MEMBERSET itself does not allow aproperty reference, we work with the XDIM_FILTER statement, which onlyreturns base members and thus filters the source data using Properties.The coding example does the following: All account members containing theproperty value “B” for the “Selection” property shall get the value 200 as fixvalue.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 417

Page 434: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Create an eighth logic called “LOGIC_8”. Copy the source coding from file“LOGIC_8.TXT” into your new include. You coding should look as follows:

Figure 321: Logic Script - Example 8

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_7.LGF toLOGIC_8.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3, KPI4 and KPI5 but only for 2011.JAN. Then, save your data and refresh itin one step. See the results of your calculation as given in the screenshot:

Figure 322: Logic Script - Example 8 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

Continued on next page

418 © 2011 SAP AG. All rights reserved. 2011

Page 435: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

13. The next coding example shows a further possibility to reference propertiesin the scope which is the *SELECT statement. This statement works with avariable that can be used anywhere in the coding. This allows more flexibilitycompared to the “*FILTER” statement.

With this logic, we enter values for all 5 KPIs in January and only for the KPIswith property value “B” in property “Selection” will be taken into account. First,the February values are calculated for each relevant KPI as a multiplicationby 1.1 from the January values. This is a revaluation. In a second step, theJanuary value of KPI1 and February value of each KPI are added. The resultis written into March for each KPI.To get the correct KPIs, we define how to find a list of IDs using the propertySELECTION with B. This list is found by the system using our *SELECTcoding line and is saved in a user-defined variable called %SELVAR%. In ourcase, we refer in the *FOR statement to this list of variables.

Create an ninth logic called “LOGIC_9”. Copy the source coding from file“LOGIC_9.TXT” into your new include. You coding should look like this:

Figure 323: Logic Script - Example 9

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 419

Page 436: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_8.LGF toLOGIC_9.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Have a look at the coding the system generates from the Script Logic ABAPProgram Tester perspective in the following screenshot:

Figure 324: “Script Logic ABAP Program Tester” - Validation View

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 in2011.JAN, 200 for KPI2 in 2011.JAN, 300 for KPI3 in 2011.JAN, 400 for KPI4in 2011.JAN and 500 for KPI1 in 2011.JAN. Then, save your data and refresh itin one step. See the results of your calculation as given in the screenshot:

Figure 325: Logic Script - Example 9 - Reporting Results

Continued on next page

420 © 2011 SAP AG. All rights reserved. 2011

Page 437: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

14. We now work with *SELECTCASE, which is an alternative to the IIF MDXstatements and expands as MDX IIF statements! IIF statements perform an 'ifthen else' operation. *SELECTCASE is a shorter statement compared to IIF butboth produce the same performance.

Hint: Concerning performance, the *WHEN/*ENDWHEN statementhas a better performance than *SELECTCASE or IIF.

Our goal now is to select accounts according to their Property “Selection”. If theProperty Selection is “B”, then a calculation for February will be done for therelevant accounts. If the Property Selection is 'C', then a calculation for Marchwill be done for the relevant accounts.

Create a tenth logic called “LOGIC_10”. Copy the source coding from file“LOGIC_10.TXT” into your new include. Your coding should look like:

Figure 326: Logic Script - Example 10

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_9.LGF toLOGIC_10.LGF. Validate first, then save and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 421

Page 438: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Then, navigate to your Excel “EPM” input form and enter 100 for all KPIs in2011.001 and in 2011.002. Then save your data and refresh it in one step. Seethe results of your calculation as given in the screenshot:

Figure 327: Logic Script - Example 10 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

15. With the help of the *ADD/*ENDADD command, which can only use oneformula (it must be an MDX formula), we now want to calculate a sum anddivide it by the value of KPI1. Working with *ADD has a better performancethan working with the appropriate MDX formula.

Create the next logic called “LOGIC_11”. Copy the source coding from file“LOGIC_11.TXT” into your new include. Your coding should look like this:

Figure 328: Logic Script - Example 11

Continued on next page

422 © 2011 SAP AG. All rights reserved. 2011

Page 439: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_10.LGF toLOGIC_11.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3 and KPI4 in 2011.001. Then save your data and refresh it in one step. Seethe results of your calculation as given in the screenshot:

Figure 329: Logic Script - Example 11 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

16. Now, we want to introduce the TMVL function. This optional parameter returnsa time value after taking into consideration an offset value from a given timeperiod. The format for this parameter is TMVL (offset, base_period). In ourexample, by using the offset in the TMVL formula, the coding adds the inputvalues for 2011.001 and 2011.002 together and writes the total to the database in2011.003. This will be done for KPI1 to KPI5 in parallel.

Create the next logic called “LOGIC_12”. Copy the source coding from file“LOGIC_12.TXT” into your new include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 423

Page 440: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 330: Logic Script - Example 12

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_11.LGF toLOGIC_12.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 toKPI5 in 2011.001 and 200 for KPI1 to KPI5 in 2011.002. Then, save your dataand refresh it in one step. See the results of your calculation as given in thescreenshot:

Figure 331: Logic Script - Example 12 - Reporting Results

Continued on next page

424 © 2011 SAP AG. All rights reserved. 2011

Page 441: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

17. In the following example, we also want to work with the TMVL function andshow that it can be used in diverse positions of your coding. The scenario isabout copying and revaluating data from January to March of 2011, wherebythe target period is calculated by the TMVL offset.Create the next logic called “LOGIC_13”. Copy the source coding from file“LOGIC_13.TXT” into your new include. You coding should look as follows:

Figure 332: Logic Script - Example 13

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_12.LGF toLOGIC_13.LGF. Validate first, then save and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 to KPI5in 2011.001. Then, save your data and refresh it in one step. See the results ofyour calculation as given in the screenshot:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 425

Page 442: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 333: Logic Script - Example 13 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

18. Finally, we want to include variables into the coding. %DIMNAME_SET% isa variable, which inherits the dimension member from the current view. Thisvariable can be included not only in the *X_DIM MEMBERSET but anywherein the coding. SET is a special logic keyword here!Our goal is to set the TIME selection via a dropdown box. If it's a node member,we define in the input form how to spread the node into leaf members. As aconsequence of the %TIME_SET% variable, these leaves are automaticallytaken for a calculation. If we change the TIME selection, the next calculationwill then automatically refer to the new time selection.

Hint: A further Logic keyword “DIM” exists, which returns thetechnical name of all dimensions which are not user defined ones.%CATEGORY_DIM% as variable with logical keyword DIM will returnVERSION if the technical name of the C dimension was VERSION.

Create the last logic called “LOGIC_14”. Copy the source coding from file“LOGIC_14.TXT” into your new include. Your coding should look like this:

Continued on next page

426 © 2011 SAP AG. All rights reserved. 2011

Page 443: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 334: Logic Script - Example 14

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_13.LGF toLOGIC_14.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and change the selection forTIME to 2011.Q2. Then, select “Refresh Selected Report”. Enter 100 for KPI1to KPI5 in 2011.004. Then save your data and refresh it in one step.

After that, change your TIME selection back to 2011.Q1. “Refresh SelectedReport” and enter 100 for KPI1 to KPI5 in 2011.001. Then save your dataand refresh it in one step. See the results of both calculations as given in thescreenshot:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 427

Page 444: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 335: Logic Script - Example 14 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

428 © 2011 SAP AG. All rights reserved. 2011

Page 445: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Solution 6: Create a Basic Online Executionof Logic ScriptsTask: Test Logic Script Commands and practice OnlineExecutionTest the most important script logic commands.

Hint: For the exercise, the backend system, the Administration Web Clientfor environment BPC420_##, and the Excel “EPM” tab should be open.Make sure that the connection for environment “BPC420_##” with model“D_PLAN##” is set. It was created in a former exercise.

1. Since you want to test logic script calculations online, you first require an inputform in which you could fill in some test data and then see the effects of yourlogic script examples. Therefore, for your relevant connection, on the “EPM”tab flag “Display EPM Context Bar” and “Display EPM Pane” . Then click the“Show Pane&Context” button and set the following selections:

Dimension Selection

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

PRODUCT2 DOGDRYPUPPY

P_ACCT KPI_NODE

TIME 2011.Q1

MEASURES PERIODIC

- select the delivered Template Input Form “Trend by Account.XLTX” and thenpress “Refresh Selected Report”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 429

Page 446: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

- since you want to save your new input form to the server, first create anInput Schedules Folder called “BPC420-##” and then save your input form as“IF_TEST_SCRIPT_LOGIC”. Leave the input form open.

a) ON the Excel “EPM” tab, having switched to the connection referred toin the above hint, navigate to flag the two parameters mentioned in theexercise: Options → User Options → Others. Flag “Display EPM ContextBar” and “Display EPM Pane”. Both flags can be found in the lower rightcorner of the section “Context Bar and Pane”. Then click “OK”. Thenclick “Show Pane&Context” button, which makes you see the dropdownboxes for a member selection.Set the selections of the model's dimensions as follows (described here forCATEGORY only):Click the black triangle at the right hand side of the CATEGORY dropdownbox and choose “Select other Members...”. The “EPM - Member Selector”popup appears. Here, first click the “Select Member Names to display”button and click “ID”. Then, in the “Dimension Members” List, click“FLASH” and then click “OK”. Do the same for the other dimensionsin the table.To use a preconfigured input form, navigate as follows: Open → OpenServer Root Folder... → Company → InputSchedules → Templates andthen click the template mentioned in the exercise. Click “Open”.The next step is necessary to make the template adapt to the selectionsset: Refresh → Refresh Selected Report. Save the input form as follows:Save → Save to Server Root Folder → Company → Input Schedules.Click “Input Schedules” and then right-click and select “Create Folder”.After that, fill in the name for the new folder as given in the exercise andthen click “OK”. After that, click your new folder and, in the field “FileName:”, fill in the name for the input form given in the upper exercise.Leave the input form open.

2. Navigate to your Administration Web Client for environment BPC420_## andcreate the first Logic Script for your “D_PLAN##” model.The intention is to introduce the “When” statement and do some simplecalculations for P_ACCT member “KPI5”. Create a first Include with thetechnical name “LOGIC_1” for your model and copy the following coding intothis include:

Continued on next page

430 © 2011 SAP AG. All rights reserved. 2011

Page 447: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 336: Logic Script - Example 1

You can find the TXT file, which includes the relevant source coding as follows:Start → My Documents → My Documents → BPC420 → BPC420-## → Logic→ Logic1.TXT. Having copied the coding, validate it and then save and closethe include. Leave the .txt file open.Then, refer to this include “LOGIC_1.LGF” in the “DEFAULT.LGF” includefor model “D_PLAN##”. Within the Default include, delete row 1 first and thenenter the necessary coding line. After that, validate and then save and close theinclude editor. Leave the list of includes open.

a) Within your AdministrationWeb client, navigate as follows: AdministrationTab → Rules → Logic Scripts. In the list of models, mark the followingline: “Scripts for: D_PLAN##” and select “Open”. Then click “New” anda popup “Create a New Logic Script” appears. Here, enter “LOGIC_1”and then click “CREATE”.In parallel, navigate to the “LOGIC_1.TXT” file as described in theexercise. Double-click the file to open it. Mark all lines with your cursorand then press “Ctrl ” and “C”. Then navigate to your open include editor.Here, in line 1, press “Ctrl” and “V”. Then, click “Validate” and then“Save” and “Close”. Leave the .txt file open.On the next screen, you can see the “DEFAULT.LGF” include. Click it andthen click “Edit”. Then, enter the following coding line in line 1:“*INCLUDE LOGIC_1.LGF”. Then click “Validate” and then “Save”and “Close”. Leave the screen open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 431

Page 448: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

3. Now, let's have a look where the Logic Script file is stored. Navigate tothe backend system and use transaction “UJFS”. Navigate to your file“LOGIC_1.LGF” for environment “BPC420_##” and model “D_PLAN##”.Don't download your file, since we just wanted to see where it is stored. Returnto your screen after system logon.

a) You are in your backend system and click in the command field. Here,enter UJFS and then press “Enter” on your keyboard. Navigate to theinclude file as given in the screenshot below. Only check if your includefile is stored at this “hierarchy spot”.

Figure 337: Command Field and Transaction UJFS

Then, click the yellow “LOGOFF” button.

4. Now, we want to check our coding with the help of the “Logic Script ABAPProgram Tester”. Use “program” “UJK_SCRIPT_LOGIC_TESTER” in yourenvironment and for your model to test if the coding is OK. Only “Validate” and“Execute (Simulate)” your coding, which you take from the “LOGIC_1.txt” file.

Continued on next page

432 © 2011 SAP AG. All rights reserved. 2011

Page 449: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Do not press “Execute”, otherwise the system runs the program and saves allcreated data in your underlying InfoProvider. When validation and simulation isdone, return to the backend system after system log on and also close the .txt file.

a) Within your backend system, first enter transaction SE38 in the commandfield and then click “Enter” on your keyboard. On the next screen, enterthe program name given in the exercise into the field “Program” andthen click at “Execute”. On the next screen, select “BPC420_##” in the“Environment” dropdown box and “D_PLAN##” in the “Model ID”dropdown box. Leave the “Data Region” section empty and, in the lowerleft white section, copy the coding from your “LOGIC_1.TXT” file bymarking all lines and then pressing “Ctrl” and “C” and then “Ctrl” and“V” in the white section on the lower left. Afterwards, close the .txt fileby clicking File → Exit. Within your test program, click “Validate”, seeresults in the white section on the right hand side and then press “Execute(Simulate)” to see the results on the right hand side section. Finally, click“BACK” twice.

5. Now we want to test the calculation from the input form in your Excelenvironment. Enter 100 for KPI1 in 2011.JAN in your input form and then saveby going to Save Data → Save and Refresh Workbook Data. According to thebusiness logic, we should expect 100 * 2 = 200 for KPI5 in 2011.JAN. Have alook at the following screenshot to compare results:

Figure 338: Logic Script - Example 1 - Reporting Results

Hint: The best way to save your data and to refresh it in one step is touse the Save Data → Save and Refresh Workbook Data or the Save Data→ Save and Refresh Worksheet Data variant. If you only use the SaveWorkbook Data or Save Worksheet Data variant, you will have to do therefresh afterwards via Refresh → Refresh Selected Report.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 433

Page 450: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Afterwards, input zero for KPI 1 and KPI5 and then select Save Data → Saveand Refresh Workbook Data again. Remain in your input form.

Hint: Environment BPC420_## and model D_PLAN## will also beused in the following logic script codings.

a) Navigate to your Excel input form and enter 100 for KPI1 in 2011.JAN.Then click Save Data → Save and Refresh Workbook Data. Havingchecked the results and compared to the upper screenshot result, set KPI1to 0. Then select Save Data → Save and Refresh Workbook Data. Leavethe input form open.

6. Now let us create a second logic called “LOGIC_2”, which will sum up thevalues for KPI1 and KPI2, then multiply the sum by 1.5 and write the result inKPI5. To reach this goal, copy the source coding from file “LOGIC_2.TXT” intoyour new include. Your coding should look like this:

Figure 339: Logic Script - Example 2

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_1.LGF toLOGIC_2.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 and 200for KPI2. Then, save your data and refresh it in one step. See the results of yourcalculation as given in the screenshot:

Continued on next page

434 © 2011 SAP AG. All rights reserved. 2011

Page 451: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 340: Logic Script - Example 2 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and in the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_2”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic2.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and press “Ctrl” and “V”. Then press “Validate” and then “Save”.Then, click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click “Edit”. In line 1, you should already find the following codingline: “*INCLUDE LOGIC_1.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_2.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file.Navigate to your Excel input form and enter 100 for KPI1 and 200 forKPI2. Then click Save Data → Save and Refresh Workbook Data. Havingchecked the results, set KPI1 to 0 and KPI2 to 0. Then, select Save Data →Save and Refresh Workbook Data. Leave the input form open.

7. Now, let's create a third logic called “LOGIC_3” which includes properties.The logic will add the values for all accounts with the SELECTION propertyvalue of B, then multiply the sum by 3 and book it to KPI5. To reach this goal,copy the source coding from file “LOGIC_3.TXT” into your new include. Youcoding should look as follows:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 435

Page 452: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 341: Logic Script - Example 3

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_2.LGF toLOGIC_3.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, 200 forKPI2, and 300 for KPI3. Then save your data and refresh it in one step. See theresults of your calculation as given in the screenshot:

Figure 342: Logic Script - Example 3 - Reporting Results

Continued on next page

436 © 2011 SAP AG. All rights reserved. 2011

Page 453: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and in the upcoming pop up “Create a New Logic Script” enter“LOGIC_3”. Click “Create”. In the editor, click in line 1 and, in parallel,open your source file. You can find the file as follows: Start → MyDocuments → My Documents → BPC420 → BPC420-## → Logic →Logic3.TXT. Click the file and then select “Open”. Mark your coding andthen select “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and select “Ctrl” and “V”. Then press “Validate” and then “Save”.Then click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click “Edit”. In line 1, you should already find the following codingline: “*INCLUDE LOGIC_2.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_3.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file.Navigate to your Excel input form and enter 100 for KPI1, 200 for KPI2,and 300 for KPI2. Then, go to Save Data → Save and Refresh WorkbookData. Having checked the results, set KPI1 to 0, KPI2 to 0 and KPI3 to0. Then select Save Data → Save and Refresh Workbook Data. Leavethe input form open.

8. Create a fourth logic called “LOGIC_4”, which uses the “Expression” commandwith a local variable “%VALUE%”. The coding will sum the values for allaccounts with the SELECTION property value B. This sum is written into thelocal variable. Then, the sum is multiplied by 3 and booked to KPI5 To reachthis goal copy the source coding from file “LOGIC_4.TXT” into your newinclude. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 437

Page 454: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 343: Logic Script - Example 4

Note: Expressions are used in more complex scenarios. %VALUE% is alocal variable and it is used to temporarily store results. Local variablescan be called multiple times in one file.

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_3.LGF toLOGIC_4.LGF. Validate first; then save and close your editor. Stay in the list ofincludes for your model D_PLAN##.Then navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3 and KPI4. Then, save your data and refresh it in one step. See the resultsof your calculation as given in the screenshot:

Figure 344: Logic Script - Example 4 - Reporting Results

Continued on next page

438 © 2011 SAP AG. All rights reserved. 2011

Page 455: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_4”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic4.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and press “Ctrl” and “V”. Then press “Validate” and then “Save”.Then click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click “Edit”. In line 1, you should already find the following codingline: “*INCLUDE LOGIC_3.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_4.LGF”. Having done so, click “Validate”, then“Save” and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking the “X” in the upper rightcorner of this file.Navigate to your Excel input form and enter 100 for KPI1, KPI2, KPI3 andKPI4. Then, click Save Data → Save and Refresh Workbook Data. Havingchecked the results, set KPI1, KPI2, KPI3 and KPI4 to 0. Then, select SaveData → Save and Refresh Workbook Data. Leave the input form open.

9. Create a fifth logic called “LOGIC_5”, which uses the “Expression” commandto calculate ratios. The coding will sum the values for all accounts with theSELECTION property value B into the local variable and then divide the sumby the KPI1 value and book the result to KPI5. To reach this goal, copy thesource coding from file “LOGIC_5.TXT” into your new include. You codingshould look as follows:

Figure 345: Logic Script - Example 5

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 439

Page 456: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_4.LGF toLOGIC_5.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.Then navigate to your Excel “EPM” input form and enter 200 for KPI1,KPI2,KPI3 and KPI4. Then, save your data and refresh it in one step. See theresults of your calculation as given in the screenshot:

Figure 346: Logic Script - Example 5 - Reporting Results

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and in the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_5”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic5.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and press“Ctrl” and “V”. Then press “Validate” and then “Save”.Then click “Close”. In the list of includes, click “DEFAULT.LGF” andthen “Edit”. In line 1, you should already find the following coding line:“*INCLUDE LOGIC_4.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_5.LGF”. Having done so, click “Validate”, then at“Save” and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking the “X” in the upper rightcorner of this file.Navigate to your Excel input form and enter 200 for KPI1, KPI2, KPI3 andKPI4. Then click Save Data → Save and Refresh Workbook Data. Havingchecked the results, set KPI1, KPI2, KPI3 and KPI4 to 0. Then select SaveData → Save and Refresh Workbook Data. Leave the input form open.

Continued on next page

440 © 2011 SAP AG. All rights reserved. 2011

Page 457: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

10. Let's go back to LOGIC_2. That logic only performs calculations on datachanges. Let's prove that by first setting “*INCLUDE LOGIC_2.LGF” in yourDEFAULT.LGF logic. Save and Close afterwards. Then, move to your inputform and enter 100 for KPI1 and 100 for KPI2. Then save and refresh your plandata. After saving, enter 300 for KPI1 and do not change the KPI2 value. Again,save and refresh. Which value for KPI5 do you expect?______________________________________and which value did the system calculate?______________________________________For actual results compare the following screenshot:

Figure 347: Logic Script - Example 2 - Reporting Results for first anddelta saving

Set all values to 0 and then save and refresh your data.

Since the second result is wrong, we have to adapt our coding so that we will getcorrect results when delta values change.

Create a sixth logic called “LOGIC_6”, which uses the *XDIM_MEMBERSETcommand for a more robust processing. The coding is the same as in LOGIC_2,but this time *XDIM_MEMBERSET reads all data into memory whether it haschanged or not. Copy the source coding from file “LOGIC_6.TXT” into yournew include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 441

Page 458: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 348: Logic Script - Example 6

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_2.LGF toLOGIC_6.LGF. Validate first, then save and close your editor. Stay in the list ofincludes for your model D_PLAN##.Then, navigate to your Excel “EPM” input form and first enter 100 for KPI1 and100 for KPI2. Then, save and refresh your plan data. After saving enter 300 forKPI1 and don't change the KPI2 value. Again, save and refresh in one step. Seethe correct result of your second calculation as given in the screenshot:

Figure 349: Logic Script - Example 6 - Reporting Results for first anddelta saving

Continued on next page

442 © 2011 SAP AG. All rights reserved. 2011

Page 459: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form open.Close your .txt file.

a) In the Administration Web Client, click “DEFAULT.LGF” and then “Edit”.Change the coding line as follows: “*INCLUDE LOGIC_2.LGF”. Press“Save” and then “Close”.

In Excel, first enter 100 for KPI1 and 100 for KPI2. Then select Save Data→ Save and Refresh Workbook Data. You get 300 for KPI5 as result. Thenenter 300 for KPI1 and select Save Data → Save and Refresh WorkbookData. You get 450 as result. “You had expected 600”. Set all values to 0and then select Save Data → Save and Refresh Workbook Data.You return to the Administration Web Client and with the list of includesopen, click “New” and, in the subsequent pop-up “Create a New LogicScript” enter “LOGIC_6”. Then, click “Create”. In the editor, click in line1 and, in parallel, open your source file. You can find the file as follows:Start → My Documents → My Documents → BPC420 → BPC420-##→ Logic → Logic6.TXT. Click the file and then select “Open”. Markyour coding and then select “Ctrl” and “C”. Then navigate back to youreditor and click in line 1 and select “Ctrl” and “V”. Then press “Validate”and then “Save”. Then click “Close”. In the list of includes, click“DEFAULT.LGF” and then click “Edit”. In line 1, you should already findthe following coding line: “*INCLUDE LOGIC_2.LGF”. Exchange thisline with the following: “*INCLUDE LOGIC_6.LGF”. Having done so,click “Validate”, then “Save” and then “Close”. You are now back in thelist of includes. Leave this editor open.Navigate to your Excel input form and enter 100 for KPI1 and KPI2. Thenclick Save Data → Save and Refresh Workbook Data. Having checked theresult of 300 for KIP5, set KPI1 to 300. Then select Save Data → Saveand Refresh Workbook Data. Now, you will receive 600 as a result forKPI5. Set all values to 0 and then select Save Data → Save and RefreshWorkbook Data. Leave the input form open. Close your .txt file by clickingat the “X” in the upper right corner of this file.

11. The next Logic script introduces the *FOR loop, which repeats the calculationfor each variable value of variable %KPI%.

Create a seventh logic called “LOGIC_7”. Copy the source coding from file“LOGIC_7.TXT” into your new include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 443

Page 460: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 350: Logic Script - Example 7

Note: *IS in your upper coding cannot be accompanied by a variable!*IS * means that you operate on the entire selection having a startingvalue together with *XDIM_MEMBERSET P_ACCT=KPI1.The *REC command is always accompanied by a *WHEN statement.

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_6.LGF toLOGIC_7.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Also, have a look at the next screenshot, which shows how the system calculateswhen working with the *FOR loop:

Continued on next page

444 © 2011 SAP AG. All rights reserved. 2011

Page 461: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 351: Logic Script - Example 7 - “Script Logic ABAP Program Tester”- Validation View

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 butonly for 2011.JAN.Enter 200 for KPI1 in 2011.Feb, 300 for KPI2 in 2011.Feb, 400 for KPI3 in2011.Feb, 500 for KPI4 in 2011.Feb and 600 for KPI5 in 2011.Feb.Then, save your data and refresh it in one step. See the results of your calculationas given in the screenshot:

Figure 352: Logic Script - Example 7 - Reporting Results

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 445

Page 462: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and, in the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_7”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic7.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then, navigate back to your editor and click inline 1 and press “Ctrl” and “V”. Then press “Validate” and then “Save”.Then click “Close”. In the list of includes click “DEFAULT.LGF” and thenclick “Edit”. In line 1, you should already find the following coding line:“*INCLUDE LOGIC_6.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_7.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upper rightcorner of this file. Also, have a look at the next screenshot which showshow the system calculates when working with the *FOR loop.Navigate to your Excel input form and enter 200 for KPI1 in 2011.Feb, 300for KPI2 in 2011.Feb, 400 for KPI3 in 2011.Feb, 500 for KPI4 in 2011.Feband 600 for KPI5 in 2011.Feb. Then, click Save Data → Save and RefreshWorkbook Data. Having checked the results, set KPI1, KPI2, KPI3 andKPI4 to 0 for 2011.JAN, 2011.Feb and 2011.MAR. Then, select Save Data→ Save and Refresh Workbook Data. Leave the input form open.

12. In the next coding example, we want show how to read data into memory usingProperty selections. Since the *XDIM_MEMBERSET itself does not allow aproperty reference, we work with the XDIM_FILTER statement, which onlyreturns base members and thus filters the source data using Properties.The coding example does the following: All account members containing theproperty value “B” for the “Selection” property shall get the value 200 as fixvalue.

Create an eighth logic called “LOGIC_8”. Copy the source coding from file“LOGIC_8.TXT” into your new include. You coding should look as follows:

Continued on next page

446 © 2011 SAP AG. All rights reserved. 2011

Page 463: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 353: Logic Script - Example 8

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_7.LGF toLOGIC_8.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3, KPI4 and KPI5 but only for 2011.JAN. Then, save your data and refresh itin one step. See the results of your calculation as given in the screenshot:

Figure 354: Logic Script - Example 8 - Reporting Results

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 447

Page 464: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and, in the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_8”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic8.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and select “Ctrl” and “V”. Then press “Validate” and then “Save”.Then, click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click “Edit”. In line 1, you should already find the following codingline: “*INCLUDE LOGIC_7.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_8.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file.Navigate to your Excel input form and enter 100 for KPI1, KPI2, KPI3,KPI4 and KPI5 but only for 2011.JAN. Then, click Save Data → Save andRefresh Workbook Data. Check the results and then set 0 for all KPIs.Then, again select Save Data → Save and Refresh Workbook Data. Leavethe input form open.

13. The next coding example shows a further possibility to reference propertiesin the scope which is the *SELECT statement. This statement works with avariable that can be used anywhere in the coding. This allows more flexibilitycompared to the “*FILTER” statement.

With this logic, we enter values for all 5 KPIs in January and only for the KPIswith property value “B” in property “Selection” will be taken into account. First,the February values are calculated for each relevant KPI as a multiplicationby 1.1 from the January values. This is a revaluation. In a second step, theJanuary value of KPI1 and February value of each KPI are added. The resultis written into March for each KPI.To get the correct KPIs, we define how to find a list of IDs using the propertySELECTION with B. This list is found by the system using our *SELECTcoding line and is saved in a user-defined variable called %SELVAR%. In ourcase, we refer in the *FOR statement to this list of variables.

Create an ninth logic called “LOGIC_9”. Copy the source coding from file“LOGIC_9.TXT” into your new include. You coding should look like this:

Continued on next page

448 © 2011 SAP AG. All rights reserved. 2011

Page 465: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 355: Logic Script - Example 9

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_8.LGF toLOGIC_9.LGF. Validate first, then save and finally close your editor. Stay in thelist of includes for your model D_PLAN##.

Have a look at the coding the system generates from the Script Logic ABAPProgram Tester perspective in the following screenshot:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 449

Page 466: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 356: “Script Logic ABAP Program Tester” - Validation View

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 in2011.JAN, 200 for KPI2 in 2011.JAN, 300 for KPI3 in 2011.JAN, 400 for KPI4in 2011.JAN and 500 for KPI1 in 2011.JAN. Then, save your data and refresh itin one step. See the results of your calculation as given in the screenshot:

Figure 357: Logic Script - Example 9 - Reporting Results

Continued on next page

450 © 2011 SAP AG. All rights reserved. 2011

Page 467: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_9”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic9.TXT. Click the file and then select “Open”. Mark your coding andthen select “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and select “Ctrl” and “V”. Then press “Validate” and then “Save”.Then, click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click at “Edit” . In line 1 you should already find the following codingline: “*INCLUDE LOGIC_8.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_9.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file. To have a look at the coding the system generatesfrom the Script Logic ABAP Program Tester perspective, have a look atthe screenshot.Navigate to your Excel input form and enter 100 for all KPIs in 2011.JAN.Then click Save Data → Save and Refresh Workbook Data. Check theresults and then set 0 for all KPIs. Then select Save Data → Save andRefresh Workbook Data. Leave the input form open.

14. We now work with *SELECTCASE, which is an alternative to the IIF MDXstatements and expands as MDX IIF statements! IIF statements perform an 'ifthen else' operation. *SELECTCASE is a shorter statement compared to IIF butboth produce the same performance.

Hint: Concerning performance, the *WHEN/*ENDWHEN statementhas a better performance than *SELECTCASE or IIF.

Our goal now is to select accounts according to their Property “Selection”. If theProperty Selection is “B”, then a calculation for February will be done for therelevant accounts. If the Property Selection is 'C', then a calculation for Marchwill be done for the relevant accounts.

Create a tenth logic called “LOGIC_10”. Copy the source coding from file“LOGIC_10.TXT” into your new include. Your coding should look like:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 451

Page 468: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 358: Logic Script - Example 10

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_9.LGF toLOGIC_10.LGF. Validate first, then save and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for all KPIs in2011.001 and in 2011.002. Then save your data and refresh it in one step. Seethe results of your calculation as given in the screenshot:

Figure 359: Logic Script - Example 10 - Reporting Results

Continued on next page

452 © 2011 SAP AG. All rights reserved. 2011

Page 469: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New” and, in the subsequent “Create a New Logic Script” pop-up, enter“LOGIC_10”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic10.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor and click inline 1 and press “Ctrl” and “V”. Then press “Validate” and then “Save”.Then click “Close”. In the list of includes, click “DEFAULT.LGF” andthen click “Edit”. In line 1, you should already find the following codingline: “*INCLUDE LOGIC_9.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_10.LGF”. Having done so, click “Validate”, then“Save”, and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file.Navigate to your Excel input form and enter 100 for all KPIs in 2011.001and in 2011.002. Then, click Save Data → Save and Refresh WorkbookData. Check the results and then set 0 for all KPIs. Then select Save Data→ Save and Refresh Workbook Data. Leave the input form open.

15. With the help of the *ADD/*ENDADD command, which can only use oneformula (it must be an MDX formula), we now want to calculate a sum anddivide it by the value of KPI1. Working with *ADD has a better performancethan working with the appropriate MDX formula.

Create the next logic called “LOGIC_11”. Copy the source coding from file“LOGIC_11.TXT” into your new include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 453

Page 470: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 360: Logic Script - Example 11

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_10.LGF toLOGIC_11.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1, KPI2,KPI3 and KPI4 in 2011.001. Then save your data and refresh it in one step. Seethe results of your calculation as given in the screenshot:

Figure 361: Logic Script - Example 11 - Reporting Results

Continued on next page

454 © 2011 SAP AG. All rights reserved. 2011

Page 471: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_11”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic11.TXT. Click at the file and then select “Open”. Mark your codingand then press “Ctrl” and “C”. Then navigate back to your editor and clickin line 1 and select “Ctrl” and “V”. Then press “Validate” and then “Save”.Then, click “Close”. In the list of includes, click “DEFAULT.LGF”and then click “Edit”. In line 1, you should already find the followingcoding line: “*INCLUDE LOGIC_10.LGF”. Exchange this line withthe following: “*INCLUDE LOGIC_11.LGF”. Having done so, click“Validate”, then “Save”, and then “Close”. You are now back in the list ofincludes. Leave this editor open. Close your .txt file by clicking at the “X”in the upper right corner of this file.Navigate to your Excel input form and enter 100 for KPI1, KPI2, KPI3 andKPI4 in 2011.001. Then, click Save Data → Save and Refresh WorkbookData. Check the results and then set 0 for all KPIs. Then select Save Data→ Save and Refresh Workbook Data. Leave the input form open.

16. Now, we want to introduce the TMVL function. This optional parameter returnsa time value after taking into consideration an offset value from a given timeperiod. The format for this parameter is TMVL (offset, base_period). In ourexample, by using the offset in the TMVL formula, the coding adds the inputvalues for 2011.001 and 2011.002 together and writes the total to the database in2011.003. This will be done for KPI1 to KPI5 in parallel.

Create the next logic called “LOGIC_12”. Copy the source coding from file“LOGIC_12.TXT” into your new include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 455

Page 472: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 362: Logic Script - Example 12

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_11.LGF toLOGIC_12.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 toKPI5 in 2011.001 and 200 for KPI1 to KPI5 in 2011.002. Then, save your dataand refresh it in one step. See the results of your calculation as given in thescreenshot:

Figure 363: Logic Script - Example 12 - Reporting Results

Continued on next page

456 © 2011 SAP AG. All rights reserved. 2011

Page 473: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_12”. Then click “Create”. In the editor, click in line 1 and inparallel open your source file. You can find the file as follows: Start → MyDocuments → My Documents → BPC420 → BPC420-## → Logic →Logic12.TXT. Click at the file and then select “Open”. Mark your codingand then select “Ctrl” and “C”. Then navigate back to your editor andclick in line 1 and select “Ctrl” and “V”. Then press “Validate” and then“Save”. Then click “Close”. In the list of includes, click “DEFAULT.LGF”and then click “Edit”. In line 1, you should already find the followingcoding line: “*INCLUDE LOGIC_11.LGF”. Exchange this line withthe following: “*INCLUDE LOGIC_12.LGF”. Having done so, click“Validate”, then “Save”, and then “Close”. You are now back in the list ofincludes. Leave this editor open. Close your .txt file by clicking at the “X”in the upper right corner of this file.Navigate to your Excel input form and enter 100 for KPI1 to KPI5 in2011.001 and 200 for KPI1 to KPI5 in 2011.002. Then click Save Data →Save and Refresh Workbook Data. Check the results and then set 0 for allKPIs. Then, select Save Data → Save and Refresh Workbook Data. Leavethe input form open.

17. In the following example, we also want to work with the TMVL function andshow that it can be used in diverse positions of your coding. The scenario isabout copying and revaluating data from January to March of 2011, wherebythe target period is calculated by the TMVL offset.Create the next logic called “LOGIC_13”. Copy the source coding from file“LOGIC_13.TXT” into your new include. You coding should look as follows:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 457

Page 474: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 364: Logic Script - Example 13

Validate and Save your coding. Then, close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_12.LGF toLOGIC_13.LGF. Validate first, then save and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and enter 100 for KPI1 to KPI5in 2011.001. Then, save your data and refresh it in one step. See the results ofyour calculation as given in the screenshot:

Figure 365: Logic Script - Example 13 - Reporting Results

Continued on next page

458 © 2011 SAP AG. All rights reserved. 2011

Page 475: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_13”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic13.TXT. Click the file and then select “Open”. Mark your codingand then select “Ctrl” and “C”. Then navigate back to your editor andclick in line 1 and select “Ctrl” and “V”. Then press “Validate” and then“Save”. Then click “Close”. In the list of includes, click “DEFAULT.LGF”and then click “Edit”. In line 1, you should already find the followingcoding line: “*INCLUDE LOGIC_12.LGF”. Exchange this line withthe following: “*INCLUDE LOGIC_13.LGF”. Having done so, click at“Validate”, then “Save”, and then “Close”. You are now back in the list ofincludes. Leave this editor open. Close your .txt file by clicking at the “X”in the upper right corner of this file.Navigate to your Excel input form and enter 100 for KPI1 to KPI5 in2011.001. Then, click Save Data → Save and Refresh Workbook Data.Check the results and then set 0 for all KPIs. Then select Save Data →Save and Refresh Workbook Data. Leave the input form open.

18. Finally, we want to include variables into the coding. %DIMNAME_SET% isa variable, which inherits the dimension member from the current view. Thisvariable can be included not only in the *X_DIM MEMBERSET but anywherein the coding. SET is a special logic keyword here!Our goal is to set the TIME selection via a dropdown box. If it's a node member,we define in the input form how to spread the node into leaf members. As aconsequence of the %TIME_SET% variable, these leaves are automaticallytaken for a calculation. If we change the TIME selection, the next calculationwill then automatically refer to the new time selection.

Hint: A further Logic keyword “DIM” exists, which returns thetechnical name of all dimensions which are not user defined ones.%CATEGORY_DIM% as variable with logical keyword DIM will returnVERSION if the technical name of the C dimension was VERSION.

Create the last logic called “LOGIC_14”. Copy the source coding from file“LOGIC_14.TXT” into your new include. Your coding should look like this:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 459

Page 476: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 366: Logic Script - Example 14

Validate and Save your coding. Then close the editor. Navigate to yourDefault.LGF include and switch the reference from LOGIC_13.LGF toLOGIC_14.LGF. Validate first, then save, and finally close your editor. Stay inthe list of includes for your model D_PLAN##.

Then, navigate to your Excel “EPM” input form and change the selection forTIME to 2011.Q2. Then, select “Refresh Selected Report”. Enter 100 for KPI1to KPI5 in 2011.004. Then save your data and refresh it in one step.

After that, change your TIME selection back to 2011.Q1. “Refresh SelectedReport” and enter 100 for KPI1 to KPI5 in 2011.001. Then save your dataand refresh it in one step. See the results of both calculations as given in thescreenshot:

Continued on next page

460 © 2011 SAP AG. All rights reserved. 2011

Page 477: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Figure 367: Logic Script - Example 14 - Reporting Results

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 461

Page 478: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Set all values to zero and save and refresh again. Leave your input form openand close your .txt file.

a) In the Administration Web Client, with the list of includes open, click“New”. In the subsequent pop-up, “Create a New Logic Script”, enter“LOGIC_14”. Then click “Create”. In the editor, click in line 1 and, inparallel, open your source file. You can find the file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic →Logic14.TXT. Click the file and then select “Open”. Mark your coding andthen press “Ctrl” and “C”. Then navigate back to your editor, click in line1, and press “Ctrl” and “V”. Then press “Validate” and then “Save”. Thenclick “Close”. In the list of includes, click “DEFAULT.LGF” and thenclick “Edit”. In line 1, you should already find the following coding line:“*INCLUDE LOGIC_13.LGF”. Exchange this line with the following:“*INCLUDE LOGIC_14.LGF”. Having done so, click “Validate”, then“Save” and then “Close”. You are now back in the list of includes. Leavethis editor open. Close your .txt file by clicking at the “X” in the upperright corner of this file.Navigate to your Excel input form. Here, navigate to your dropdownbox for TIME, click the black triangle at the right hand side and thenchoose “Select Other Members...”. Click 2011.Q2 an then “OK”. Thenclick Refresh → Refresh Selected Report. Enter 100 for KPI1 to KPI5 in2011.004. Then click Save Data → Save and Refresh Workbook Data.Navigate to your dropdown box for TIME. Click the black triangle atthe right hand side and then choose “Select Other Members...”. Click at2011.Q1, then click at “OK”. Then click Refresh → Refresh SelectedReport. Then enter 100 for KPI1 to KPI5 in 2011.001. Then click SaveData → Save and Refresh Workbook Data. Check the results and then set0 for all KPIs. Then, select Save Data → Save and Refresh WorkbookData. Leave the input form open.

462 © 2011 SAP AG. All rights reserved. 2011

Page 479: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Basic Logic Scripts and Online Execution

Lesson Summary

You should now be able to:• Describe the concept of Logic Scripts• Identify Logic Script Commands• Recognize Golden Rule for Logic Scripts

2011 © 2011 SAP AG. All rights reserved. 463

Page 480: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Lesson: Creating Logic Scripts and Central Execution

Lesson Overview

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Describe the central execution of Logic Scripts• Define how to adapt Packages for Central Execution• Explain how to execute a Logic Script from a Button• Illustrate how to create a prompt for Variable Values

Business ExampleYou use Data Manager Packages when you want to execute Logic Scripts centrally.Features like Buttons with Logic and Prompting, as well as configuring the packagemask, are of interested for you.

464 © 2011 SAP AG. All rights reserved. 2011

Page 481: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Logic Script and Data Manager Packages

Figure 368: Data Manager Package and Dynamic Script Logic

The figure above explains how to assign a Logic Script File to a Data ManagerPackage. You can assign a process chain of your choice to the new package.

2011 © 2011 SAP AG. All rights reserved. 465

Page 482: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

In the “Modify Package” mode, it is possible to configure the “Dynamic Script Logic”.In detail, it is possible to:

• Define the package mask selections (First Prompt Line in above screenshot)whereby %Dimension_DIM% refers to a variable for the Constant Filedimension names and for example “PRODUCT2” includes a selection for auser-defined dimension that does not have a Constant File dimension name.

• Prompt for the logic filename of your choice (Second Prompt Line with variable%File_Name%)

• Assign a variable for the logic filename (Last Task with keyword“LOGICFILENAME”).

Note: If you want to hard code a logic filename, the second prompt line wouldbe left out and, in the last Task row, instead of “%File_Name%”, you wouldenter the technical name of the logic filename at this place.

Hint: Within the dynamic script logic, you will find the following systemvariables:

• %USER% that returns current Planning and Consolidation User• %APPSET% that returns current Planning and Consolidation

Environment• %APP% that returns current Planning and Consolidation Model

466 © 2011 SAP AG. All rights reserved. 2011

Page 483: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Figure 369: Result: 2 Prompts in Data Manager Package

2011 © 2011 SAP AG. All rights reserved. 467

Page 484: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Buttons with Logic Script Packages

Figure 370: Configuration - Button contains link to Data Manager Package

It is possible to assign a Data Manager Package to an Excel Button. The generalsyntax that has to be created in the VBA editor is the following:Sub Button()Application.Run APIName, MethodName, LinkName, Arg1, Arg2, Arg3End Sub

with:

• APIName = EPMExecuteAPI• MethodName = DataManagerRunPackage• LinkName (Not used but Necessary) = “”• Arg1 = Package Name• Arg2 = Package Group• Arg3 = Team ID (= “” means Company)

468 © 2011 SAP AG. All rights reserved. 2011

Page 485: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Some prerequisites are necessary if you want to work with data manager packages onbuttons:

• Prerequisite 1: The Developer's Ribbon tab must be activated in the Office -Excel Options. This is necessary since a button can only be created via this tab.In the Developer's tab card the macro settings “Trust access to the VBA projectobject model” and “Enable all macros” have to be flagged!

• Prerequisite 2: After flagging the macro settings, you have to log off and log onagain on to activate the new macro settings.

Hint: Having created the input form with the package button, you have tosave the input form as “Excel Macro-Enabled Workbook (.xlsm).”.

Hint: If you want to limit the user’s access to some packages, you have tocreate the team properly by adding only those packages which you expect theuser can access, then add the user to the team.

Data Manager Prompts

Figure 371: Coding Example: Data Manager Prompting for Variable Values

The example above shows the Include with the $VAR_KPIn$ variables. The variablefor which you will later be prompted has to contain a “$” at the beginning and atthe end of the variable name.

2011 © 2011 SAP AG. All rights reserved. 469

Page 486: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 372: Coding Example: Dynamic Script Logic for Variable Values

The example above shows the “REPLACEPARAM” Task line and the necessarymapping between the $VAR_KPIn$ Logic Script variable and the %VAR_KPIn%dynamic script logic variable.The second to sixth Prompt line prompts for the variable values as given in thedynamic script logic editor.

470 © 2011 SAP AG. All rights reserved. 2011

Page 487: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Exercise 7: Execute Logic Scripts Centrally

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create a System Constant File• Create a Management Package for Logic Scripts• Adapt a Package selection mask• Execute a Calculation Data Manager Package from a Button• Execute a Prompt in Data Manager Packages to set variable values

Business ExampleYou want to configure a central execution of Logic Scripts using adapt Data ManagerPackages and install a System Constants File. Finally, you want to execute a packagefrom a button and want to see how to be prompted for variable values.

Task:Define System Constants File for Environment Dimensions

1. The definition of a system constant file is an important prerequisite to make theData Manager Packages work. First of all, navigate to your backend system anduse transaction “UJFS”. Here, navigate to your “System_Constants.LGF” filein the logic library for environment “BPC420_##”. “Download the Document”and store it in the “My Documents” folder (but not as a ZIP File). Use the sametechnical name for the file - which is “SYSTEM_CONSTANTS.LGF”. In the“Save as Type” field, keep “All Files (*.*)” selected. If a “SAP GUI Security”pop-up appears, navigate to the drop down box and select “Always Allow”.Then, select Start → My Documents → My Documents and then open yourfile. If the “Windows” pop-up comes up, flag “Select a Program from a List”.In the next pop-up, “Open with”, select “Notepad”. Finally, you should seeyour coding in an .txt file. The following table gives instructions on whichdimensions to the right of “=” have to be exchanged and which dimensions haveto be deleted. Follow the instructions:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 471

Page 488: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Olddimension- to beexchangedwith...

... the followingnew dimensions

to be deleted:

*FUNC-TIONCATEGO-RYDIM

= CATE-GORY

CATEGORY

*FUNC-TIONTIMEDIM

= TIME TIME

*FUNC-TIONCURREN-CYDIM

= RPTCUR-RENCY

INPUTCUR-RENCY

*FUNC-TION EN-TITYDIM

= ENTITY ENTITY

*FUNC-TION AC-COUNT-DIM

= ACCOUNT P_ACCT

*FUNC-TIONDATAS-RCDIM

= AUDIT-TRAIL

The *FUNCTION DATAS-RCDIM=AUDITTRAILcoding line has to be deleted

Leave the “Rate” related part of the coding lines unchanged. Then save your fileand close it. Back in transaction UJFS, navigate to the “Logic Library” node and“Upload the Document from PC”. In the next pop-up, click “My Documents”,then double-click your file. When the “SAP GUI Security” pop-up appearsagain, select “Always Allow”. Leave your transaction and return to the backendscreen after system logon.

Continued on next page

472 © 2011 SAP AG. All rights reserved. 2011

Page 489: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

2. Navigate in your Administration Web Client and set the DEFAULT.LGF formodel D_PLAN## back to *INCLUDE LOGIC_2.LGF. Additionally, set aCOMMENT for this line, since we don't want to execute LOGIC_2.LGFonline in this exercise. Validate, Save and stay in the list of Includes for modelD_PLAN##.

3. Have a short look at LOGIC_2.LGF, since this logic will be executed centrallyin one of the next steps. Having done so, return to your list of includes forD_PLAN##.

4. Navigate to your Excel input form and enter 100 for KPI1 and 200 for KPI2 in2011.JAN and then save and refresh data. You should not see any value forKPI5. Leave the input form open.

5. Navigate to the Excel Interface and then to the “Data Manager” tab. We wantto create a Data Manager Package that uses an existing Process Chain (anycould be used) and that prompts for a Logic file of your choice and for somedimensions of your choice.In our case, let's use process chain “/CPMB/ICDATA” as source for the newPackage. Add this package to a new package group that you create first.Denominate the new package group “BPC420_##” and denominate the newpackage “ PACKAGE TO EXECUTE SCRIPT LOGIC” as Package name anddescription.Within the dynamic Script Logic of your package, set a prompt that asks for alogic file of your choice. Doing so, it is necessary to define a dynamic scriptlogic variable for the logic file. Also, prompt for ACCOUNT and PRODUCT2in the selection mask of the package. ACCOUNT will be incorporated as aVariable and PRODUCT2 has to be hard-coded, since it is a user-defined field.Having taken all requirements into account, save your package.

Here are some hints of how to translate the requirements of this exercise:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 473

Page 490: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 373: Creation of a Data Manager Package using Process Chain/CPMB/ICDATA

Continued on next page

474 © 2011 SAP AG. All rights reserved. 2011

Page 491: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Figure 374: Dynamic Script Logic Adaptations

Note: The dynamic script logic coding provided in the abovescreenshot can be copied from file “ DYNAMIC SCRIPT WITH FILEVARIABLE”, which can be found as follows: Start → My Documents→ My Documents → BPC420 → BPC420-## → Logic.

Note: In the upper dynamic script logic coding, %ACCOUNT_DIM%is a variable which allows selections for P_ACCT in the package'sentry mask. PRODUCT is hard-coded, since it is a customer specificvariable. The second prompt asks for the logic file the end user wishes.%FILE_NAME% is the variable for the file, which the end user will fillin. In the last line you refer to this variable/placeholder.

Configure the package group and the package according to the information givento you and finally save your package. Also close your .txt file.

6. Now let's test the new package for “LOGIC_2.LGF” . Enter the followingselections in the selection mask:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 475

Page 492: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 375: Data Range selections in Data Manager Package

When the package run is finished, check “Package Log” and “Formula Log” inthe “View Status” section of “Run Package”. Finally, close all pop-ups andreturn to the EPM tab card and, with your input form open, select “RefreshSelected Report”. As a result, you should see that KPI5 now carries a value of450 as a consequence of the “LOGIC_2.LGF” business logic. Stay on this tab.

7. The last issue is to use a button to execute a logic of your choice.

Hint: A few Excel-related activities are necessary to allow the creationof a an Excel button. Some Security-related activities are also necessary.

• Within Excel, navigate as follows: Office Button → Excel Optionsand flag “Show Developer Tab in the Ribbon”.

• Within the Developer tab, navigate as follows: Macro Security →Macro Settings. Flag “Enable all macros” and “Trust Access tothe VBA project object model”.

• Log off and log on again so that all macro settings can becomeactive.

Continued on next page

476 © 2011 SAP AG. All rights reserved. 2011

Page 493: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Within your input form on your EPM tab, create a button in cell F2:G3. For thisbutton, in the “Assign Macro” popup, select “New”. In the subsequent editor,under “Sub Button” fill in the following coding:

“Application.Run ”EPMExecuteAPI”,”DataManagerRunPackage”,””,”PACK-AGE TO EXECUTE SCRIPT LOGIC”,”BPC420_##”,”””.Then leave the editor without saving.Name your button “Button to execute Script Logic”. Then saveyour input form again with a new file name and extension! Save as“IF_TEST_SCRIPT_LOGIC_WITH_MACRO” and select “Excel-MacroEnabled Workbook (*.XLSM)”Finally, test your button by first entering 300 for KPI1 and KPI2 in 2011.Jan.Save and refresh your data. The value of KPI5 should not have changed yet.Then, press the button and, in the subsequent pop-up, fill in as follows:

Figure 376: Data Range selections in Data Manager Package - Buttonscenario

Run your package and, without having a look at the “View Status” immediately,“Refresh Selected Report”. As a result, KPI5 should have the value of 900.Set all values back to 0 and then save and refresh your workbook. Leave theinput form open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 477

Page 494: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

8. During execution of a Data Manager package, a user will be asked to fill in theprompted value as a user selection. This will add flexibility and could be usedfor 'what if' scenarios.In our case, we want to increase the data for KPI1 to KPI5 by x percent, wherethe percentage is given by the end user.

First, navigate to the Administration Web Client and create a logic file called“LOGIC_15” for model D_PLAN## in environment BPC420_##. Copythe coding from .txt file “LOGIC_15.TXT” into your logic file editor. Thefile can be found as follows: Start → My Documents → My Documents →BPC420 → BPC420-## → Logic. Have a look at the coding and the variables“$VAR_KPIn$”. Do not validate your coding. Only save your include and thenclose the editor. You should now be in the list of includes for your model.

Figure 377: Logic File and System Variables for prompting in Data ManagerPackage

Return to Excel and here plan 100 for each KPI in 2011.Jan. Save and refresh inone step. You should not get any changes in data, since calculation will not workvia the Default include. That is not possible when prompts are used.Now let's create a new package for your package group “BPC420_##” that willbe able to prompt your for variable values. Call the new package “PACKAGETO EXECUTE PROMPTS”. Link it to the “/CPMB/ICDATA” process chain.When the new package is added, select “Modify Package” and navigate to theDynamic Script Logic Editor. The coding has to be changed so that the variableprompt will work.

Continued on next page

478 © 2011 SAP AG. All rights reserved. 2011

Page 495: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Copy the relevant coding from the prepared .txt file “DYN SCRIPT PACKAGEPROMPTS.TXT”, which you will find as follows: Start → My Documents →My Documents → BPC420 → BPC420-## → Logic and then take a look at thecoding and try to become familiar with it. Especially try to understand the logic.

Figure 378: Dynamic Script Logic with Variable Prompts

Then save your new package.Finally, execute your package and select as follows:

Figure 379: Selections in the Data Manager Prompt Scenario

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 479

Page 496: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

When prompted for the five variable values, enter a markup of 10 for KPI1, 20for KPI2, 30 for KPI3, 40 for KPI4 and 50 for KPI5:

Figure 380: Variable Values in the Data Manager Prompt Scenario

Keep “Run” flagged. When the calculation is finished, have a look at thePackage Log and the Formula Log.As last step, navigate to your EPM tab with the input form open and then“Refresh Selected Report”. Then, set all KPIs to 0 and save and refresh again.Close your input form but stay in Excel.

480 © 2011 SAP AG. All rights reserved. 2011

Page 497: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Solution 7: Execute Logic Scripts CentrallyTask:Define System Constants File for Environment Dimensions

1. The definition of a system constant file is an important prerequisite to make theData Manager Packages work. First of all, navigate to your backend system anduse transaction “UJFS”. Here, navigate to your “System_Constants.LGF” filein the logic library for environment “BPC420_##”. “Download the Document”and store it in the “My Documents” folder (but not as a ZIP File). Use the sametechnical name for the file - which is “SYSTEM_CONSTANTS.LGF”. In the“Save as Type” field, keep “All Files (*.*)” selected. If a “SAP GUI Security”pop-up appears, navigate to the drop down box and select “Always Allow”.Then, select Start → My Documents → My Documents and then open yourfile. If the “Windows” pop-up comes up, flag “Select a Program from a List”.In the next pop-up, “Open with”, select “Notepad”. Finally, you should seeyour coding in an .txt file. The following table gives instructions on whichdimensions to the right of “=” have to be exchanged and which dimensions haveto be deleted. Follow the instructions:

Olddimension- to beexchangedwith...

... the followingnew dimensions

to be deleted:

*FUNC-TIONCATEGO-RYDIM

= CATE-GORY

CATEGORY

*FUNC-TIONTIMEDIM

= TIME TIME

*FUNC-TIONCURREN-CYDIM

= RPTCUR-RENCY

INPUTCUR-RENCY

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 481

Page 498: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

*FUNC-TION EN-TITYDIM

= ENTITY ENTITY

*FUNC-TION AC-COUNT-DIM

= ACCOUNT P_ACCT

*FUNC-TIONDATAS-RCDIM

= AUDIT-TRAIL

The *FUNCTION DATAS-RCDIM=AUDITTRAILcoding line has to be deleted

Leave the “Rate” related part of the coding lines unchanged. Then save your fileand close it. Back in transaction UJFS, navigate to the “Logic Library” node and“Upload the Document from PC”. In the next pop-up, click “My Documents”,then double-click your file. When the “SAP GUI Security” pop-up appearsagain, select “Always Allow”. Leave your transaction and return to the backendscreen after system logon.

a) Within your backend system, navigate to the “Command Field” and enter“UJFS”, then press “Enter”. On the next screen, you are asked for the“Environment Name”. Open the matchcode to the right of the white celland scroll to environment “BPC420_##”.

Hint: Do not enter the technical name manually, it is possible thatthe system will not accept manual entries.

Then, click the “Execute” button. You will now see a hierarchy withblack triangles on the left hand side. Open the black triangles as follows:Root → Webfolders → BPC420_## → systemlibrary → logic library→ System_Constants.LGF. Mark “System_Constants.LGF” and thenright-click “Download Document”. The next pop-up asks for a “Downloadas ZIP File”. Here, select “No”. Click “My Documents” in the next pop-upand, in the field “File Name:,” enter “System_Constants.LGF”. In the “Saveas Type” field, keep “All Files (*.*)” selected. Then, confirm with “Save”.

Hint: If, during download, a “SAP GUI Security” pop-up appears,navigate to the dropdown box and select “Always Allow” and thenpress “OK”

Continued on next page

482 © 2011 SAP AG. All rights reserved. 2011

Page 499: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

To open your file, navigate as follows: Start → My Documents → MyDocuments . If the “Windows” pop-up appears, flag “Select a Programfrom a List”. In the next pop-up “Open with” select “Notepad”. Then, click“OK”. Finally, you should see your coding in a .txt file. Adapt as given inthe above table.In the *FUNCTION section of your file, go through each *FUNCTIONline and in the third *FUNCTION line exchange RPTCURRENCY with“INPUTCURRENCY”.In the fifth *FUNCTION line, exchange ACCOUNT with P_ACCT.The last *FUNCTION line referring to AUDITTRAIL has to be deletedcompletely.Finally, save your file by clicking File → Save. Close the file by clickingFile → Close. Navigate back to your “UJFS” transaction and right-clickthe “Logic Library” node. Then click “Upload Document from PC”. In thenext pop-up “Open”, click “My Documents” and then choose your file“System_Constants.LGF”, then click “Open”.

Hint: If, during upload, the “SAP GUI Security” pop-up appearsagain, select “Always Allow” and then click “OK”.

Finally, click “BACK” twice to return to the screen after system logon.

2. Navigate in your Administration Web Client and set the DEFAULT.LGF formodel D_PLAN## back to *INCLUDE LOGIC_2.LGF. Additionally, set aCOMMENT for this line, since we don't want to execute LOGIC_2.LGFonline in this exercise. Validate, Save and stay in the list of Includes for modelD_PLAN##.

a) Back in the Administration Web Client, navigate to the “Administration”tab, then to Rules → Logic Scripts. Click model “D_PLAN##” and then“Open”. In the list of Includes, click “DEFAULT.LGF” and then, in thefirst row, fill in “*INCLUDE LOGIC_2.LGF”. Then, within line 1, clickthe button “COMMENT”. Then click “Validate”, then “Save”, and then“Close”. You should now be in the list of includes for D_PLAN##.

3. Have a short look at LOGIC_2.LGF, since this logic will be executed centrallyin one of the next steps. Having done so, return to your list of includes forD_PLAN##.

a) In your Administration Web Client, the list of includes should be open.Here, click “LOGIC_2.LGF”. As you can see, the sum of KPI1 and KPI2is multiplied by 1.5 and the result is written into KPI5. Click “Close”afterwards and you will be back in the list of includes.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 483

Page 500: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

4. Navigate to your Excel input form and enter 100 for KPI1 and 200 for KPI2 in2011.JAN and then save and refresh data. You should not see any value forKPI5. Leave the input form open.

a) On your EPM tab in Excel, the input form “IF_TEST_SCRIPT_LOGIC” isalready open. Enter the values mentioned in the exercise and then selectSave Data → Save and Refresh Workbook Data. Confirm with “YES” andthen with “OK”. As a result KPI5 should not contain any data. Leavethe input form open.

5. Navigate to the Excel Interface and then to the “Data Manager” tab. We wantto create a Data Manager Package that uses an existing Process Chain (anycould be used) and that prompts for a Logic file of your choice and for somedimensions of your choice.In our case, let's use process chain “/CPMB/ICDATA” as source for the newPackage. Add this package to a new package group that you create first.Denominate the new package group “BPC420_##” and denominate the newpackage “ PACKAGE TO EXECUTE SCRIPT LOGIC” as Package name anddescription.Within the dynamic Script Logic of your package, set a prompt that asks for alogic file of your choice. Doing so, it is necessary to define a dynamic scriptlogic variable for the logic file. Also, prompt for ACCOUNT and PRODUCT2in the selection mask of the package. ACCOUNT will be incorporated as aVariable and PRODUCT2 has to be hard-coded, since it is a user-defined field.Having taken all requirements into account, save your package.

Here are some hints of how to translate the requirements of this exercise:

Continued on next page

484 © 2011 SAP AG. All rights reserved. 2011

Page 501: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Figure 381: Creation of a Data Manager Package using Process Chain/CPMB/ICDATA

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 485

Page 502: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 382: Dynamic Script Logic Adaptations

Note: The dynamic script logic coding provided in the abovescreenshot can be copied from file “ DYNAMIC SCRIPT WITH FILEVARIABLE”, which can be found as follows: Start → My Documents→ My Documents → BPC420 → BPC420-## → Logic.

Note: In the upper dynamic script logic coding, %ACCOUNT_DIM%is a variable which allows selections for P_ACCT in the package'sentry mask. PRODUCT is hard-coded, since it is a customer specificvariable. The second prompt asks for the logic file the end user wishes.%FILE_NAME% is the variable for the file, which the end user will fillin. In the last line you refer to this variable/placeholder.

Continued on next page

486 © 2011 SAP AG. All rights reserved. 2011

Page 503: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Configure the package group and the package according to the information givento you and finally save your package. Also close your .txt file.

a) First, you have to navigate to the “Data Manager” tab card in Excel.Here, go to: Organize → Organize Package List and make sure that the“Company” is selected. Then, in the “Package Group” section, click thenode “D_PLAN##”, right-click and select “Add Package Group”. In thenext pop-up, enter the technical name “BPC420_##” and click “OK”. Thenclick the new package group to select it. In the right yellow section, right-click in the yellow section and select “Add Package”. Click at the button“Select” and Package Name and Description “PACKAGE TO EXECUTESCRIPT LOGIC” and flag “User Package” and “Admin Package”. Thenpress “Add”. You will now see the new package in the right yellowsection of the “Organize Package List” pop up. Right-click the packageand select “Modify Package”. On the next screen, click “Modify Script”and then, in the next pop-up, click “Advanced” in the upper right corner.In parallel, navigate to your dynamic script logic file as follows: Start →My Documents → My Documents → BPC420 → BPC420-## → Logic.Double-click the file “ DYNAMIC SCRIPT WITH FILE VARIABLE”and then mark the complete coding and press “Ctrl” and “C”. Mark thecomplete coding in your “Modify Script” editor and then press “Ctrl” and“V”. Then check the coding and finally select “OK”. Then click “Save”twice and finally “Refresh” and then “Close”. Also close your .txt file byclicking File → Exit.

6. Now let's test the new package for “LOGIC_2.LGF” . Enter the followingselections in the selection mask:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 487

Page 504: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 383: Data Range selections in Data Manager Package

Continued on next page

488 © 2011 SAP AG. All rights reserved. 2011

Page 505: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

When the package run is finished, check “Package Log” and “Formula Log” inthe “View Status” section of “Run Package”. Finally, close all pop-ups andreturn to the EPM tab card and, with your input form open, select “RefreshSelected Report”. As a result, you should see that KPI5 now carries a value of450 as a consequence of the “LOGIC_2.LGF” business logic. Stay on this tab.

a) On the Data Manager tab, go to : Run Package → Run Package →Company → BPC420_## and then, in the yellow section on the right handside, click your new package. Then click “Run”. In the next pop-up, youhave to enter the selections given in the above screenshot. For example,if you want to input the selection for Category, click “Add” for thisdimension. Then click the black triangle on the right of the button “SelectMember Names to display”. Then, select “ID”. Then flag “FLASH” andthen click the blue arrow to move the selection into the right part of thepop-up. Then, click “OK”. Do the same for all dimensions. When finished,click “Next” and manually enter the file name “LOGIC_2.LGF” in theprompt line. Then, click “Next” and keep “Run” flagged. Click “Finish”,then “OK”. Then, to verify the results, click “View Status” and then, inthe “Package Status” pop-up, mark your Status line and select “Detail”.First, click “Package Log” on the left hand side. Have a short look at thestatus information and then click “Formula Log” and have a look at theinformation here. Then, click “Close” three times.Finally, click the EPM tab with the input form open and navigate as followsto see the results of the calculation: Refresh→ Refresh Selected Report. 450for KPI5 should now be in your input form for 2011.JAN. Stay in this tab.

7. The last issue is to use a button to execute a logic of your choice.

Hint: A few Excel-related activities are necessary to allow the creationof a an Excel button. Some Security-related activities are also necessary.

• Within Excel, navigate as follows: Office Button → Excel Optionsand flag “Show Developer Tab in the Ribbon”.

• Within the Developer tab, navigate as follows: Macro Security →Macro Settings. Flag “Enable all macros” and “Trust Access tothe VBA project object model”.

• Log off and log on again so that all macro settings can becomeactive.

Within your input form on your EPM tab, create a button in cell F2:G3. For thisbutton, in the “Assign Macro” popup, select “New”. In the subsequent editor,under “Sub Button” fill in the following coding:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 489

Page 506: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

“Application.Run ”EPMExecuteAPI”,”DataManagerRunPackage”,””,”PACK-AGE TO EXECUTE SCRIPT LOGIC”,”BPC420_##”,”””.Then leave the editor without saving.Name your button “Button to execute Script Logic”. Then saveyour input form again with a new file name and extension! Save as“IF_TEST_SCRIPT_LOGIC_WITH_MACRO” and select “Excel-MacroEnabled Workbook (*.XLSM)”Finally, test your button by first entering 300 for KPI1 and KPI2 in 2011.Jan.Save and refresh your data. The value of KPI5 should not have changed yet.Then, press the button and, in the subsequent pop-up, fill in as follows:

Figure 384: Data Range selections in Data Manager Package - Buttonscenario

Continued on next page

490 © 2011 SAP AG. All rights reserved. 2011

Page 507: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Run your package and, without having a look at the “View Status” immediately,“Refresh Selected Report”. As a result, KPI5 should have the value of 900.Set all values back to 0 and then save and refresh your workbook. Leave theinput form open.

a) First, follow the hints concerning the Developer's tab activation and themacro security settings. Also log off and log on again and open yourinput form “IS_TEST_SCRIPT_LOGIC”. The connection still refersto environment BPC420_## and model D_PLAN##. Go to: Refresh →Refresh Selected Report. Then, click as follows: Developer tab card →Insert → Button (Form Control). With the “+”, create a rectangle from cellF2 to cell G3. Doing so a pop up comes up “Assign Macro”. Here, click“New” and you are in the VBA editor.Position your cursor in the line beneath “Sub Button” and type in thefollowing coding:Application.Run ”EPMExecuteAPI”,”DataManagerRunPack-age”,””,”PACKAGE TO EXECUTE SCRIPT LOGIC”,”BPC420_##”,””Then, leave the editor via File → Close and Return to Microsoft Excel.Back in the input form, click the button and then type the following buttondescription: “Button to execute Script Logic” .Then, navigate as follows: EPM tab → Save → Save to Server RootFolder... → Company → Input Schedules → BPC420_## and, in the cell“File Name:”, enter “IF_TEST_SCRIPT_LOGIC_WITH_MACRO”. Inthe white cell to the right of the “File Name:” cell, open the dropdown boxand select “Excel-Macro Enabled Workbook (*.XLSM)”. Press “Save”.Enter 300 for KPI1 and KPI2 in 2011.Jan in your input form. Then, clickSave Data → Save and Refresh Workbook Data and, since the result forKPI5 should not have changed, click at your new button and fill in theinformation given in the exercise. On the first screen, enter the selectionsas described before and as given in the exercise, then click “Next”. Thenenter the file name “LOGIC_2.LGF”, click “NEXT”, and leave “Run”flagged. Then press “Finish”, then “OK”, then “Close”. Then click asfollows: Refresh → Refresh Selected Report. KPI5 should now carry 900.Set all values to 0 and click Save Data → Save and Refresh WorkbookData. Leave the input form open.

8. During execution of a Data Manager package, a user will be asked to fill in theprompted value as a user selection. This will add flexibility and could be usedfor 'what if' scenarios.In our case, we want to increase the data for KPI1 to KPI5 by x percent, wherethe percentage is given by the end user.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 491

Page 508: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

First, navigate to the Administration Web Client and create a logic file called“LOGIC_15” for model D_PLAN## in environment BPC420_##. Copythe coding from .txt file “LOGIC_15.TXT” into your logic file editor. Thefile can be found as follows: Start → My Documents → My Documents →BPC420 → BPC420-## → Logic. Have a look at the coding and the variables“$VAR_KPIn$”. Do not validate your coding. Only save your include and thenclose the editor. You should now be in the list of includes for your model.

Figure 385: Logic File and System Variables for prompting in Data ManagerPackage

Return to Excel and here plan 100 for each KPI in 2011.Jan. Save and refresh inone step. You should not get any changes in data, since calculation will not workvia the Default include. That is not possible when prompts are used.Now let's create a new package for your package group “BPC420_##” that willbe able to prompt your for variable values. Call the new package “PACKAGETO EXECUTE PROMPTS”. Link it to the “/CPMB/ICDATA” process chain.When the new package is added, select “Modify Package” and navigate to theDynamic Script Logic Editor. The coding has to be changed so that the variableprompt will work.Copy the relevant coding from the prepared .txt file “DYN SCRIPT PACKAGEPROMPTS.TXT”, which you will find as follows: Start → My Documents →My Documents → BPC420 → BPC420-## → Logic and then take a look at thecoding and try to become familiar with it. Especially try to understand the logic.

Continued on next page

492 © 2011 SAP AG. All rights reserved. 2011

Page 509: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Figure 386: Dynamic Script Logic with Variable Prompts

Then save your new package.Finally, execute your package and select as follows:

Figure 387: Selections in the Data Manager Prompt Scenario

When prompted for the five variable values, enter a markup of 10 for KPI1, 20for KPI2, 30 for KPI3, 40 for KPI4 and 50 for KPI5:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 493

Page 510: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 388: Variable Values in the Data Manager Prompt Scenario

Keep “Run” flagged. When the calculation is finished, have a look at thePackage Log and the Formula Log.As last step, navigate to your EPM tab with the input form open and then“Refresh Selected Report”. Then, set all KPIs to 0 and save and refresh again.Close your input form but stay in Excel.

a) Within the Administration Web Client, navigate as follows to create a newInclude: Administration Tab card → Rules → Logic Scripts. Mark modelD_PLAN## and select “Open”. Then, click “New” and, in the next pop-up,enter “LOGIC_15”. Then click “Create”.In the editor, click in line 1 and then open the source file as follows: Start→ My Documents → My Documents → BPC420 → BPC420-## → Logic.Double-click your file and, when you can see the coding, mark it and press“Ctrl” and “C”. In the LOGIC_15.LGF editor, click in line 1 and then press“Ctrl” and “V”. “Don't validate”! Instead compare the screenshot in theexercise for the coding. Have a special look at the coding and the variables“$VAR_KPIn$” and then select “Save” A pop-up, “Unsaved Data”, shouldappear. Here, click “OK”. Then, click “Close”.Return to the EPM tab in Excel and here plan 100 for each KPI in 2011.Jan.Then select Save Data → Save and Refresh Workbook Data. You shouldnot see any changes in data, since the calculation will not work via theDefault include. This is not possible when prompts are used.

Continued on next page

494 © 2011 SAP AG. All rights reserved. 2011

Page 511: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Navigate to the Data Manager tab and then select Organize → OrganizePackage List → Company → BPC420_## . Right-click in the yellowsection on the right hand side and select “Add Package”. Flag “UserPackage” and “Admin Package”. Click the button “Select” and then click“Business Planning & Consolidation: Script Logic”. Then, on the righthand side, click the process chain “/CPMB/ICDATA”. Then, click “OK”.In the field “Package Name” and “Description” enter “PACKAGE TOEXECUTE PROMPTS”. Then, click “Add”.Stay within the “Organize Package List” pop-up and mark your newpackage. Then, right-click and select “Modify Package”. Click the button“Modify Script” and, in the next pop-up, click “Advanced”. Now, you arein the dynamic script logic editor.In parallel, navigate to the .txt file that contains the logic we need forprompting. Navigate as follows to find the file:Start → My Documents →My Documents → BPC420 → BPC420-## → Logic. Then double-clickthe file “DYN SCRIPT PACKAGE PROMPTS.TXT”. Mark the wholecoding and press “Ctrl” and “C”. Then, return to the dynamic script logiceditor and mark all existing coding and press “Ctrl” and “V”. Then, have alook at the coding itself and try to understand it. Also have a look at therelevant screenshot in the exercise.Then, click “OK” and then “Save” twice. Finally, click “Close”.To test the new package, navigate as follows in the Data Manager tab card:Run Package → Run Package → Company → BPC420_##. Mark yourpackage and press “Run”. Then, enter the selections given in the exercisescreenshot.

For example, if you want to input the selection for Category, click “Add”for this dimension. Then, click the black triangle right of the button “SelectMember Names to display”. Then select “ID”. Then flag “FLASH” andthen click the blue arrow to move the selection into the right part of thepop-up. Then click “OK”. Do the same for all dimensions.When finished, click “Next” and manually enter “10” in the prompt line forKPI1 prompt. Then click “Next” and enter “20” for KPI2 prompt. Then,click “Next” and enter “30” for KPI3 prompt. Then click “Next” and enter“40” as KPI4 prompt. Then press “Next” and enter “50” as KPI5 prompt.Then, click “Next” and keep “Run” flagged. Click “Finish”, then“OK”. Then, to verify the results, click “View Status” and then in the“Package Status” pop-up, mark your Status line and select “Detail”.First, click “Package Log” on the left hand side, have a short look at thestatus information and then click “Formula Log” and have a look at theinformation here. Then, click “Close” three times.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 495

Page 512: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Click your EPM tab and select Refresh → Refresh Selected Report. Youshould get the following results:

Figure 389: Results of Data Manager Prompting

Set KPIs to 0 and select Save Data → Save and Refresh Workbook Data.Close your input form by clicking Office Button → Close. Stay in Excel.

496 © 2011 SAP AG. All rights reserved. 2011

Page 513: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Logic Scripts and Central Execution

Lesson Summary

You should now be able to:• Describe the central execution of Logic Scripts• Define how to adapt Packages for Central Execution• Explain how to execute a Logic Script from a Button• Illustrate how to create a prompt for Variable Values

2011 © 2011 SAP AG. All rights reserved. 497

Page 514: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Lesson: Defining Logic Scripts for Allocation

Lesson Overview

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss the concept of allocation in BO PC• Define the logic elements for Allocation• Execute an Allocation

Business ExampleYou want to analyze how to configure Allocations and see the possible configurationscenarios.

Allocation Engine

Figure 390: Example of a simple Allocation Scenario

498 © 2011 SAP AG. All rights reserved. 2011

Page 515: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

With the help of the allocation engine, we want to distribute data from one sender toseveral receivers. This feature is very often used in Planning as a top-down scenario.The figure above gives you a Business Scenario for Allocation and a reference to theBO PC commands which are necessary to construct the distribution.

Figure 391: Coding Example in the Logic Script Editor for the simple AllocationScenario

The Allocation Engine can be used to perform complex allocations with a very limitednumber of instructions. The definition of the allocation engine is done in standardlogic scripts. The Logic Script Editor is used to configure a distribution by workingwith special commands as WHAT, WHERE, FACTOR,USING,TOTAL,COUNT.

Note: You have to read the Allocation Coding in the Script Editor vertically.Each vertical line represents the relevant data set selections.

Note: Allocation should be run separately for each month, that's why theTIME dimension is not mentioned in the WHAT Lines! You refer to TIMEwhen executing the Allocation via a Data Manager Package.

An exception is when you want to allocate one year's data and refer to thedata of the last year. Then the *DIM TIME row would be necessary to referto several years.

2011 © 2011 SAP AG. All rights reserved. 499

Page 516: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 392: Allocation Engine: Key Elements

The upper slide gives you an overview about all allocation-related commands andtheir meaning.

500 © 2011 SAP AG. All rights reserved. 2011

Page 517: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Figure 393: Logic Keywords: WHAT – Source

With the help of the above table, you can see details for the logic keyword WHAT.

Figure 394: Logic Keywords: WHERE – Target

2011 © 2011 SAP AG. All rights reserved. 501

Page 518: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

With the help of the above table, you can see details for the logic keyword WHERE.

Figure 395: Logic Keywords: FACTOR – How to calculate the Distribution Key

• This instruction can be used to define any arithmetic expression (written in the{expression} parameter) and may contain operands, parentheses, constants andone or both of the keywords USING and TOTAL, representing the amountcoming from the “USING” region (for example, the amount of the driver) andthe amount coming from the “TOTAL” region (for example, the sum of thedrivers) respectively.

• If the factor is omitted, the factor will always default to 1.• If the arithmetic expression is omitted, the default is multiplication.

502 © 2011 SAP AG. All rights reserved. 2011

Page 519: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Figure 396: Logic Keywords: USING & TOTAL – Selections for Distribution Key

• Do not use “>0” (For example, USING=Amount >0 is not supported)• USING and TOTAL must have the same definition• Do not use non-base members with <>• Do not use parent member directly in USING• As described in the previous table, BAS(parent) is still allowed• Do not use non-base members with <>

2011 © 2011 SAP AG. All rights reserved. 503

Page 520: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Allocation Scenarios

Figure 397: Example 1: Allocate working with percentages:*FACTOR=USING/100

When using this Logic Script configuration for the allocation, you want to distributeaccording to percentages. Here, the end user plans the percentages in P_ACCTmember “PERCENT”.

Note: The end user has to take care that the sum of all percentages is 100!The system does not check it by itself.

504 © 2011 SAP AG. All rights reserved. 2011

Page 521: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Figure 398: Example 2: Allocate working with *FACTOR=USING/TOTAL -working with system variable %YEAR%

It is possible to work with the system variable for Time and so have less maintenancewhen using the allocation several years.

Figure 399: Example 3: Using the Allocation to Copy Data from Several Sourcesto One Common Goal (1/2)

Here, the allocation is used not to distribute data, but to sum up data and copy the sumto a receiver. This is helpful, since the Copy Data Manager Package is not able to dothis. With the copy package, it is always a 1:1 relation between sender and receiver.

In the above example, all accounts in the profit and loss statement of categoryACTUAL, for the three entities ITALY, FRANCE and UK, are copied into thecorresponding accounts of the entity GLOBALOPS and category BUDGET.

2011 © 2011 SAP AG. All rights reserved. 505

Page 522: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 400: Example 3: Allocation with *FACTOR= (2/2)

The coding above also shows how to include properties in the selection.

You also learn that it is possible to identify the dimensions per type as given in the*DIM DOT(R) coding line.

506 © 2011 SAP AG. All rights reserved. 2011

Page 523: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Exercise 8: Create a Logic Script Allocation

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create an allocation within BO PC• Execute the allocation centrally

Business ExampleYou analyze how to configure an allocation that distributes data from one sender totwo receivers. You use square meters of both receivers as the distribution key.

Task: AllocationsConfigure Allocation and execute it centrally.

1. Navigate to the Administration Web Client for your BPC420_## environmentand add the provided new Entity members which are necessary for the allocationscenario from the file “Entity Dimension Members for Allocation.xlsx”. Thefile can be found in your BPC420-## folder. The members to be copied can beseen in the following table:

ID DESCRIPTION H1 CUR-RENCY

OWNER

SENDER SENDER FORALLOCATION

NODE_SENDER

EUR BPC-##

RECEIVER_ 1 RECEIVER NO 1 FORALLOCATION

NODE_RECEIVER

EUR BPC-##

RECEIVER_ 2 RECEIVER NO 2 FORALLOCATION

NODE_RECEIVER

EUR BPC-##

NODE_SENDER

NODE SENDER FORALLOCATION

NODE_ AL-LOCATION

EUR BPC-##

NODE_RECEIVER

NODE RECEIVERFOR ALLOCATION

NODE_ AL-LOCATION

EUR BPC-##

NODE_ALLOCATION

NODE ALLOCATION EUR BPC-##

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 507

Page 524: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Save and “Save and Process” your master data. When asked if you want to setthe environment offline, select “No”. Close the master data maintenance editorbut stay in the list of dimensions.

2.

Figure 401: Exercise Allocation Scenario

Navigate to the Script Logic Editor and create a new logic file for model D_PLAN##.Call the logic file ALLOCATION. Use the “ALLOCATION.TXT” file andcopy its content into the ALLOCATION.LGF include. The file can be found asfollows: Start → My Documents → My Documents → BPC420 → BPC420-##→ Logic. Then, you have copied the logic, try to get familiar with it, thenvalidate and save and then close the editor but stay in the Administration WebClient. Close the .txt file and return to the list of models within the logic scriptssection.

3. Log off from your current connection and log on again to the same connectionwith environment BPC420_## and model D_PLAN##. This is necessary toreceive the new Entity master data. Then, on the EPM tab, change the dimensionmember selections as follows:

Continued on next page

508 © 2011 SAP AG. All rights reserved. 2011

Page 525: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Dimension Member

CATEGORY FORECAST

ENTITY NODE_ALLOCATION

PRODUCT2 NONE

P_ACCT ALLOCATION_NODE

INPUTCURRENCY EUR

TIME 2011.001

MEASURES PERIODIC

Then, you have to create a new input form. Take “Input Form with NestedRows.XLTX”. Then, select “Refresh Selected Report”. “Edit Report” as follows:- The Entity row should “only” contain members: “SENDER”, “RECEIVER_1”and “RECEIVER_2”. Make sure that “Member only” is selected.- The P_ACCT row should “only” contain members: “ORIGINAL_ACCOUNT”and “ALLOC_KEY_SQM”. Make sure that “Member only” is selected.- The Time column should “only” contain member: “2011.001”. Make sure that“Member only” is selected.

“Refresh Selected Report” and then save your input form to the Input Schedules→ BPC420-## folder. The file name should be: “IS_ALLOCATION”. Enter thefollowing source data and distribution keys and then save the data and refreshthe workbook in one step and leave the input form open.

Figure 402: Source Data for Allocation and Distribution Keys

4. Since we want a central execution for the allocation, we have to create a newpackage called “PACKAGE TO EXECUTE ALLOCATIONS” that includes the“/CPMB/ALLOCATION” process chain and refers to the “ALLOCATON.LGF”logic file. The dynamic script logic for this package is delivered in the

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 509

Page 526: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

“ALLOCATION PARAMETERS.TXT” file that can be found as follows: Start→ My Documents → My Documents → BPC420 → BPC420-## → Logic.When the coding is entered, check it. Then close your .txt file.

5. Now, let's execute the “PACKAGE TO EXECUTE ALLOCATIONS” for thefollowing selections:

Dimension Member

CATEGORY FORECAST

ENTITY <ALL>

PRODUCT2 NONE

P_ACCT <ALL>

INPUTCURRENCY EUR

TIME 2011.001

When you have run it, have a look at the “View Status” if your we successful andcheck the “Package Log” and “Formula Log”. Finally, navigate to your InputForm and “Refresh Selected Report”. You should get the following result:

Figure 403: Allocation Example: Results after Distribution

Leave the input form open.

6. As you could see from the last screenshot, the source value 2000 for theSender entity is still 2000 even after distribution. Now, we want the sendervalue to be set to zero after allocation! This is possible if you change the“ALLOCATION.LGF” logic script file after *ENDALLOCATION and before*COMMIT as follows:

Continued on next page

510 © 2011 SAP AG. All rights reserved. 2011

Page 527: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

*WHEN ENTITY

*IS SENDER

*REC(EXPRESSION=0,P_ACCT=ORIGINAL_ACCOUNT)

*ENDWHEN

Execute the changes and validate and then save your coding. Close the LogicScript Editor afterwards but stay in the list of logic script models.

Navigate back to Excel. Here, it is necessary to “LOG OF” and then to “LOGON” so that the system can read the new coding. When logging on, use yourconnection for environment BPC420_## and model D_PLAN##.Then, in your input form, delete all data and save and refresh. Then, enter thefollowing data in your input form and save and refresh again:

Figure 404: Source Data for Allocation and Distribution Keys

Then, re-execute your “PACKAGE TO EXECUTE ALLOCATIONS” for thesame selections as before. Do not check the View Status but immediately“Refresh Selected Report”. You should get the following results :

Figure 405: Allocation Example: Results after Distribution - RevisedCoding

Finally, delete all data and close the input form but stay in Excel.

2011 © 2011 SAP AG. All rights reserved. 511

Page 528: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Solution 8: Create a Logic Script AllocationTask: AllocationsConfigure Allocation and execute it centrally.

1. Navigate to the Administration Web Client for your BPC420_## environmentand add the provided new Entity members which are necessary for the allocationscenario from the file “Entity Dimension Members for Allocation.xlsx”. Thefile can be found in your BPC420-## folder. The members to be copied can beseen in the following table:

ID DESCRIPTION H1 CUR-RENCY

OWNER

SENDER SENDER FORALLOCATION

NODE_SENDER

EUR BPC-##

RECEIVER_ 1 RECEIVER NO 1 FORALLOCATION

NODE_RECEIVER

EUR BPC-##

RECEIVER_ 2 RECEIVER NO 2 FORALLOCATION

NODE_RECEIVER

EUR BPC-##

NODE_SENDER

NODE SENDER FORALLOCATION

NODE_ AL-LOCATION

EUR BPC-##

NODE_RECEIVER

NODE RECEIVERFOR ALLOCATION

NODE_ AL-LOCATION

EUR BPC-##

NODE_ALLOCATION

NODE ALLOCATION EUR BPC-##

Continued on next page

512 © 2011 SAP AG. All rights reserved. 2011

Page 529: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Save and “Save and Process” your master data. When asked if you want to setthe environment offline, select “No”. Close the master data maintenance editorbut stay in the list of dimensions.

a) Your Administration Web Client should be opened, environmentBPC420_## should be set. Navigate as follows to the master datamaintenance: Tab Card Administration → Dimensions and Models →Dimensions. Mark “Entity” and then click “Edit Members”. Positionin the last empty cell for the ID column. Then, open the file mentionedin the exercise by navigating as follows: Start → My Documents →My Documents → BPC420 → BPC420-##. When you find your file,double-click it and then mark the content from cell A1 to L6. Then pressCtrl and C. Then navigate back to your master data maintenance and clickin the first empty cell in the ID column. Press Ctrl and V. When the newmembers are added, click “Save” and then “Save and Process”. Select“No” when asked to set the environment offline. Finally, select “Close”.

2.

Figure 406: Exercise Allocation Scenario

Navigate to the Script Logic Editor and create a new logic file for model D_PLAN##.Call the logic file ALLOCATION. Use the “ALLOCATION.TXT” file andcopy its content into the ALLOCATION.LGF include. The file can be found asfollows: Start → My Documents → My Documents → BPC420 → BPC420-##

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 513

Page 530: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

→ Logic. Then, you have copied the logic, try to get familiar with it, thenvalidate and save and then close the editor but stay in the Administration WebClient. Close the .txt file and return to the list of models within the logic scriptssection.

a) Navigate as follows within the Administration Web Client: AdministrationTab Card → Rules → Logic Scripts → D_PLAN100 → OPEN → New. Inthe “Create a new Logic Script” pop-up, enter “ALLOCATION”. Thenpress “Create”. Then, in the editor, click in line 1. In parallel, navigate tothe “ALLOCATION.TXT” file as described in the exercise. When found,double-click the file to open it. When open, mark the complete coding andpress “Ctrl” and “C”. Then click in line 1 of the Logic Script editor andpress “Ctrl” and “V”. Then have a look at the coding.

Figure 407: Logic Script for Allocation Exercise

Then, click “Validate”, then “Save”, and then “Close”. Click “Return toLogic Scripts”. Close the .txt file by clicking File → Close.

3. Log off from your current connection and log on again to the same connectionwith environment BPC420_## and model D_PLAN##. This is necessary toreceive the new Entity master data. Then, on the EPM tab, change the dimensionmember selections as follows:

Dimension Member

CATEGORY FORECAST

ENTITY NODE_ALLOCATION

Continued on next page

514 © 2011 SAP AG. All rights reserved. 2011

Page 531: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

PRODUCT2 NONE

P_ACCT ALLOCATION_NODE

INPUTCURRENCY EUR

TIME 2011.001

MEASURES PERIODIC

Then, you have to create a new input form. Take “Input Form with NestedRows.XLTX”. Then, select “Refresh Selected Report”. “Edit Report” as follows:- The Entity row should “only” contain members: “SENDER”, “RECEIVER_1”and “RECEIVER_2”. Make sure that “Member only” is selected.- The P_ACCT row should “only” contain members: “ORIGINAL_ACCOUNT”and “ALLOC_KEY_SQM”. Make sure that “Member only” is selected.- The Time column should “only” contain member: “2011.001”. Make sure that“Member only” is selected.

“Refresh Selected Report” and then save your input form to the Input Schedules→ BPC420-## folder. The file name should be: “IS_ALLOCATION”. Enter thefollowing source data and distribution keys and then save the data and refreshthe workbook in one step and leave the input form open.

Figure 408: Source Data for Allocation and Distribution Keys

a) Within your Excel Interface, on the EPM tab, click “LOG OFF”. Then,click “LOG ON” and then in the “EPM - Logon” pop-up, click the greybutton with the three dots at the right hand side and then you will be inthe “EPM - Connection Manager” pop-up. Mark your connection forenvironment BPC420_## with model D_PLAN## and then click “OK”.In the next pop-up, type your User Name and Password and then click“LOG ON”. If an input schedule is open, close it via Office Button →CLOSE. Then, change the dimension member selections as given in theexercise. To change the selections, navigate as follows (only explainedhere for CATEGORY as an example): Click the black triangle to the right

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 515

Page 532: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

of the dropdown box for CATEGORY. The drop down box line can befound under the ribbon section in the “EPM Context” line. Click at thetriangle and select “Select Other Members...”. In the next pop-up, “EPM -Member Selector”, first click at the black triangle to the right of the “SelectMember Names to Display.” button. In the subsequent pop-up, click “ID”.Then click “FORECAST” and then select “OK”. When you have done theselections for all dimension members of the above table, use one of thedelivered input forms to create your own input form. Navigate as follows:Open → Open Server Root Folder... → Company → Input Schedules →Templates and click template “Input Form with Nested Rows.XLTX”. Thenclick “Open”. Then click Refresh → Refresh Selected Report. Click a cellof your choice within your input schedule and then click “Edit Report”. Inthe “EPM - Report Editor”, navigate to the “Row Axis Dimensions” andthen click “Entity”. A pop-up “EPM - Member Selector” appears and here,in the “Selected Members” section, click “Context (Node Allocation)” andthen click the blue arrow to remove this selection. Then, on the left-handside, open the “Node_Allocation” and the subnodes “Node Receiver forAllocation” and “Node Sender for Allocation” using the “+” signs. Then,make sure that “Member Only” is selected in the lower drop down box.

Hint: To get the “Member only” selection you might have first flaga node member and then select “Member Only” in the dropdownbox.

Flag “Sender for Allocation” and “Receiver No1 for Allocation” as well as“Receiver No 2 for Allocation”. Then, click the blue arrow to move thethree members in the “Selected Members” section. Click “OK”. Thenclick “P_ACCT” and, in the next pop-up, remove “Context (AllocationNode)” from the “Selected Members” section with the help of the bluearrow. Then navigate to the “Allocation Node” member on the left handside, open it via the “+” and then make sure that “Member Only” is selectedin the lower drop down box. Then, flag “ORIGINAL_ACCOUNT” and“ALLOC_KEY_SQM” and then use the blue arrow to move the membersto the “Selected Members” section. Then click “OK”.The last step is to click “TIME” in the “Column Axis Dimensions” section.When done, mark “Context (2011.JAN)” in the “Selected Members” sectionand use the blue arrow to remove the selection. Then, on the left hand side,open node “2011.Total” and subnode “2011.Q1” and then flag “2011.Jan”.Make sure that “Member only” is selected in the lower dropdown box.Then, press the blue arrow to move the selection in the “Selected Members”section. Click “OK” three times. Then, navigate as follows: Refresh →

Continued on next page

516 © 2011 SAP AG. All rights reserved. 2011

Page 533: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Refresh Selected Report. Finally, click as follows: Save → Save to ServerRoot Folder... → Company → Input Schedules → BPC420-##. In the “FileName:” section, enter “IS_ALLOCATION” and then press “Save”. Enterthe data given in the above screenshot and then select Save Data → Saveand Refresh Workbook Data. Leave the input form open.

4. Since we want a central execution for the allocation, we have to create a newpackage called “PACKAGE TO EXECUTE ALLOCATIONS” that includes the“/CPMB/ALLOCATION” process chain and refers to the “ALLOCATON.LGF”logic file. The dynamic script logic for this package is delivered in the“ALLOCATION PARAMETERS.TXT” file that can be found as follows: Start→ My Documents → My Documents → BPC420 → BPC420-## → Logic.When the coding is entered, check it. Then close your .txt file.

a) Click the “Data Manager” tab and then select Organize → OrganizePackage List. Click Company → BPC420-## and then right-click in theyellow “Package Name” section and select “Add Package”. A pop-upcomes up, here enter “PACKAGE TO EXECUTE ALLOCATIONS” as“Package Name” and “Description”. Flag “User Package” and “AdminPackage”. Then, click “Select” and in the next pop-up click at “BusinessPlanning&Consolidation: Script Logic”. On the right-hand side in the“Process Chain” section, click “/CPMB/ALLOCATION” and then click“OK”. After that, click “Add”. Then mark your new package, right-clickand select “Modify Package”. In the next pop-up, click “Advanced” andthen open your “ALLOCATION PARAMETERS.TXT” file as described inthe exercise. When found, double-click it. Mark the coding and press “Ctrl”and “C”. Then, navigate in the dynamic script editor and mark the codinghere. Then, select “Ctrl” and “V”. Check your coding. It should carry your“ALLOCATION.LGF file in the last Task line. This time the logic file iscard coded! Compare the following screenshot for your coding:”

Figure 409: Dynamic Script Logic Coding in Allocation Exercise

Then select “OK”, then “Save” twice and then “Close”. Also close your.txt file by clicking File → Close.

5. Now, let's execute the “PACKAGE TO EXECUTE ALLOCATIONS” for thefollowing selections:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 517

Page 534: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Dimension Member

CATEGORY FORECAST

ENTITY <ALL>

PRODUCT2 NONE

P_ACCT <ALL>

INPUTCURRENCY EUR

TIME 2011.001

When you have run it, have a look at the “View Status” if your we successful andcheck the “Package Log” and “Formula Log”. Finally, navigate to your InputForm and “Refresh Selected Report”. You should get the following result:

Figure 410: Allocation Example: Results after Distribution

Continued on next page

518 © 2011 SAP AG. All rights reserved. 2011

Page 535: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Leave the input form open.

a) Within the Data Manager tab, click Run Package → Run Package →Company → BPC420-##. Then, click your “PACKAGE TO EXECUTEALLOCATIONS” and then click “Run”. In the next pop-up, enter theselections given in the table in the exercise. Here, we explain what to dofor Category. Navigate to the “Add” button for “Category” and then, in thenext pop-up, click the black triangle next to the button “Select MemberNames to Display.”. Then select “ID” and then flag “FORECAST”. Makesure that “Member Only” is selected in the lower dropdown box and thenpress the blue arrow to move the selection into the right section. Then, click“OK”. Execute the selections for the other dimensions as given in the uppertable and then select “Next”. Leave “Run” flagged and then press “Finish”and then “OK”. Click “View Status” and then mark your Status log lineand then click “Detail”. In the “Detail Log”, first click “Package Log”and then the “Formula Log” and have a look at the protocol. Then click“Close” three times. Click your EPM tab and then navigate as follows:Refresh → Refresh Selected Report. Compare your results to those in theabove screenshot. Leave the input form open.

6. As you could see from the last screenshot, the source value 2000 for theSender entity is still 2000 even after distribution. Now, we want the sendervalue to be set to zero after allocation! This is possible if you change the“ALLOCATION.LGF” logic script file after *ENDALLOCATION and before*COMMIT as follows:

*WHEN ENTITY

*IS SENDER

*REC(EXPRESSION=0,P_ACCT=ORIGINAL_ACCOUNT)

*ENDWHEN

Execute the changes and validate and then save your coding. Close the LogicScript Editor afterwards but stay in the list of logic script models.

Navigate back to Excel. Here, it is necessary to “LOG OF” and then to “LOGON” so that the system can read the new coding. When logging on, use yourconnection for environment BPC420_## and model D_PLAN##.Then, in your input form, delete all data and save and refresh. Then, enter thefollowing data in your input form and save and refresh again:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 519

Page 536: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 411: Source Data for Allocation and Distribution Keys

Then, re-execute your “PACKAGE TO EXECUTE ALLOCATIONS” for thesame selections as before. Do not check the View Status but immediately“Refresh Selected Report”. You should get the following results :

Figure 412: Allocation Example: Results after Distribution - RevisedCoding

Continued on next page

520 © 2011 SAP AG. All rights reserved. 2011

Page 537: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Defining Logic Scripts for Allocation

Finally, delete all data and close the input form but stay in Excel.

a) Navigate back to the Administration Web Client and here you shouldalready be in the Rules → Logic Scripts section and see all models. Withmodel D_PLAN## marked, click “Open” and then “ALLOCATION.LGF”.The allocation editor comes up. Navigate to line 16, which should bebeneath the following coding line: “*ENDALLOCATION” and entercoding as given in the exercise. After each coding line, press the “Enter”key. Finally, click “Validate”, then “Save”, and “Close”. Then click thelink “Return to Logic Scripts”.Navigate back to Excel and, on the EPM tab, click “LOG OFF” then “LOGON” and, in the next pop-up, click the grey button with the three dots andthen click your connection and “OK”. In the next pop-up, enter your UserName and Password and click “Logon”. Set 0 for all values in your inputform and then click Save Data → Save and Refresh Workbook Data. Thenselect “Yes”, then “OK”. Then enter the data given in the screenshot andselect Save Data → Save and Refresh Workbook Data again. Then, click“Yes” and “OK”.Click the “Data Manager” tab and navigate as follows: Run Package→ Run Package → Company → BPC420-##. Click “PACKAGE TOEXECUTE ALLOCATIONS” and then click “Run”. The selections for therun should already be in the package mask. If not, select the same membersas given earlier. Then, click “Next”. Keep “Run” flagged and then select“FINISH” and then “OK”. Then click “Close”.Finally, click the EPM tab and then click Refresh → Refresh SelectedReport. Compare the upper screenshot and check if the Sender value is 0now.Set all values to 0 and then select Save Data → Save and Refresh WorkbookData. Close the input form via Office Button → Close. Keep Excel open.

2011 © 2011 SAP AG. All rights reserved. 521

Page 538: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Lesson Summary

You should now be able to:• Discuss the concept of allocation in BO PC• Define the logic elements for Allocation• Execute an Allocation

522 © 2011 SAP AG. All rights reserved. 2011

Page 539: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Lesson: Integrating Logic Scripts and ABAP

Lesson OverviewIn this lesson, we see where ABAP can be used within Planning and Consolidation.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Discuss function modules in BO PC• Describe the integration between ABAP and BO PC

Business ExampleYou are interested in ABAP integration within BO PC.

Logic Scripts and BAdIs

Figure 413: Script Logic and BadIs

2011 © 2011 SAP AG. All rights reserved. 523

Page 540: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

It is possible to use ABAP to code your business logic and then make a reference fromthe Logic Script Editor to the relevant BAdI Filter. The necessary syntax together withan example is described in the above screenshot. When the BAdI is created and thefilter value added in the Logic Script editor, you can decide if you want an online orcentral execution of the BAdI.

Hint: Logic Scripts refer to the filter value of the BAdI, not to the technicalname of the BAdI.

Note: BAdI is an acronym for Business Add-in. It is an SAP enhancementtechnique based on ABAP Objects. BAdIs are a very effective way to handlevery specific use cases that would not be covered by the standard producteffectively.

ABAP stands for Advanced Business Application Programming.

For instructions about implementing an SAP Business Add-In, seethe ABAP online help at: http://help.sap.com/saphelp_nw70/help-data/en/32/a83942424dac04e10000000a1550b0/content.htm .

For instructions on how to pass parameters to Custom Logic BAdi usingSTART_BADI:https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/li-brary/uuid/20f4252d-98ca-2b10-e689-f85085ae2d12.

Figure 414: Logic Keywords – START_BADI - END_BADI

524 © 2011 SAP AG. All rights reserved. 2011

Page 541: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

BAdIs and Data Upload

Figure 415: Transformation File: Start Routine and End Routine for BAdiI

During data upload, it is possible to run a start or end routine that refers to the filtervalue of a BAdI. Doing so, it is possible to exclude data sets with, for example, aspecial language, or you could prevent loading of data sets that carry an amountbigger than x million Euro.

You define a start routine and end routine within the *OPTIONS section of yourtransformation file and refer to the filter value of the relevant BAdi. The generalsyntax is as follows:STARTROUTINE=BADI_FILTER1ENDROUTEINE=BADI_FILTER2

Note: All BAdI implementations cannot be executed, if one is not active.

2011 © 2011 SAP AG. All rights reserved. 525

Page 542: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

526 © 2011 SAP AG. All rights reserved. 2011

Page 543: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Exercise 9: Integrate ABAP in BO PC

Exercise ObjectivesAfter completing this exercise, you will be able to:• Assign a Function Module to a BO PC Logic Script and execute it online• Use an ABAP Start Routine in a BO PC Data Import

Business ExampleYou want to analyze how to integrate ABAP in BO PC. You can refer to ABAPcoding, either in Logic Scripts or in the *OPTIONS section of Transformation files,which means during data upload.

Task 1:Call a BAdI during online execution of Logic Scripts

1. Navigate to your backend system and have a look at the BAdI that is alreadyimplemented for our exercise scenario.In general, two pieces of information are important for the ABAP-LOGICSCRIPT integration:- The technical name of the Filter Value of the BADI- The business logic implemented with the ABAP coding.

Let's investigate these important issues. With transaction SE19, youwill enter the BAdI builder. In the “Edit Implementation” section, keep“New BAdI” flagged and then enter the “Enhancement Implementation”“Z_STUDENT_50_BADI_ABAP_SCRIPT”. With the “Display” button, have acloser look at the coding.

Hint: If you create your own BAdI, you have to enterUJ_CUSTOM_LOGIC as the Enhancement Spot!

Navigate to the “Enh. Implementation Elements” tab and have alook at the “Filter Val.” item, which you can find in the left “BAdIImplementations” section. Verify for yourself that the Filter name for this BAdIis:“Z_STUDENT_50_VALUE1_FOR_BADI”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 527

Page 544: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 416: Filter name of BAdI

Then, have a closer look at the “Implementing Class” of the BAdI, which can befound in the left “BAdI Implementation” section. Opening it, you will see threemethods. The third one “IF_UJ_CUSTOM_LOGIC~LOGIC” should be openedto have a look at the coding in line 94:

Figure 417: ABAP coding: Business Logic

As you can see, the business logic wants a sum up of P_ACCT memberCE0004010 + CE0004020. The result will be written in P_ACCT memberCE0004520. Leave the BAdI screen and return to the screen after system log on.

2. Let's return to the Administration Web Client, which should already be open.Here, create a new logic file called “LOGIC_16” for environment BPC420_##with model D_PLAN## and enter the following coding in the Logic Script Editorthat refers to the Filter value of our BAdI:

*START_BADI Z_STUDENT_50_VALUE1_FOR_BADI

*END_BADI

Validate, Save and Close your Logic Script Editor and then include the LogicScript file into the DEFAULT.LGF include.

Note: If necessary, first click at the “UNCOMMENT” button.

Continued on next page

528 © 2011 SAP AG. All rights reserved. 2011

Page 545: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Validate and Save. Afterwards, close and press “Return to Logic Scripts”.

3. Navigate to the Excel Interface. Here, the EPM tab should be open andthe connection should also refer to environment BPC420_## with modelD_PLAN##. First, set the correct selections according to the following table:

Dimension Dimension Member

CATEGORY BUDGET

ENTITY STORE1

INPUTCURRENCY CHF

PRODUCT2 NONE

P_ACCT CE0001000

TIME 2012.Q1

MEASURE PERIODIC

Open input form “IS_TEST_SCRIPT_LOGIC” and then “Refresh SelectedReport”. Then “Edit Report” and set “ID - Description” for the “P_ACCT” fieldvia button “Select Member Names to Display.” Then, make sure that “MemberOnly” is selected in the lower dropdown box and then only select “CE0004010”,then “CE0004020” and “CE0004520”. “Refresh Selected Report” and finallysave your input form as “IS_TEST_SCRIPT_LOGIC_ABAP”.Enter “5” as test data for 2012.JAN for “CE0004010” and “CE0004020” andthen save your data and refresh it in one step. As a result, you should get “10”for “CE0004520”.

Figure 418: ABAP online result

Then, set all values to 0 and save and refresh. Close the input form but stay inExcel. In the Administration Web Client, “COMMENT” the DEFAULT.LGF formodel D_PLAN## and Validate, Save, and Close afterwards. Use link “Returnto Logic Scripts”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 529

Page 546: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Task 2:Use a Start Routine during Flat Upload

1. Navigate to your backend system and have a look a the BAdI that is alreadyimplemented for our exercise scenario.In general, two pieces of information are important for the ABAP-LOGICSCRIPT integration:- The technical name of the Filter Value of the BADI- The business logic implemented with the ABAP coding.

Let's find out these important issues. With transaction SE19, you willenter the BAdI builder. In the “Edit Implementation” section keep“New BAdiI” flagged and then enter the “Enhancement Implementation”“Z_STUDENT_50_BADI_SROUTINE”. With the “Display” button, have acloser look at the coding.

Hint: If you create your own BAdI, you have to enter UJD_ROUTINEas the Enhancement Spot!

Navigate to the “Enh. Implementation Elements” tab and have alook at the “Filter Val.” item which you can find in the left “BAdIImplementations” section. Verify for yourself that the Filter name for this BAdIis:“Z_STUDENT_50_FILTER_SROUTINE”.

Figure 419: Filter name of BAdI

Then, have a closer look at the “Implementing Class” of the BAdI which can befound in the left “BAdI Implementation” section. Opening it, you will see onemethod: “IF_UJD_ROUTINE~RUNROUTINE”. Double-click this method andsee line 132 for the business logic and line 165 for message class information:

Continued on next page

530 © 2011 SAP AG. All rights reserved. 2011

Page 547: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Figure 420: ABAP Coding: Business Logic

As you can see, the business logic checks - with the help of the Start Routine -during data upload if the Amount is bigger than 2000 or not.

The section in line 165 refers to a message class “ZDAVY” that contains amessage number 001 that is qualified as an E for error message. Close the BAdIand then have a look the message class and message number mentioned. Usetransaction se91 for it. Check the error message text that will come up when thedata sets carry an amount bigger than 2000:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 531

Page 548: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 421: Text of Message Class ZDAVY with Message Number 001

As you can see: if this condition is fulfilled, the system will send an errormessage and not load the relevant transaction data. Close the message classeditor and return to your backend system after system logon.

2. In the Interface for Excel, let's simulate a data import via flat fileto check the Startroutine. So navigate back to Excel and, in theData Manager tab, first load the .txt file on your server. The file“Z_STUDENT_##_TD_FILE_FOR_STARTROUTINE.TXT” can be found asfollows: My Documents → My Documents → BPC420 → BPC420-##. Whensaved to the server, have a look at the data sets using the Data Preview functionin BO PC. The file should look as follows:

Figure 422: Flat File for Start Routine Example

Continued on next page

532 © 2011 SAP AG. All rights reserved. 2011

Page 549: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

As you can see, no harmonization is needed. To check the start routine, createa transformation file and enter the following coding line as last line in the*OPTIONS section:STARTROUTINE=Z_STUDENT_50_FILTER_SROUTINEand then select “Validate & Process Transformation File...”. In the next pop-up,select “Transaction Data from Flat File” and select the flat file you had justloaded on the server. When asked to save the transformation file, name it“TRANSFORMATIONFILE_FOR_STARTROUTINE”. Check the Status Logand then flag “Output File” and then flag “Rejected List”. You should see thefollowing:

Figure 423: Start Routine: Status Log

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 533

Page 550: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 424: Start Routine: Rejected List

Finally, cancel the Validation and Processing, close the transformation file, andleave the Excel screen open.

534 © 2011 SAP AG. All rights reserved. 2011

Page 551: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Solution 9: Integrate ABAP in BO PCTask 1:Call a BAdI during online execution of Logic Scripts

1. Navigate to your backend system and have a look at the BAdI that is alreadyimplemented for our exercise scenario.In general, two pieces of information are important for the ABAP-LOGICSCRIPT integration:- The technical name of the Filter Value of the BADI- The business logic implemented with the ABAP coding.

Let's investigate these important issues. With transaction SE19, youwill enter the BAdI builder. In the “Edit Implementation” section, keep“New BAdI” flagged and then enter the “Enhancement Implementation”“Z_STUDENT_50_BADI_ABAP_SCRIPT”. With the “Display” button, have acloser look at the coding.

Hint: If you create your own BAdI, you have to enterUJ_CUSTOM_LOGIC as the Enhancement Spot!

Navigate to the “Enh. Implementation Elements” tab and have alook at the “Filter Val.” item, which you can find in the left “BAdIImplementations” section. Verify for yourself that the Filter name for this BAdIis:“Z_STUDENT_50_VALUE1_FOR_BADI”.

Figure 425: Filter name of BAdI

Then, have a closer look at the “Implementing Class” of the BAdI, which can befound in the left “BAdI Implementation” section. Opening it, you will see threemethods. The third one “IF_UJ_CUSTOM_LOGIC~LOGIC” should be openedto have a look at the coding in line 94:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 535

Page 552: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 426: ABAP coding: Business Logic

As you can see, the business logic wants a sum up of P_ACCT memberCE0004010 + CE0004020. The result will be written in P_ACCT memberCE0004520. Leave the BAdI screen and return to the screen after system log on.

a) Within your backend system, in the screen after system logon, enterthe “Command field” and enter “SE19”. Then, press “Enter” on yourkeyboard. Navigate to the “Edit Implementation” section, leave “NewBAdI” flagged and fill in “Z_STUDENT_50_BADI_ABAP_SCRIPT”for the “Enhancement Implementation” field. Then, click the“Display” button. On the next screen, click the “Enh. ImplementationElements” tab and then navigate to the left hand section called“BAdI Implementations” and click the black triangle next to the“Z_STUDENT_50_BADI_ABAP_SCRIPT” node. Then, double-click“Filter Val.” two lines below “Z_STUDENT_50_BADI_ABAP_SCRIPT”.On the right-hand side (Filter Values), make the “Value 1” column a littlebit larger so that you can see the complete technical name of the Filtervalue. It should be: “Z_STUDENT_50_VALUE1_FOR_BADI”. Checkthe screenshot in the exercise first.Then, double-click “Implementing Class” in the left section called“BAdI Implementations”. On the right hand side (Filter Values),three methods (blue color) are offered. Double-click method“IF_UJ_CUSTOM_LOGIC~LOGIC” and the coding comes up. Scrolldown to line 94 and have a look at the coding. Check the second screenshotof the exercise. After that, click “BACK” three times and return to screenafter system logon.

2. Let's return to the Administration Web Client, which should already be open.Here, create a new logic file called “LOGIC_16” for environment BPC420_##with model D_PLAN## and enter the following coding in the Logic Script Editorthat refers to the Filter value of our BAdI:

Continued on next page

536 © 2011 SAP AG. All rights reserved. 2011

Page 553: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

*START_BADI Z_STUDENT_50_VALUE1_FOR_BADI

*END_BADI

Validate, Save and Close your Logic Script Editor and then include the LogicScript file into the DEFAULT.LGF include.

Note: If necessary, first click at the “UNCOMMENT” button.

Validate and Save. Afterwards, close and press “Return to Logic Scripts”.

a) Within your Administration Web Client, make sure you are logged onto environment BPC420_##. On the “Administration” tab, avigate asfollows: Rules → Logic Scripts. Mark model D_PLAN## and select“Open”. On the next screen, click “New” and, in the next pop-up, enter“LOGIC_16”, then press “Create”. Click in line 1 and type the two codinglines mentioned in the exercise table. Then, click “Validate”, then “Save”and then press “Close”. On the next screen, click “DEFAULT.LGF” andfirst, click “UNCOMMENT” if necessary and then exchange “*INCLUDELOGIC_2.LGF” with “*INCLUDE LOGIC_16.LGF”. Then click“Validate”, then “Save”, and then “Close”. Then click “Return to LogicScripts”. You should now be in the list of models for which you couldcreate logic files.

3. Navigate to the Excel Interface. Here, the EPM tab should be open andthe connection should also refer to environment BPC420_## with modelD_PLAN##. First, set the correct selections according to the following table:

Dimension Dimension Member

CATEGORY BUDGET

ENTITY STORE1

INPUTCURRENCY CHF

PRODUCT2 NONE

P_ACCT CE0001000

TIME 2012.Q1

MEASURE PERIODIC

Open input form “IS_TEST_SCRIPT_LOGIC” and then “Refresh SelectedReport”. Then “Edit Report” and set “ID - Description” for the “P_ACCT” fieldvia button “Select Member Names to Display.” Then, make sure that “Member

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 537

Page 554: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Only” is selected in the lower dropdown box and then only select “CE0004010”,then “CE0004020” and “CE0004520”. “Refresh Selected Report” and finallysave your input form as “IS_TEST_SCRIPT_LOGIC_ABAP”.Enter “5” as test data for 2012.JAN for “CE0004010” and “CE0004020” andthen save your data and refresh it in one step. As a result, you should get “10”for “CE0004520”.

Figure 427: ABAP online result

Continued on next page

538 © 2011 SAP AG. All rights reserved. 2011

Page 555: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Then, set all values to 0 and save and refresh. Close the input form but stay inExcel. In the Administration Web Client, “COMMENT” the DEFAULT.LGF formodel D_PLAN## and Validate, Save, and Close afterwards. Use link “Returnto Logic Scripts”.

a) Within the Excel interface, make sure that you are on the EPM tab.Navigate to the “EPM Context” line and exchange the selections withinthe dropdown boxes with those given in the upper table. For example,if you want to set “CATEGORY=BUDGET”, click the black triangle tothe right of the CATEGORY dropdown box and then click “Select otherMembers...”. Then, click “Select Member Names to Display.” and then“ID”. Mark “BUDGET” and then click “OK”. The same way, select theother members according to the upper table. Then, navigate as follows:Open → Open Server Root Folder... → Company → Input Schedules →BPC420_## and then click “IS_TEST_SCRIPT_LOGIC”. Then, click“Open” and navigate as follows: Refresh → Refresh Selected Report.Then, click a cell of your choice within your input form and then click“Edit Report”. In the “Row Axis Dimensions” section, click “P_ACCT”and, in the next editor, click the black triangle next to the “Select MemberNames to Display.” button. Click “ID”. Then, open the “DimensionMembers” hierarchy on the left hand side of the screen and open nodeCE0001000 -> CE0004000 and node CE0004500 and flag “CE0004010”,“CE0004020” and “CE0004520”. In the lower dropdown box, click theblack triangle and select “Member Only”. Then, click the blue arrowto shift the three selections to the right hand side (Selected Members).On the right hand side, mark “Context (CE0001000)” and click the bluearrow to remove the selection. Then, click “OK” twice. Then, navigate asfollows: Refresh → Refresh Selected Report and then save your input form:Save→ Save to Server Root Folder... → Company → Input Schedules →BPC420_##. In the field, “File Name:”, enter the following denomination:“IS_TEST_SCRIPT_LOGIC_ABAP”. Then click “Save”.For 2012.Jan, enter 5 for CE0004010 and 5 for CE0004020. Then selectSave Data → Save and Refresh Workbook Data. Select “Yes” and then“OK”. Check if 10 is the result for CE0004520 and then set all data to 0and then select Save Data → Save and Refresh Workbook Data. Then,select Office Button → Close. Stay in Excel.Navigate back to the Administration Web Client. You should see allmodels for Rules → Logic Scripts. Mark your model D_PLAN## andthen click “Open”. Click “DEFAULT.LGF” and click in line 1. Then,press “COMMENT” and click “Validate”, then “Save ” and “Close”. Press“Return to Logic Scripts”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 539

Page 556: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Task 2:Use a Start Routine during Flat Upload

1. Navigate to your backend system and have a look a the BAdI that is alreadyimplemented for our exercise scenario.In general, two pieces of information are important for the ABAP-LOGICSCRIPT integration:- The technical name of the Filter Value of the BADI- The business logic implemented with the ABAP coding.

Let's find out these important issues. With transaction SE19, you willenter the BAdI builder. In the “Edit Implementation” section keep“New BAdiI” flagged and then enter the “Enhancement Implementation”“Z_STUDENT_50_BADI_SROUTINE”. With the “Display” button, have acloser look at the coding.

Hint: If you create your own BAdI, you have to enter UJD_ROUTINEas the Enhancement Spot!

Navigate to the “Enh. Implementation Elements” tab and have alook at the “Filter Val.” item which you can find in the left “BAdIImplementations” section. Verify for yourself that the Filter name for this BAdIis:“Z_STUDENT_50_FILTER_SROUTINE”.

Figure 428: Filter name of BAdI

Then, have a closer look at the “Implementing Class” of the BAdI which can befound in the left “BAdI Implementation” section. Opening it, you will see onemethod: “IF_UJD_ROUTINE~RUNROUTINE”. Double-click this method andsee line 132 for the business logic and line 165 for message class information:

Continued on next page

540 © 2011 SAP AG. All rights reserved. 2011

Page 557: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Figure 429: ABAP Coding: Business Logic

As you can see, the business logic checks - with the help of the Start Routine -during data upload if the Amount is bigger than 2000 or not.

The section in line 165 refers to a message class “ZDAVY” that contains amessage number 001 that is qualified as an E for error message. Close the BAdIand then have a look the message class and message number mentioned. Usetransaction se91 for it. Check the error message text that will come up when thedata sets carry an amount bigger than 2000:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 541

Page 558: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 430: Text of Message Class ZDAVY with Message Number 001

Continued on next page

542 © 2011 SAP AG. All rights reserved. 2011

Page 559: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

As you can see: if this condition is fulfilled, the system will send an errormessage and not load the relevant transaction data. Close the message classeditor and return to your backend system after system logon.

a) Within your backend system, in the screen after system logon, enterthe “Command field” and enter “SE19”. Then press “Enter”. Navigateto the “Edit Implementation” section, leave “New BAdI” flagged andfill in “Z_STUDENT_50_BADI_SROUTINE” for the “EnhancementImplementation” field. Then, click the “Display” button. On the nextscreen, click the “Enh. Implementation Elements” tab and then navigateto the left hand side section called “BAdI Implementations” and click theblack triangle next to the “Z_STUDENT_50_BADI_SROUTINE” node.Then, double-click “Filter Val.” two lines below. On the right hand side(Filter Values), make the “Value 1” column a little bit larger so that youcan see the complete technical name of the Filter value. It should be:“Z_STUDENT_50_FILTER_SROUTINE”. Check first screenshot of theexercise.Then, double-click “Implementing Class” in the left section called“BAdI Implementations”. On the right hand side (Filter Values),one method comes up (blue color). Double-click this method“IF_UDJ_ROUTINE~RUNROUTINE” and the coding comes up. Scrolldown to line 132 for the business logic and line 165 for message classinformation: Check the second screenshot of the exercise. After that, click“BACK” three times and return to screen after system logon.Navigate to the command field and enter SE91 and then click “Enter” onyour keyboard. Enter “ZDAVY” for the “Message Class” field and “001”for the “Number” field. Then click “Display”. Check the third screenshotof the exercise to see the message text. Click “BACK” twice to return tothe screen after system logon.

2. In the Interface for Excel, let's simulate a data import via flat fileto check the Startroutine. So navigate back to Excel and, in theData Manager tab, first load the .txt file on your server. The file“Z_STUDENT_##_TD_FILE_FOR_STARTROUTINE.TXT” can be found asfollows: My Documents → My Documents → BPC420 → BPC420-##. Whensaved to the server, have a look at the data sets using the Data Preview functionin BO PC. The file should look as follows:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 543

Page 560: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 431: Flat File for Start Routine Example

As you can see, no harmonization is needed. To check the start routine, createa transformation file and enter the following coding line as last line in the*OPTIONS section:STARTROUTINE=Z_STUDENT_50_FILTER_SROUTINEand then select “Validate & Process Transformation File...”. In the next pop-up,select “Transaction Data from Flat File” and select the flat file you had justloaded on the server. When asked to save the transformation file, name it“TRANSFORMATIONFILE_FOR_STARTROUTINE”. Check the Status Logand then flag “Output File” and then flag “Rejected List”. You should see thefollowing:

Figure 432: Start Routine: Status Log

Continued on next page

544 © 2011 SAP AG. All rights reserved. 2011

Page 561: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Figure 433: Start Routine: Rejected List

Finally, cancel the Validation and Processing, close the transformation file, andleave the Excel screen open.

a) Within Excel, click the “Data Manager” tab and then click “UploadData”. In the next pop-up, click the “Browse” button and then click asfollows: My Documents → BPC420 → BPC420-##. Click your file“Z_STUDENT_##_TD_FILE_FOR_STARTROUTINE.TXT” and thenpress “Open”, then “Upload” and when the “Save” pop-up appears,navigate as follows: Company → Examples and, as you do not want tochange the name of the file, select “Save” and then “OK”.Then, navigate as follows: Data Preview → Company → Examples. Clickyour file and then press “Open”. On the next screen, select “Delimited”from the dropdown box. Then, a second dropdown box comes up. Here,keep “COMMA” selected. Have a look at the data in the file and then press“Cancel”. Compare exercise screenshot.Then, navigate as follows: Transformation File → New TransformationFile... and mark line 12. Right-click and then select “Insert”. In this newline, enter the following coding that refers to the filter of the BAdI:STARTROUTINE=Z_STUDENT_50_FILTER_SROUTINE

As a result, you should see the following:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 545

Page 562: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 434: Transformation File - Start Routine

Leave the file open. Then, click Transformation File → Validateand Process Transformation File..... In the next pop-up, keep“Transaction Data from Flat File” selected and for the “Data”field, click the grey button with the three dots. In the “Open”pop-up, navigate as follows: Company → Examples and thenclick “Z_STUDENT_##_TD_FILE_FOR_STARTROUTINE.TXT”,then select “Open”. Then click “Save” and, in the next pop-up,click Company → Examples. In the “File Name:” field, enter“Z_STUDENT_##_TD_FILE_FOR_STARTROUTINE” and select“Save”. Then, the system starts validating. When finished, have a lookat the Status Log and compare the first screenshot of the exercise task.Then, flag “Output File” and see the result of two data sets that can beloaded successfully. Then, flag “Rejected List” and see three rejected datasets. Also, compare the second screenshot of the exercise task. Then click“Cancel” and leave the validation and processing editor. Select OfficeButton → Close to close the transformation file. Leave the Excel screenopen.

546 © 2011 SAP AG. All rights reserved. 2011

Page 563: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Integrating Logic Scripts and ABAP

Lesson Summary

You should now be able to:• Discuss function modules in BO PC• Describe the integration between ABAP and BO PC

2011 © 2011 SAP AG. All rights reserved. 547

Page 564: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Lesson: Introducing Member Formulas

Lesson OverviewIn this lesson, you will learn about member formulas, which represent calculationsthat are resolved at runtime.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Identify the possibility of on the fly calculation• Create Member Formulas

Business ExampleYou want to become familiar with the technique of Member Formulas.

Member Formulas

Figure 435: Member Formula Editor

548 © 2011 SAP AG. All rights reserved. 2011

Page 565: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Dimension member formulas enable calculations that are resolved at runtime in anymodel that uses this dimension.You can create Member Formulas via the following menu path in the AdministrationWeb Client: Administration Tab Card → Rules → Member Formulas.The upper slide shows the Member Formula Editor. A big advantage of this editoris that you do not need to remember dimension members, since a dropdown comboand a list box will help you choose the right members.The execution of member formulas can be done as follows when saving data to theserver: Excel → EPM tab card → Save Data → Save and Refresh Workbook Data orExcel → EPM tab card → Save Data → Save and Refresh Worksheet Data.If no data has to be saved, you could execute the formula as follows: RefreshData → Refresh Selected Report.

Figure 436: Member Formulas - Prerequisite

To use member formulas on a dimension, you need to enable the Member Formulafeature for that dimension.A flag can be set inside the dimension definition: It allows you to define if you want toenable or disable member formulas on a particular dimension:

- The syntax for dimension member formulas requires a square bracket around thedimension and the member and separated by a period.

- The only exception is with the account dimension, where only the dimensionmember is needed.

Standard arithmetic functions are available, such as addition (+), subtraction (-),multiplication (*) and division (/), as are the MDX keywords supported by SAPNetWeaver BW.

2011 © 2011 SAP AG. All rights reserved. 549

Page 566: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

The BO PC Shared Query Engine (SQE) uses NetWeaver BW's MDX engineto resolve the value of dimension member formulas, and using a high number ofdimension member formulas, and/or using dimension member formulas in models withvery large data volumes, can cause significant performance degradation. The basis forMember Formulas is the multidimensional expression language called MDX but onlya subset of all the MDX instructions is available inside EPM member formulas.Because of the performance implications, dimension member formulas should beused with caution. Any calculations that can be stored as a record in the applicationshould be, and dimension member formulas should be used only for calculationsthat must be derived at run time.Apart from avoiding dimension member formulas completely, the followingguidelines may also be helpful when designing an application:

• Try to limit the number of formulas being used to as few as possible. Anacceptable number of formulas depends upon various parameters like hardwarecapacity, data volume, number of concurrent users, number of formulas beingretrieved in a single request, and so on.

• Avoid formulas that need to be aggregated by a hierarchy. Managing suchaggregations is not only going to be very complex and error prone, but it willalso drastically increase the number of formulas required, and therefore can leadto a significant performance overhead.

• Try to avoid having dimension member formulas on multiple dimensions (forexample, do not have formulas on say, the Account dimension and the Categorydimension, at the same time)

• Try to avoid highly complex formulas. As dimension member formulas supportMDX keywords, it is possible to write quite complex logic. It is also possible towrite a dimension member formula on one dimension, that also applies to anotherdimension (for example, if you wanted a new account that returned YOY SalesGrowth, you could create a member formula = (([ExtSales]/([ExtSales],PARAL-LELPERIOD([TIME].[LEVEL00],[TIME].[CURRENTMEMBER])) - 1) * 100.You can see that even though this formula is written on the Account dimension,it also refers to the Time dimension as well. These types of complexities can alsohave a negative impact to performance, so it is recommended to avoid complexformulas whenever possible.

• Consider using Excel formulas instead. In the BO PC for Excel client, thereare options such as including a blank column in the middle of a report, andthen having its values be resolved by entering a formula in Excel (and as youdrill up/down the hierarchy, and so on, the formulas will automatically adjustthe region you are working on). Using Excel formulas has both advantagesand disadvantages compared to dimension member formulas, but if you needto optimize performance and are using dimension member formulas, this maybe a suitable solution.

550 © 2011 SAP AG. All rights reserved. 2011

Page 567: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Figure 437: Solve Order and Formula Collision 1/2

Solve Order is similar to some reporting systems “Formula Collision” setting whenthere are formulas in both the rows and columns of a report.

“Solve Order” determines the order in which dimensions, members, calculatedmembers, custom rollups, and calculated cells are evaluated, and the order in whichthey are calculated. The lower the parameter value to higher the priority.

Hint: The SOLVE_ORDER parameter should be larger than 3, becauseBO PC uses SOLVE_ORDER 3 for the BO PC measure formula: PERIODIC,YTD, QTD. So if you do not set the SOLVE_ORDER parameter greater than3, unexpected value may be returned.

The upper slide shows the results when the Account3 formula is executed before theProduct3 formula.

2011 © 2011 SAP AG. All rights reserved. 551

Page 568: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 438: Solve Order and Formula Collision 2/2

In the upper example, the Product3 formula is executed before the Account3 formuladue to the solve order value.

Figure 439: Pros and Cons of Member Formulas

Benefits related to member formulas include:

• Speed – just like Excel formulas in worksheets, formulas defined in a dimensionare usually calculated fast.

• Consistency – the same logic is applied to a given member in any model whichuses the dimension.

552 © 2011 SAP AG. All rights reserved. 2011

Page 569: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Negative Aspects related to member formulas include:

• Member Formulas are not flexible because they apply to all models using thedimension.

• If you want to apply a member formula only to base level members, or want aformula to be used in only one model, you should use Logic Scripts.

• Member Formulas can affect retrieval performance if not used properly.

2011 © 2011 SAP AG. All rights reserved. 553

Page 570: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

To create and Execute Member Formulas

1. Within the Administration Web Client, navigate to the Dimension Membereditor and check if the flag “Allow Member Formulas” is set: Tab CardAdministration → Dimensions and Models → Dimensions. Mark thedimension that will get member formulas and then click “Edit Structure”.Having checked if the flag is set select “Close”.

Note: This flag can only be set during dimension creation and notafterwards.

2. On the Administration Tab, navigate as follows: Rules → MemberFormulas.

3. Mark the relevant “Formula for: Dimension” line. Then click “Open”.4. Then click “New” and, in the next pop-up, select the dimension member

that will carry the member formula. Doing so, click the white square iconon the right hand side of the white field “Formula for member:” .

5. Having selected the desired member, choose “OK”. Then, manually enterthe formula in the “Formula Syntax:” section. Then choose “Save” .

6. Mark your new member formula and click “Process”. If this is not possible,since “Process” is inactive, click the link “Return to Member Formulas”.

7. Mark the “Formula for: Dimension” line and then click “Process”.8. When all member formulas are created, navigate to the EPM tab card in

Excel, open your relevant input form for member formula testing, entersome data for the non-member formula carrying dimension members andselect Save Data → Save and Refresh Workbook Data or Save Data →Save and Refresh Worksheet Data. Have a look at the results.

9. If you change the solve order for some business reasons and want to seethe new member formula results for existing data you can get the results asfollows on the EPM tab card in Excel: Refresh Data → Refresh SelectedReport .

554 © 2011 SAP AG. All rights reserved. 2011

Page 571: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Exercise 10: OPTIONAL: Create MemberFormulas

Exercise ObjectivesAfter completing this exercise, you will be able to:• Practice creating and executing member formulas on the fly as data is refreshed

Business ExampleYou want to use formulas for on the fly calculation and influence the order ofexecution of these formulas.

Task:Create Member Formulas and execute them

1. To create member formulas, navigate to the Administration Web Client and forenvironment BPC420_## check within the structure of dimension “P_ACCT”and dimension “PRODUCT2” if “Allow Member Formulas” is flagged. Thisshould be the case for both dimensions.Then, navigate to the Member maintenance for PRODUCT2 and manuallymaintain the following members and their property values:

ID Descrip-tion

PROD-TYPE

SCA-LING

PARENTH1

PRODUCT10 PROD-UCT10

FOOD Y CON_ PET_ TYPE

PRODUCT20 PROD-UCT20

FOOD Y CON_ PET_ TYPE

PRODUCT30 PROD-UCT30

FOOD Y CON_ PET_ TYPE

Then, Save, Save and Process, and Close the editor. Check if the status icon forPRODUCT2 is green.Navigate to P_ACCT and check if members “ACCOUNT1”, “ACCOUNT2”,and “ACCOUNT3” already exist. This should be the case. Check if the statusicon for P_ACCT is green.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 555

Page 572: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

2. Now, two member formulas have to be maintained: one for PRODUCT30and one for ACCOUNT3 and - since both formulas can collide - the order ofexecution of both formulas also has to be maintained within the formulas.Define the following member formula for “PRODUCT30” of dimensionPRODUCT2:

[PRODUCT2].[PARENTH1].[PRODUCT10]+ [PRODUCT2].[PAR-ENTH1].[PRODUCT20]; SOLVE_ORDER=100

Save the member formula and then process it. Don't set the environment offlinewhen asked. Check if the formula has a green status. If not, click “Process” forPRODUCT2 in the Member Formulas list.

Then, define the member formula for “ACCOUNT3” of dimension P_ACCT:

IIF([P_ACCT].[PARENTH1].[ACCOUNT2]=0,NULL,[P_ACCT].[PAR-ENTH1].[ACCOUNT1]/[P_ACCT].[PARENTH1].[AC-COUNT2]);SOLVE_ORDER=5Save the member formula and then process it. Do not set the environment offlinewhen asked. Check if the formula has a green status. If not, click “Process” forP_ACCT in the Member Formulas list.

3. Now, we want to test the execution of member formulas. To do this, navigate toExcel and then to the EPM tab. Log off from your current connection and log onagain, because the new formulas can be used in Excel. The logon should connectyou to environment BPC420_## with model D_PLAN##.Then open input form “IS_TEST_SCRIPT_LOGIC_ABAP.XLSX”. In theselection dropdown box, for PRODUCT2 select “CON_PET_TYPE”, in thedropdown box for TIME select “2012.001”. “Refresh Selected Report”. Then“Edit Report” as follows:- Set “ACCOUNT1”, “ACCOUNT2”, and “ACCOUNT3” with “Member Only”in the “Selected Members” selection- Move TIME in the “Page Axis Dimensions” section.- Position “PRODUCT2” as only dimension in the “Column Axis Dimensions”section.- Set “PRODUCT10”, “PRODUCT20”, and “PRODUCT30” with “MemberOnly” in the “Selected Members” selection.Then “Refresh Selected Report”. Finally, save your input form to yourBPC420-## folder as “IF_TEST_MEMBER_FORMULAS”.Finally, do a little testing: Enter the following data in your input form and thensave and refresh your data in one step :

Continued on next page

556 © 2011 SAP AG. All rights reserved. 2011

Page 573: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

PRODUCT10 PRODUCT20

ACCOUNT1 120 130

ACCOUNT2 5 5

You should get the following result - which depends on the solver order factoryou had given to both member formulas:

Figure 440: Member Formula Example: ACCOUNT3 with Solve Order 1 andPRODUCT30 with Solve Order 100

Leave your input form open with the above data.

4. As the last step, navigate back to Administration Web Client and change the solveorder factor for ACCOUNT3 to 100 and the solve order for PRODUCT30 to5. Then process both member formulas. Leave the administration screen open.Within Excel, logoff and log on again to the same connection, then “RefreshSelected Report”. You should now get the following results:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 557

Page 574: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 441: Member Formula Example: ACCOUNT3 with Solve Order 100and PRODUCT30 with Solve Order 1

Close your input form and also close the Excel interface.

558 © 2011 SAP AG. All rights reserved. 2011

Page 575: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Solution 10: OPTIONAL: Create MemberFormulasTask:Create Member Formulas and execute them

1. To create member formulas, navigate to the Administration Web Client and forenvironment BPC420_## check within the structure of dimension “P_ACCT”and dimension “PRODUCT2” if “Allow Member Formulas” is flagged. Thisshould be the case for both dimensions.Then, navigate to the Member maintenance for PRODUCT2 and manuallymaintain the following members and their property values:

ID Descrip-tion

PROD-TYPE

SCA-LING

PARENTH1

PRODUCT10 PROD-UCT10

FOOD Y CON_ PET_ TYPE

PRODUCT20 PROD-UCT20

FOOD Y CON_ PET_ TYPE

PRODUCT30 PROD-UCT30

FOOD Y CON_ PET_ TYPE

Then, Save, Save and Process, and Close the editor. Check if the status icon forPRODUCT2 is green.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 559

Page 576: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Navigate to P_ACCT and check if members “ACCOUNT1”, “ACCOUNT2”,and “ACCOUNT3” already exist. This should be the case. Check if the statusicon for P_ACCT is green.

a) On the “Administration” tab of the Administration Web Client, navigateas follows: Dimensions → Dimensions and Models. Then, click“PRODUCT2” on the right-hand side and click “Edit Structure”. On theupper left-hand side, you should see gray and flagged “Allow MemberFormulas”. Then click the link “Members of Dimension: PRODUCT2” inthe upper right section to the right of “Go To:” and click in the first emptycell within the ID column. Enter PRODUCT10. The property values forPRODUCT10 given in the above table can then be added by navigatingwith the tab key from one cell to the next in this row. Then, enter allPRODUCT20 and PRODUCT30 related information in the master dataeditor. Then click “Save”, then “Save and Process” and then “Close”.Check if the status icon for PRODUCT2 is green. If not click “Process”for PRODUCT2.Then, click “P_ACCT” and then press “Edit Members”. When you scrolldown, you can see that ACCOUNT1, ACCOUNT2, and ACCOUNT3 arealready maintained. Click at the link “Structure of Dimension: P_ACCT”to the right of “Go To:”. On the next screen, on the upper left, you can seethat “Allow Member Formulas” is flagged. Click “Close”. Check if thestatus icon for P_ACCT is green. If not, click “Process” for P_ACCT.

2. Now, two member formulas have to be maintained: one for PRODUCT30and one for ACCOUNT3 and - since both formulas can collide - the order ofexecution of both formulas also has to be maintained within the formulas.Define the following member formula for “PRODUCT30” of dimensionPRODUCT2:

[PRODUCT2].[PARENTH1].[PRODUCT10]+ [PRODUCT2].[PAR-ENTH1].[PRODUCT20]; SOLVE_ORDER=100

Save the member formula and then process it. Don't set the environment offlinewhen asked. Check if the formula has a green status. If not, click “Process” forPRODUCT2 in the Member Formulas list.

Then, define the member formula for “ACCOUNT3” of dimension P_ACCT:

IIF([P_ACCT].[PARENTH1].[ACCOUNT2]=0,NULL,[P_ACCT].[PAR-ENTH1].[ACCOUNT1]/[P_ACCT].[PARENTH1].[AC-COUNT2]);SOLVE_ORDER=5Save the member formula and then process it. Do not set the environment offlinewhen asked. Check if the formula has a green status. If not, click “Process” forP_ACCT in the Member Formulas list.

Continued on next page

560 © 2011 SAP AG. All rights reserved. 2011

Page 577: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

a) Navigate as follows to create both member formulas: Administrationtab card → Rules → Member Formulas. Then, click the first line with“Formulas for: PRODUCT2” and then click “Open”. Then click “New”and a further pop up, “Edit Formulas” appears. In the field “Formula formember:”, click the square icon at the right-hand side of this field and inthe next pop up type in the “Search” field “PRODUCT30”. Then, press“ENTER” on the keyboard and then mark PRODUCT30 and press “OK”.Then, click the editor on the left hand side of the screen beneath “FormulaSyntax:” . Then type as follows in this editor:

Figure 442: Formula Syntax for PRODUCT30

When the formula is entered, click the “Save” button. Then click thelink “Return to Member Formulas”. On the next screen, mark your“Formulas for: PRODUCT2” line and click “Process”. When asked to setthe environment offline, set “NO”. Check if the formula has a green status.If not, mark “Formulas for: PRODUCT2” and then click “Process” inthe Member Formulas list.Now, click the line “Formulas for: P_ACCT” and then “Open”. After that,click “New”. A further pop-up, “Edit Formulas”, appears. In the field“Formula for member:”, click the square icon at the right-hand side of thisfield and, in the next pop-up, type “P_ACCT3” in the “Search” field. Thenpress “ENTER” on the keyboard and then mark ACCOUNT3 and click“OK”. Then, click in the editor on the left hand side of the screen Under“Formula Syntax:”. Then type as follows in this editor:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 561

Page 578: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Figure 443: Formula Syntax for ACCOUNT3

When the formula is entered, click the “Save” button. Then click thelink “Return to Member Formulas”. On the next screen, mark your“Formulas for: P_ACCT” line and click “Process”. When asked to setthe environment offline, choose “NO”. Check if the formula has a greenstatus. If not, mark “Formulas for: P_ACCT” and then click “Process” inthe Member Formulas list.

3. Now, we want to test the execution of member formulas. To do this, navigate toExcel and then to the EPM tab. Log off from your current connection and log onagain, because the new formulas can be used in Excel. The logon should connectyou to environment BPC420_## with model D_PLAN##.Then open input form “IS_TEST_SCRIPT_LOGIC_ABAP.XLSX”. In theselection dropdown box, for PRODUCT2 select “CON_PET_TYPE”, in thedropdown box for TIME select “2012.001”. “Refresh Selected Report”. Then“Edit Report” as follows:- Set “ACCOUNT1”, “ACCOUNT2”, and “ACCOUNT3” with “Member Only”in the “Selected Members” selection- Move TIME in the “Page Axis Dimensions” section.- Position “PRODUCT2” as only dimension in the “Column Axis Dimensions”section.- Set “PRODUCT10”, “PRODUCT20”, and “PRODUCT30” with “MemberOnly” in the “Selected Members” selection.Then “Refresh Selected Report”. Finally, save your input form to yourBPC420-## folder as “IF_TEST_MEMBER_FORMULAS”.

Continued on next page

562 © 2011 SAP AG. All rights reserved. 2011

Page 579: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Finally, do a little testing: Enter the following data in your input form and thensave and refresh your data in one step :

PRODUCT10 PRODUCT20

ACCOUNT1 120 130

ACCOUNT2 5 5

You should get the following result - which depends on the solver order factoryou had given to both member formulas:

Figure 444: Member Formula Example: ACCOUNT3 with Solve Order 1 andPRODUCT30 with Solve Order 100

Leave your input form open with the above data.

a) Navigate to the EPM tab in Excel and click “LOG OFF”. Then, click “LOGON” and in the next pop-up, click the gray button with the three dots. In thenext pop-up click your relevant connection for environment BPC420_##with model D_PLAN##. Then click “OK”. In the next pop-up, enter yourcredentials and then click “LOGON”.Then navigate as follows: Open → Open Server Root Folder...→ Company → Input Schedules → BPC420_## and then click“IS_TEST_SCRIPT_LOGIC_ABAP.XLSX”. Then click “Open”. Beforeyou execute a refresh, adapt the selections for PRODUCT2 and TIME.Since the procedure is the same for both dimensions, we only explain itfor PRODUCT2.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 563

Page 580: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Click the black triangle to the right of the PRODUCT2 drop down box andthen click “Select other Members...”. Then click “Select Member Names toDisplay” and then click “ID”. Mark “CON_PET_TYPE” and then click“OK”. Similarly, select “2012.001” for TIME. Then navigate as follows:Refresh → Refresh Selected Report.Then click a cell of your choice within your input form and then click“Edit Report”.In the “Row Axis Dimensions” section, click “P_ACCT” and in the nexteditor, click the black triangle next to the “Select Member Names toDisplay.” button. Click “ID”. Then open the “Dimension Members”hierarchy on the left-hand side of the screen and open node CE0001000,then subnode Total by clicking at the “+” next to the node and subnodename and finally flag “ACCOUNT1”, “ACCOUNT2” and “ACCOUNT3”.In the lower dropdown box, click the black triangle and select “MemberOnly”. Then click the blue arrow to shift the three selections to theright-hand side (Selected Members). On the right hand-side, mark“CE0004010, CE0004020 and CE0004520” (use SHIFT key on keyboardto mark the three members) and then click the blue arrow to remove theselection. Then click “OK”.In the “Column Axis Dimensions” section, right-click “TIME” and select“Move to Page Axis”.Drag and drop the “PRODUCT2” dimension from the left hand side“Dimensions:” in the “Column Axis Dimensions” section. Click“PRODUCT2” and in the next editor, click the black triangle next tothe “Select Member Names to Display.” button. Click “ID”. Then, inthe “Dimension Members” section flag the CON_PET_TYPE node. Inthe lower dropdown box, click the black triangle and select “MemberOnly”. Click at the “+” next to “CON_PET_TYPE” node and then flag“PRODUCT10”, “PRODUCT20”, and “PRODUCT30”. Then clickthe blue arrow to add the selections. On the right hand side, “SelectedMembers” mark “CON_PET_TYPE” and click the blue arrow to removethe member from the “Selected Members” section. Then, click “OK”three times.Then navigate as follows: Refresh → Refresh Selected Report and saveyour input form as follows: Save→ Save to Server Root Folder... →Company → Input Schedules → BPC420_##. In the field “File Name:”enter the following denomination: “IS_TEST_SCRIPT_LOGIC_ABAP”.Then click “Save”.

Continued on next page

564 © 2011 SAP AG. All rights reserved. 2011

Page 581: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Then click as follows: Refresh → Refresh Selected Report and save yourinput form as follows: Save→ Save to Server Root Folder... → Company→ Input Schedules → BPC420_## In the field “File Name:”, enter thefollowing denomination: “IF_TEST_MEMBER_FORMULAS”. Thenclick “Save”.The next step is to enter the test data given above table and then selectSave Data → Save and Refresh Workbook Data. Select “Yes” and then“OK”. Check if you get the same results as in the above screenshot. Leavethe input form open.

4. As the last step, navigate back to Administration Web Client and change the solveorder factor for ACCOUNT3 to 100 and the solve order for PRODUCT30 to5. Then process both member formulas. Leave the administration screen open.Within Excel, logoff and log on again to the same connection, then “RefreshSelected Report”. You should now get the following results:

Figure 445: Member Formula Example: ACCOUNT3 with Solve Order 100and PRODUCT30 with Solve Order 1

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 565

Page 582: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 5: Logic Scripts BPC420

Close your input form and also close the Excel interface.

a) Navigate back to your Administration Web Client and then to theadministration tab. You should see the Member Formula list. If not,navigate as follows: Administration tab card → Rules → MemberFormulas. Then click the first line with “Formulas for: PRODUCT2” andthen click “Open”. On the next screen, mark your member formula andthen click “Edit”. On the next screen, in the “Formula Syntax:” editor onthe left-hand side, change your formula as follows:[PRODUCT2].[PARENTH1].[PRODUCT10]+ [PRODUCT2].[PAR-ENTH1].[PRODUCT20]; SOLVE_ORDER=5.Then click the “Save” button. Then click the link “Return to MemberFormulas”. On the next screen, mark your “Formulas for: PRODUCT2”line and click “Process”. When asked to set the environment offline, choose“NO”. Check if the formula has a green status. If not, mark “Formulas for:PRODUCT2” again and then click “Process” in the Member Formulas list.Now, click in the line “Formulas for: P_ACCT” and then click “Open”.On the next screen, mark your formula and then click “Edit”. On thenext screen, in the editor under “Formula Syntax:” change your syntaxas follows:IIF([P_ACCT].[PARENTH1].[ACCOUNT2]=0,NULL,[P_ACCT].[PAR-ENTH1].[ACCOUNT1]/[P_ACCT].[PARENTH1].[AC-COUNT2]);SOLVE_ORDER=100.Then click the “Save” button. Then, click the link “Return to MemberFormulas”. On the next screen, mark your “Formulas for: P_ACCT” lineand click “Process”. When asked to set the environment offline, choose“NO”. Check if the formula has a green status. If not, mark “Formulasfor: P_ACCT” again and then click “Process” in the Member Formulaslist. Leave the screen open.Then, navigate to your Excel screen and to your EPM tab. With your inputform open, click “LOG OFF”. Then click “LOG ON” and, in the nextpop-up, click the gray button with the three dots. In the next pop-up,click your relevant connection for environment BPC420_## with modelD_PLAN##. Then click “OK”. Enter your credentials in the next pop-upand then click “Log on”. Your input form should be open. Navigate asfollows: Refresh → Refresh Selected Report and you should get the resultsas given in the above screenshot. Then close your input form and Excel inone step by navigating as follows: Office Button → Exit Excel → No.

566 © 2011 SAP AG. All rights reserved. 2011

Page 583: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Introducing Member Formulas

Lesson Summary

You should now be able to:• Identify the possibility of on the fly calculation• Create Member Formulas

2011 © 2011 SAP AG. All rights reserved. 567

Page 584: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

Unit SummaryYou should now be able to:• Describe the concept of Logic Scripts• Identify Logic Script Commands• Recognize Golden Rule for Logic Scripts• Describe the central execution of Logic Scripts• Define how to adapt Packages for Central Execution• Explain how to execute a Logic Script from a Button• Illustrate how to create a prompt for Variable Values• Discuss the concept of allocation in BO PC• Define the logic elements for Allocation• Execute an Allocation• Discuss function modules in BO PC• Describe the integration between ABAP and BO PC• Identify the possibility of on the fly calculation• Create Member Formulas

568 © 2011 SAP AG. All rights reserved. 2011

Page 585: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 586: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 587: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

569 © 2011 SAP AG. All rights reserved. 2011

Page 588: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

570 © 2011 SAP AG. All rights reserved. 2011

Page 589: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6Business Process Flows

Unit OverviewAfter completing this unit, you will be able to work with Business Process Flows.

Unit ObjectivesAfter completing this unit, you will be able to:

• Create a Business Process Flow• Run a Business Process Flow

Unit ContentsLesson: Creating Planning Business Process Flows ... . . . . . . . . . . . . . . . . . . . . . . .572

Procedure: Adding Hyperlinks ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .583Exercise 11: Create a Business Process Flow for Planning ... . . . . . . . . . . .591

2011 © 2011 SAP AG. All rights reserved. 571

Page 590: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Lesson: Creating Planning Business Process Flows

Lesson OverviewIn this lesson, you will learn how to create a Business Process Flow.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Create a Business Process Flow• Run a Business Process Flow

Business ExampleYou are considering the use of a Business Process Flow on your project, so you needto know how to build and use it.

Key Features of Business Process FlowsTo decide whether to use a Business Process Flow, you need to know what the benefitsare as well as the cost to implement and maintain.

572 © 2011 SAP AG. All rights reserved. 2011

Page 591: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

The Benefits and Costs of Business Process Flows are shown below:

• Benefits:

– Helps with coordination– Web based User Interface / Launchpad– Status and tracking– Guided navigation– E-mail notifications– Steps can be reopened– Steps can be reviewed by higher authorities– Built in Monitor– Delivered detailed reports– Work Status integration– Real time simulations in build mode– Users can save workspaces during execution

• Costs:

– Has to be designed and configured– Has to be maintained– Has to be supported by the help desk– Users cannot be forced to use the Business Process Flow user interface

2011 © 2011 SAP AG. All rights reserved. 573

Page 592: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Key Terms

• Process Template - A sequential grouping of activities to complete a process• Activities - The activities for which the logged-on user can perform• Activity Regions - The members that an activity is executed by• Process Instance - An iteration of a business process flow template that is in

active use• Process monitor - Users who can monitor the instances of a template• Performer - A User(s) or Team assigned to a Dimension. Performers can

complete or submit (for approval) activities for example.• Reviewer - A User(s) or Team assigned to a Dimension. Reviewers approve

or reject submitted activities.• Workspace - A tab in the Web Interface with links to activities• Hyperlink - A link in a workspace which defines the action that occurs when

chosen

Business Process Flow ActivitiesIn this section, you will learn how to use Activities.

From the Home tab, go to Activities. The upper area renders all processes that you areinvolved in. The lower area renders the activities for that process.

Note: By choosing an activity, you can use the Actions button to changethe status to complete for example.

574 © 2011 SAP AG. All rights reserved. 2011

Page 593: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 446: Activities in Run Mode

Running Business Process FlowsWhen an activity is chosen, a separate workspace tab is opened. You can see anexample below.

In the Business Process Flow side panel, you can see all the related hyperlinks. Thismakes an end user’s work easier as they can perform the same type of actions withoutgoing back to their activity workspace.

Note: Each workspace has its own context. The context below is set toBudget, 2010, and Total. The workspace context can be used as a default dataselection for all of the hyperlinks in the workspace.

2011 © 2011 SAP AG. All rights reserved. 575

Page 594: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 447: Data Manager Workspace

Note: In the above screen shot, the plus (+) sign can be used display all of thedimensions. The cube icon is used to display the Model that was selected inthe process settings, and to Display Dimension Names in the context.

When an EPM add-in activity is selected, a special Business Process Flow paneopens up as you can see below. This special pane includes related actions that youcan easily build into the workspace. There is also a push button that can be used toreturn to the Activity Workspace.

Figure 448: The Excel Interface of the EPM add-in Action Pane

576 © 2011 SAP AG. All rights reserved. 2011

Page 595: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Business Process Flow StatusesTo be able to use a Business Process Flow, you need to be familiar with all of thepossible statuses.

Business Process Flow Statuses

Status Resulting Status

To Be Performed Waiting for completion or waiting to be submitted

Submitted Action has been submitted and the activity is waiting forreview

Completed Activity is fully completed

Reopened Completed activity has been reopened.

Pending Activity is waiting for a predecessor activity to becompleted. It is not possible to take any actions on pendingactivities.

Rejected A reviewer has rejected an activity, the activity is openagain for user action

Delayed Completion of the activity has been delayed due to thepredecessor activity being reopened. It is not possible totake any actions on the delayed activity.

Note: The Performer of an activity is the person responsible for completingthe activity. The reviewer is the person who must verify the actions taken bythe Performer in a particular activity context.

Performers and reviewers can be individuals or made up of a team. Two ormore users can select the same activity concurrently, as multiple users may beinvolved in the completion of one activity.

Opening Criteria allows you to either force all the participants (activity regions) of anactivity to be completed before anyone can proceed or allow a participant (activityregion) to proceed to the next activity even if everyone is not complete yet.

For example, in the shaded activity below, Europe must wait for the US under thecriteria All.

If the criteria is Matched then Europe can proceed.

2011 © 2011 SAP AG. All rights reserved. 577

Page 596: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Opening Criteria

Activity ActivityRegion

Opening Criteria:All

Opening Criteria:Matched

Europe Complete CompleteImport actual data

US Complete Complete

Europe Complete CompleteRun Controls

US To Be Performed To Be Performed

Europe Pending To Be PerformedRun CurrencyTranslation US Pending Pending

Europe Pending PendingBook ManualJournal Entries US Pending Pending

Below, you can see the completed status for the activities of a process template.

Figure 449: Completed Activities

Creating Process TemplatesA process template describes a monthly activity, such as line managers enteringmonthly actual budget data.

Note: Separate templates would be called for in cases where you have twototally different processes. For example, a corporation may have one planningBusiness Process Flow and one closing Business Process Flow.

Below, you can see how the Business Process Flow components are related.

578 © 2011 SAP AG. All rights reserved. 2011

Page 597: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 450: Process Template Components

In this section, you will learn how to create a Process Template.

The Process Settings contain the general properties of the template.

Figure 451: Business Process Flow - Process Settings

2011 © 2011 SAP AG. All rights reserved. 579

Page 598: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Process Settings Fields

Field Definition

Name This will be the name of the process

Description A brief description of the process

Model The model governs both the dimensions that can make up theprocess instance and the available dimensions for the activitycontext.

Dimensions The dimensions that make up the instances are defined here

Process Monitors This user(s) can monitor all the instances created from thistemplate

Creating Business Process Flow ActivitiesThe activities will be used to track the progress of the process.

Figure 452: Activities

Note: The square icon next to each activity can be used to duplicate theactivity or move it up or down.

The activity settings provide instructions to the users and also control the behaviorof the activity.

580 © 2011 SAP AG. All rights reserved. 2011

Page 599: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 453: Activity Settings

Activity Fields

Field Definition

Name Provide a title for the activity.

Instruction Provide a description of what is to be done in the activity. This is theinstruction that is displayed to a user performing a process basedon this process template.

Drivingdimension

This dimension is used to determine the granularity of the activityand to determine the Performers. For example, if you want to run anactivity once per region, use the Entity dimension because it has ahierarchy by region.

Members Select the members of the Driving Dimension. For example, choosethe US parent so that it is children (regions) will determine thegranularity of the activity.

Performer Select the property that defines the performer for each member ofthe Driving Dimension.You can select the Owner property or any other property for this.

RequireReviewer

To define an action that a reviewer must approve or reject

2011 © 2011 SAP AG. All rights reserved. 581

Page 600: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Reviewer Select the property that defines the Reviewer for each member ofthe Driving Dimension.You can select the Reviewer property or any other property for this.

OpeningCriteria

Choose either All activity contexts or Matched activity contexts.

AllowReopen

To allow authorized users to reopen an activity, select the Yes radiobutton.

Creating Business Process Flow WorkspacesWorkspaces will contain the groups of related hyperlinks for the users. For example,when using automatic planning functions, you might copy actual to plan, revaluethe data, then run a comparison report.

Figure 454: Planning Functions Workspace

There are 3 ways to add contents to the Activity Workspace.

1. Add Hyperlinks: Refer to the section below for more information.2. Add Content: You can embed existing web contents (Report, Input form,

Workspace) to the Activity Workspace.3. Add New Report: Using this, you can create a new report from scratch.

582 © 2011 SAP AG. All rights reserved. 2011

Page 601: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Adding Hyperlinks

1. Add new hyperlinks by clicking the Add Hyperlinks button.

A new hyperlinks view is added in the left side panel, and in the main canvas, anew Hyperlink is added.

2. Set the properties in the Edit Hyperlink pane on the right-hand side.

3. Click the Browse button to navigate to a desired report for example.

4. Click the Save button to save the hyperlink.

5. Save the Process Template.

Creating Business Process Flow HyperlinksHyperlinks contain the actions, Model, context, and related actions.

Figure 455: Upload File Hyperlink

Note: You can simulate hyperlinks at design-time. Click Stop Editing, thenthe name of hyperlink becomes available just like at run time.

2011 © 2011 SAP AG. All rights reserved. 583

Page 602: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Creating Business Process Flow Related ActionsRelated actions result in hyperlinks for the user which provide guided navigation foractivities. For example, after importing a file, you might want to Preview it.

Figure 456: Upload File - Related Action

Template Version ManagementBusiness Process Flow Templates are managed using version information. There arethree types of versions available in Business Process Flow Templates:

1. Draft - Draft is set by default for a new process template. This version canbe edited and deleted.

2. Deployed - Templates in Draft status can be Deployed. Then you can createan Instance for it.

When the template is in Deployed status, users cannot make changes to thetemplate. This version cannot be Archived either.

3. Inactive - Inactive versions cannot be used.Note: Template versions may have:

1. Only 1 Draft version for any given template2. Only 1 Deployed version for a given template3. Multiple Inactive versions for a given template

Creating Business Process Flow InstancesA process template could describe a monthly activity, such as cost center managersentering monthly actual budget data.

In that case, each month would be a separate instance.

584 © 2011 SAP AG. All rights reserved. 2011

Page 603: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

One user will be chosen as the Performer of the process instance. That user has theright to finalize the process instance.

These are the steps included in the Wizard:

1. Select the Process - The related activities appear on the right2. Select the Owner - The Owner can finalize the instance for example3. Select the Context - Choose the members for the Instance Context such as 2012

Budget4. Check Assignments - Maintain the Performer and Reviewer assignments if

necessary5. Review and Start - Review the instance metadata. Select Start the Process

Instance to create the instance in Running status upon completion.

Figure 457: Creating an Instance

When you create an Instance, a wizard is launched.

Note: The instance takes a snapshot of the template. If you make changesto the template, only new instances created after that point will include therevisions.

2011 © 2011 SAP AG. All rights reserved. 585

Page 604: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

After an Instance is created, these are the activities that are available.

• Start - To start a process Instance• Suspend / resume - Suspended Instances are not available to users.• Change Assignment - Process Owner and Activity Owners can be changed by

selecting the Change Assignment option• Reset - To reset an instance back to the first activity• Archive - To archive finalized or inactive instances. An archived process does is

not available for users.• Finalize - You can finalize a process instance if you are the process instance

Owner

Note: Archived instances can be reported on if Audit of Business ProcessFlow Activity is turned on.

Audit reports are available in the Home tab under Audit. Run theAdministration Activity report.

E-mail NotificationProcess monitors receive an e-mail notification when a new process instance iscreated, suspended, resumed, reset, ready to be finalized and archived.

The owner of an activity receives an e-mail notification when the activity is open toperform, approved/rejected by reviewer, and reopened.

The responsible reviewer for an activity receives an e-mail notification when theactivity is ready for review.

Note: SAP BusinessObjects Planning and Consolidation Version for theNetWeaver Platform contains a number of e-mail templates by default.

These are S-type (system) templates, which cannot be modified. A copy ofeach system template can be created and customized according to the businessneeds. These are C-type (customized) templates.

The program used to generate e-mails is: UJB_MAINTAIN_EMAIL_TMPL.

The table where the templates are stored is: UJB_EMAIL10 - BPC: Business ProcessFlow Email Template Table.

New e-mail templates can be created via the SMARTFORM transaction code.

Below is an example of the information contained in an e-mail.

586 © 2011 SAP AG. All rights reserved. 2011

Page 605: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

It includes the following:

• The Process• The Context• The action, such as: The following activity has been reopened.• The activity and the owner• A link to the activity

Figure 458: A Sample E-mail

IntegrationIf you decide to use business process flows, you should also consider how they interactwith security and work status.

A user's activities in the business process flow guide them to tasks that need to beperformed and data that needs to be viewed or changed.

Therefore, the users need to have the relevant task profile to carry out their assignedactivities. They also need to have access to the relevant data via Data Access Profiles.

In addition, by including work status in the business process flow, users will be able tocontrol data access at appropriate points in the process.

In the example below, the entity dimension is used to determine the owners, reviewers,and managers for Store1.

So for Store1, Joe is the owner, Nicole is the reviewer, and Pete is the Manager.

The User Actions contains the sequence of activities in this example.

When Joe submits Step4. Nicole is notified via e-mail and she accepts it.

2011 © 2011 SAP AG. All rights reserved. 587

Page 606: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Since Pete is the manager of Store1, he can set the work state to Reviewed and thenApproved.

If the work state is Reviewed for example, no one can run a data manager packagefor that data region, since it is Locked.

The work state options are defined as follows.

• All - All users are allowed to perform the activity• Locked - Users are Locked out of that activity• Owner - Only the Owner can perform the activity• Manager - Only the Manager can perform the activity

Status Controlled By determines who can change the work state. In the examplebelow, the Manager can advance the work state to Approved and back to Reviewed.

The Work status interfaces are the methods that users can save data or documents tothe data base. They are defined as follows:

• Data Manager - running data manager packages• Journals - posting journal entries• Manual - manually entering and saving data• Documents - posting document attachments• Comments - saving comments to the data base

Note: The diagram below is a conceptual illustration.

588 © 2011 SAP AG. All rights reserved. 2011

Page 607: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 459: Security, Work Status, Business Process Flow Integration Concept

Note: Pete is the implied manager of Store1 since he is the owner of theparent (US) of Store1.

2011 © 2011 SAP AG. All rights reserved. 589

Page 608: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

590 © 2011 SAP AG. All rights reserved. 2011

Page 609: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Exercise 11: Create a Business ProcessFlow for Planning

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create and run a Business Process Flow - Process Template for Planning

Business ExampleYou need to create a Business Process Flow for your Planning Process.

Task 1:Create a Process Template.

1. Access Process Templates in Administration.

2. Create a new template with a Name and Description of Expense_Planning.Complete the Process Settings as you see below.

Hint: For the Users, choose the Role tab and select the ADMIN Teamand choose the Add pushbutton.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 591

Page 610: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 460: Process Settings

3. Create the Import Actual Data Activity as you see below.

Figure 461: Import Actual Data Settings

Continued on next page

592 © 2011 SAP AG. All rights reserved. 2011

Page 611: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

4. Create the remaining two activities as you see below.

Hint: Use the context menu to Duplicate one activity to the next.

Figure 462: Activities

5. Set “require a reviewer” for the Planning Functions activity.

Task 2:Create the Import Actual Data Workspace.

1. Create a Performer Workspace.

Hint: Page down to see Workspaces.

2. Create the Upload File Hyperlink as you see below. Include a related action topreview the file.

Fields Values

Name Upload_File

Description Upload Flat File

Target Action Data Manager→ Data Upload

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 593

Page 612: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Model EXPENSE

Name of Related Action Preview

Related Action to Perform Data Manager→ Data preview

Figure 463: Upload File Hyperlink

3. Create the Import File Hyperlink with the values below. Include a related actionto View Package Status.

Fields Values

Name Import File

Description Import Flat File

Target Action Data Manager→ Run specific package

Model EXPENSE

Name of Related Action Check Status

Related Action to Perform Data Manager→ View Package Status

Continued on next page

594 © 2011 SAP AG. All rights reserved. 2011

Page 613: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

4. Rename your Hyperlink to Upload and Import.

Note: You may have different dimension members in your context.However, the context is irrelevant for Data Manager activities.

Figure 464: Import Actuals Workspace

5. Save your Process Template.

Task 3:Create the Planning Functions Workspace.

1. Create a Performer Workspace.

2. Create the Automatic Planning Hyperlink as you see below.

Fields Values

Name Copy

Description Copy Actual to Forecast

Target Action Data Manager→ Run specific package

Model EXPENSE

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 595

Page 614: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

3. Underneath Copy, Add the Revaluation Hyperlink with the values below.

Fields Values

Name Revaluation

Description Mark up Personnel Cost by 4.5%

Target Action Data Manager→ Run specific package

Model EXPENSE

4. Add a Hyperlink with the values below.

Fields Values

Name Run Comparison Report

Description Compare Actual to Forecast

Target Action Microsoft Excel → Open specificreport

Model EXPENSE

5. Rename your Hyperlinks to Automatic Planning and Reporting

Figure 465: Automatic Planning Workspace

6. Save your Process Step.

7. Save your Process Template.

Continued on next page

596 © 2011 SAP AG. All rights reserved. 2011

Page 615: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Task 4:Create the Manual Input Planning Workspace.

1. Create a Performer Workspace.

2. Create the Cost of Goods Sold Hyperlink as you see below.

Fields Values

Name Cost of Goods Sold

Description Input Cost of Goods Sold

Target Action Microsoft Excel→ Open specific input form

Model EXPENSE

3. Below Cost of Goods Sold, Add the Indirect Expenses Hyperlink with thevalues below.

Fields Values

Name Indirect Expenses

Description Input Indirect Expenses

Target Action Microsoft Excel→ Open specific input form

Model EXPENSE

4. Add the Data Control Hyperlink with the values below.

Fields Values

Name Work Status

Description Set new work state

Target Action Work Status and Comments→ Set work status

Model EXPENSE

5. Rename your Hyperlinks as shown below:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 597

Page 616: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 466: Input Schedules Workspace

6. Save your Process Step.

7. Save and Deploy your Process Template.

Task 5:Create the Process Instance.

1. Create a Process Instance for your Process Template.

2. Select the owner.

3. Select a context of Forecast and 2012.

4. Review the assignments.

5. Start the process on completion.

6. Finish the instance creation.

Task 6:Execute your activities.

1. Access your activities in the Home Workspace.

2. Open the Import Actual Data Workspace..

3. Upload and preview the 2011 Actual flat file.

4. Import the 2011 Actual flat file.

Continued on next page

598 © 2011 SAP AG. All rights reserved. 2011

Page 617: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

5. Complete the Import Actual Data activity and return to your activities.

6. Complete Import Actual Data for Manufacturing.

7. Open Planning Functions and Copy Actual to Forecast.

8. Revalue the Forecast data

9. Compare actual to forecast data.

10. Submit and approve planning functions.

11. Perform manual input planning.

12. Approve the data.

13. Complete Manual Input Planning for Consulting.

14. Run the Process Monitor.

15. Archive the Instance.

2011 © 2011 SAP AG. All rights reserved. 599

Page 618: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Solution 11: Create a Business ProcessFlow for PlanningTask 1:Create a Process Template.

1. Access Process Templates in Administration.

a) In the Web Client goto the Home Tab → Start Page

b) Choose Planning and Consolidation Administration

c) Choose Business Process Flows → Process Templates

2. Create a new template with a Name and Description of Expense_Planning.Complete the Process Settings as you see below.

Hint: For the Users, choose the Role tab and select the ADMIN Teamand choose the Add pushbutton.

Continued on next page

600 © 2011 SAP AG. All rights reserved. 2011

Page 619: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 467: Process Settings

a) Choose New and complete your settings as you see above.

3. Create the Import Actual Data Activity as you see below.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 601

Page 620: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 468: Import Actual Data Settings

a) Go to the Activities tab

b) Under Process Settings, choose New

c) Enter a Name and Instruction of Import Actual Data

d) Create the rest of the settings as you see above.

Hint: When you select Members, the dialog box will look like thescreenshot below.

Note: When members are selected, their hierarchy may collapse,but it is ok, they are still selected.

Figure 469: Driving Dimension Members

4. Create the remaining two activities as you see below.

Hint: Use the context menu to Duplicate one activity to the next.

Continued on next page

602 © 2011 SAP AG. All rights reserved. 2011

Page 621: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Figure 470: Activities

a) Under Process Settings, select Import Actual Data→ click on the contextmenu (little square)→ Duplicate → OK

b) Repeat one more time

c) Click on the second activity and change the Name and Instruction toPlanning Functions on the right.

d) Click on the third activity and change the Name and Instruction to ManualInput Planning on the right.

5. Set “require a reviewer” for the Planning Functions activity.

a) Choose Planning Functions → Select Require Reviewer

b) Next to Reviewer: select REVIEWER from the drop down list

c) Select Allow Reopen

d) Choose Save

The template is saved and you are on the Process Settings tab

e) Choose the Activities tab

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 603

Page 622: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Task 2:Create the Import Actual Data Workspace.

1. Create a Performer Workspace.

Hint: Page down to see Workspaces.

a) Choose the Import Actual Data Activity.

b) In Workspaces, choose Create.

A new tab is created called Import Actual Data.

2. Create the Upload File Hyperlink as you see below. Include a related action topreview the file.

Fields Values

Name Upload_File

Description Upload Flat File

Target Action Data Manager→ Data Upload

Model EXPENSE

Name of Related Action Preview

Related Action to Perform Data Manager→ Data preview

Continued on next page

604 © 2011 SAP AG. All rights reserved. 2011

Page 623: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 605

Page 624: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 471: Upload File Hyperlink

a) On the upper right, choose Add Hyperlinks

Edit Hyperlink appears on the right.

b) Enter a Name of Upload_File and Description of Upload Flat File.

c) Select a Target Action of Data Manager → Data upload.

d) Next to Model: select EXPENSE

e) Scroll down.

f) Under Related Actions, click Edit.

The Related Actions dialog appears.

g) Choose New

A Related Action is created.

h) Under New, select Related Action.

i) Next to Name of Related Action, enter Preview.

j) Under Action to perform when users choose this hyperlink, select DataManager.

k) Under Data Manager, select Data preview.

Figure 472: Upload File - Related Action

l) Choose OK.

3. Create the Import File Hyperlink with the values below. Include a related actionto View Package Status.

Continued on next page

606 © 2011 SAP AG. All rights reserved. 2011

Page 625: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Fields Values

Name Import File

Description Import Flat File

Target Action Data Manager→ Run specific package

Model EXPENSE

Name of Related Action Check Status

Related Action to Perform Data Manager→ View Package Status

a) Choose Add

Edit Hyperlink appears on the right.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Data Manager → Run specific package.

d) Choose Browse → Public → Data Management → Import TransactionData Last Overwrite then choose OK.

e) Next to Model: select EXPENSE.

f) Under Related Actions click Edit

The Related Actions dialog appears.

g) Click New.

A Related Action is created

h) Under New, choose Related Action.

i) Next to Name of Related Action, enter Check Status.

j) Under Action to perform when users choose this hyperlink select DataManager

k) Under Data Manager, select View package status. Then, choose OK.

4. Rename your Hyperlink to Upload and Import.

Note: You may have different dimension members in your context.However, the context is irrelevant for Data Manager activities.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 607

Page 626: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 473: Import Actuals Workspace

a) Under Overview, hover over the Hyperlink.

The options box appears.

b) Click Options.

The context menu appears.

c) Choose Rename. Enter Upload and Import.

d) Choose Save.

e) In the message box, you will see Workspace has been saved.

f) Choose OK

g) Close the Import Actual Data tab.

5. Save your Process Template.

a) Choose Save. Go back to the Activities tab.

Continued on next page

608 © 2011 SAP AG. All rights reserved. 2011

Page 627: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Task 3:Create the Planning Functions Workspace.

1. Create a Performer Workspace.

a) Under Import Actual Data, choose Planning Functions.

b) Under Workspaces, choose Create.

2. Create the Automatic Planning Hyperlink as you see below.

Fields Values

Name Copy

Description Copy Actual to Forecast

Target Action Data Manager→ Run specific package

Model EXPENSE

a) Choose Add Hyperlinks

Edit Hyperlink appears on the right.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Data Manager → Run specific package.

d) Choose Browse → Public → Data Management → Copy. Then, chooseOK.

e) Next to Model: select EXPENSE.

3. Underneath Copy, Add the Revaluation Hyperlink with the values below.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 609

Page 628: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Fields Values

Name Revaluation

Description Mark up Personnel Cost by 4.5%

Target Action Data Manager→ Run specific package

Model EXPENSE

a) Next to Validate, choose Add.

Edit Hyperlink appears on the right

b) Enter a Name and Description as shown above

c) Select a Target Action of Data Manager → Run specific package.

d) Choose Browse → Public → Financial Processes → REVAL_LABOR thenchoose OK.

e) Next to Model: select EXPENSE.

4. Add a Hyperlink with the values below.

Continued on next page

610 © 2011 SAP AG. All rights reserved. 2011

Page 629: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Fields Values

Name Run Comparison Report

Description Compare Actual to Forecast

Target Action Microsoft Excel → Open specificreport

Model EXPENSE

a) Choose Add Hyperlinks.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Microsoft Excel → Open specific report

d) Choose Browse → Public → VERSION COMPARISON then choose OK

e) Next to Model:, select EXPENSE.

f) Under Target Context, make the following selections:

Dimension Selection

P_ACCOUNT Indirect Expenses

P_CATEGORY Actual

P_COST Use Workspace Context

P_CURR Local Currency

P_TIME 2012

5. Rename your Hyperlinks to Automatic Planning and Reporting

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 611

Page 630: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 474: Automatic Planning Workspace

a) Under Overview, hover over the first hyperlink.

The options box appears.

b) Left click on Options.

The context menu appears.

c) Select Rename. Enter Automatic Planning

d) Rename the bottom hyperlink to Reporting.

6. Save your Process Step.

a) Choose Save.

b) In the message box, you will see Workspace has been saved.

c) Choose OK.

d) Close the Planning Functions tab.

7. Save your Process Template.

a) Choose Save. Go back to the Activities tab.

Continued on next page

612 © 2011 SAP AG. All rights reserved. 2011

Page 631: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Task 4:Create the Manual Input Planning Workspace.

1. Create a Performer Workspace.

a) Under Planning Functions, choose Manual Input Planning.

b) Under Workspaces choose Create.

2. Create the Cost of Goods Sold Hyperlink as you see below.

Fields Values

Name Cost of Goods Sold

Description Input Cost of Goods Sold

Target Action Microsoft Excel→ Open specific input form

Model EXPENSE

a) On the upper right, choose Add Hyperlinks.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Microsoft Excel → Open specific input form.

Choose Browse → Public → MANUAL INPUT PLANNING → OK.

d) Next to Model: select EXPENSE.

e) Under Target Context, make the following selections:

Dimension Selection

P_ACCOUNT Cost of Goods Sold

P_CATEGORY Forecast

P_COST Use Workspace Context

P_CURR Local Currency

P_TIME 2012

3. Below Cost of Goods Sold, Add the Indirect Expenses Hyperlink with thevalues below.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 613

Page 632: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Fields Values

Name Indirect Expenses

Description Input Indirect Expenses

Target Action Microsoft Excel→ Open specific input form

Model EXPENSE

a) Next to Validate, choose Add.

Edit Hyperlink appears on the right.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Microsoft Excel → Open specific input form.

Choose Browse → Public → MANUAL INPUT PLANNING→ OK

d) Next to Model: select EXPENSE.

e) Under Target Context, make the following selections:

Dimension Selection

P_ACCOUNT Indirect Expenses

P_CATEGORY Forecast

P_COST Use Workspace Context

P_CURR Local Currency

P_TIME 2012

4. Add the Data Control Hyperlink with the values below.

Continued on next page

614 © 2011 SAP AG. All rights reserved. 2011

Page 633: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

Fields Values

Name Work Status

Description Set new work state

Target Action Work Status and Comments→ Set work status

Model EXPENSE

a) Choose Add Hyperlinks.

b) Enter a Name and Description as shown above.

c) Select a Target Action of Work Status and Comments → Set work status.

d) Next to Model: select EXPENSE.

5. Rename your Hyperlinks as shown below:

Figure 475: Input Schedules Workspace

a) Under Overview, hover over the first hyperlink.

b) Click Options.

c) Select Rename. Enter Input Schedules.

d) Rename the bottom hyperlink to Data Control.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 615

Page 634: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

6. Save your Process Step.

a) Choose Save.

b) In the message box, you will see Workspace has been saved.

c) Choose OK.

d) Close the Manual Input Planning tab.

7. Save and Deploy your Process Template.

a) Choose Save → Close.

Your template is complete.

b) Highlight your template

Hint: If you accidentally click the hyperlink, the template willopen. Just choose Close.

c) Choose Deploy.

The Current Version changes from Draft to Deployed.

Task 5:Create the Process Instance.

1. Create a Process Instance for your Process Template.

a) Choose Process Instances.

b) Click New.

c) Select your Process.

Your three activities appear.

2. Select the owner.

a) Choose Next.

b) Next to Name: select BPC-## from the drop down list.

3. Select a context of Forecast and 2012.

a) Choose Next.

b) Select Forecast and 2012 as the context.

Continued on next page

616 © 2011 SAP AG. All rights reserved. 2011

Page 635: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

4. Review the assignments.

a) Choose Next.

The Check Assignments step is reached.

5. Start the process on completion.

a) Choose Next.

b) Select Start the process instance.

The instance will be in Running status on completion.

6. Finish the instance creation.

a) Choose Finish → Close

Caution: The instance creates a snapshot of the template. If youfind that you need to make changes to the template, you will needto Suspend it, Archive it, and then create a new instance.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 617

Page 636: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Task 6:Execute your activities.

1. Access your activities in the Home Workspace.

a) Go to the Home tab and choose Activities.

b) Under Process, choose the EXPENSE_PLANNING Process.

Figure 476: Activities in Run Mode

2. Open the Import Actual Data Workspace..

a) Click Import Actual Data for Consulting.

The Import Actual Data tab opens.

b) Choose Upload_File.

After a few seconds, the EPM add-In opens and the Data Manager -Upload dialog appears.

If not, check your status bar for Excel.

Continued on next page

618 © 2011 SAP AG. All rights reserved. 2011

Page 637: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

3. Upload and preview the 2011 Actual flat file.

a) Choose Browse.

b) If you are in the BPC420 class: Next to Look in: choose the drop down andselect My Documents → BPC420 → BPC420_##.

c) If you are in the BPC430 class: Next to Look in: choose the drop down andselect My Documents → BPC430 → BPC430_##.

d) Select 2011 Actual → Open → Upload → Save → OK

The file is now on the server.

e) Choose Preview .

f) In the Open dialog → Select the 2011 Actual file → Open

g) Under Select file type or table select Delimited.

h) Under Select a delimiter, choose COMMA.

Figure 477: Flat File Preview

i) Choose Cancel.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 619

Page 638: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

4. Import the 2011 Actual flat file.

a) Choose Import_File.

b) Choose Browse → 2011 Actual → Open

c) Choose Next → Browse → EXP TRANS → Open

d) Choose Next.

Merge data values ... should be selected.

e) Choose Next and select No.

Default logic will not be run.

f) Choose Next and select No.

Work status will not be checked.

g) Choose Next then choose Finish.

The EPM - Data Manager window appears.

h) Choose OK, then choose the link for Check Status.

You should have a status of Succeed.

Note: If your log does not appear, go to the Data Manager taband view data.

i) Close the Package Status window by choosing Close.

j) Close Excel by choosing Office → Exit Excel.

k) Return to the Web Client.

5. Complete the Import Actual Data activity and return to your activities.

a) Under Import Actual Data - Consulting, select Complete.

b) Close the Import Actual Data tab.

c) Go to the Home tab and choose Activities.

6. Complete Import Actual Data for Manufacturing.

a) Highlight the row for Import Actual Data for Manufacturing.

b) Choose Actions and select Complete.

Planning Functions are now ready To Perform.

c) Close the Import Actual Data tab for Manufacturing.

Continued on next page

620 © 2011 SAP AG. All rights reserved. 2011

Page 639: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

7. Open Planning Functions and Copy Actual to Forecast.

a) Choose Planning Functions for Consulting.

A new tab opens.

b) Choose Automatic Planning → Copy.

After a few seconds, an EPM add-in session is opened along with a dialogbox Run Package with the Merge Data option selected.

If not, look in your status bar for Excel.

c) Choose Next.

The option Select whether to run default logic ... appears.

d) Select No → Next.

The option Select whether to check work status ... appears.

e) Select No → Next.

A screen with Select the members to COPY and where to appears.

f) Make the following selections by choosing the Add buttons for each:

Hint: For P_Time, select only the months of 2011 for the Sourceand only the months for 2012 as the Destination.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 621

Page 640: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Figure 478: Copy Package

g) Choose Next → Finish → OK.

h) Close the dialog box if necessary.

Continued on next page

622 © 2011 SAP AG. All rights reserved. 2011

Page 641: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

8. Revalue the Forecast data

a) Under Copy, choose Revaluation.

b) Select the following by choosing the Add buttons for each:

Dimension Value Selection Relationship

P_Category Forecast Member Only

P_Curr LC Member Only

P_Time 2012.01 to2012.12

Caution: When making selections, you may notice the systemgoes back to the Web Client. If so, look for Excel in your task bar.

c) Select Next → Finish → OK.

d) Choose the Data Manager tab and click View Status.

You should have a status of Succeed.

e) Close the dialog box.

f) Close Excel.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 623

Page 642: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

9. Compare actual to forecast data.

a) In the Planning Functions tab, click Reporting → Run Comparison Report.

The report opens in the EPM add-in.

b) Choose the EPM tab, and click Refresh.

Figure 479: Version Comparison

Actual values have been copied to 2012 and Personnel Cost has beenmarked up by 4.5%.

c) Close Excel.

10. Submit and approve planning functions.

a) In the Planning Functions tab, choose Submit.

b) Close the Planning Functions tab.

c) On your Home tab, highlight Planning Functions for Consulting.

d) Choose Actions.

e) Select Approve.

f) Highlight Planning Functions for Manufacturing.

g) Choose Actions.

h) Select Submit.

The Action Required changes to To Review.

i) Choose Actions.

j) Select Approve.

Continued on next page

624 © 2011 SAP AG. All rights reserved. 2011

Page 643: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

11. Perform manual input planning.

a) Choose Manual Input Planning for Manufacturing.

The Manual Input Planning tab appears.

b) Choose Input Schedules → Cost of Goods Sold.

An input schedule with no values opens in the EPM add-in. If you don't seeafter a moment, check your task bar for Excel.

c) Choose the EPM tab, then Refresh.

d) Enter yourMaterial and Labor Cost values as shown below: (Cost ofGoods Sold will be calculated).

Figure 480: Manufacturing COGS

e) Click Save Data.

A prompt appears: data records will be sent, do you want to continue?

f) Choose Yes.

A dialog with the Save Results appears.

g) Choose OK

h) Choose the EPM tab and click Refresh.

i) Close Excel.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 625

Page 644: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

12. Approve the data.

a) In the Manual Input Planning tab, choose Data Control → Work Status.

The Work Status dialog appears for Manufacturing.

b) Next to New Status, select Approved then choose→ Apply.

You successfully changed the work state.

c) Choose Close to close the Successwindow.

d) Choose Complete.

e) Close the Manual Input Planning tab.

13. Complete Manual Input Planning for Consulting.

a) Highlight Manual Input Planning for Consulting.

b) Choose Actions and select Complete.

Figure 481: Completed Activities

Continued on next page

626 © 2011 SAP AG. All rights reserved. 2011

Page 645: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Creating Planning Business Process Flows

14. Run the Process Monitor.

a) On the Home tab, under Activities choose Process Monitor.

b) Click on Expense_Planning to view the results.

c) Close the EXPENSE_PLANNING tab after viewing.

d) In the Process Monitor highlight EXPENSE_PLANNING.

Figure 482: Process Monitor - Waiting Finalization

e) Choose Finalize.

15. Archive the Instance.

a) In Administration, under Business Process Flows → Process Instanceshighlight the instance EXPENSE_PLANNING - Forecast 2012 and chooseArchive.

Hint: If you do not have the Administration tab open, choose StartPage → Planning and Consolidation Administration.

The process instance will no longer appear in your Activities.

2011 © 2011 SAP AG. All rights reserved. 627

Page 646: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 6: Business Process Flows BPC420

Lesson Summary

You should now be able to:• Create a Business Process Flow• Run a Business Process Flow

628 © 2011 SAP AG. All rights reserved. 2011

Page 647: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Unit Summary

Unit SummaryYou should now be able to:• Create a Business Process Flow• Run a Business Process Flow

2011 © 2011 SAP AG. All rights reserved. 629

Page 648: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

630 © 2011 SAP AG. All rights reserved. 2011

Page 649: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 650: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 651: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

631 © 2011 SAP AG. All rights reserved. 2011

Page 652: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

632 © 2011 SAP AG. All rights reserved. 2011

Page 653: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7Administration

Unit OverviewAfter completing this unit, you will be able to understand Master Data Validations,Audits, Concurrency Locking, the Work Status Concept and Transports.

Unit ObjectivesAfter completing this unit, you will be able to:

• Estimate the Validation Concept• Describe the customizing for Validation• Track Changes to Data and Activities• Configure Auditing• Define how Concurrency Locking works• Explain the concept of work status• Describe customizing• Identify execution of work status• Define how transport works in BO PC• Illustrate the transactions to define transports.

Unit ContentsLesson: Validating Master Data... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .635

Procedure: To implement a Master Data Validation ... . . . . . . . . . . . . . . . . . . . .642Exercise 12: Validate Master Data ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .645

Lesson: Configuring Audits .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .654Procedure: To Configure Audits and to see Audit Reports.. . . . . . . . . . . . . . .670Exercise 13: Configure Audits .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .671

Lesson: Presenting Concurrency Locking ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .676Lesson: Configuring Work Status... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .679

Procedure: To Configure and Test Work Status ... . . . . . . . . . . . . . . . . . . . . . . . . .688Exercise 14: Configure Work Status ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .691

2011 © 2011 SAP AG. All rights reserved. 633

Page 654: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson: OPTIONAL: Explaining Transports.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .700Procedure: To Configure Transport Settings... . . . . . . . . . . . . . . . . . . . . . . . . . . . . .710

634 © 2011 SAP AG. All rights reserved. 2011

Page 655: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Lesson: Validating Master Data

Lesson OverviewIn this lesson, you will learn how to use and install the master data validation feature.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Estimate the Validation Concept• Describe the customizing for Validation

Business ExampleYou use master data validation when you want to make sure that special combinationsof data selections are exclusively allowed when loading data or when written onlineto the server. You also use it if you want to prevent special member combinationsfrom being saved to the server. If the conditions are not fulfilled, the system willautomatically generate an error message when saving data.

2011 © 2011 SAP AG. All rights reserved. 635

Page 656: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Master Data Validations

Figure 483: Master Data Validation Tool

The master data validation concept wants to prevent you from saving and loadingincorrect combinations of dimension members.The configuration for validations is performed via transaction UJ_VALIDATION inyour backend system. The configuration is environment-specific.

Master Data Validation works with the “Driver Dimension concept”, which meansthat the driver dimension is the dimension in each model for which the validationrules will be created. In most cases, it is the Account dimension, but it can be anydimension. It is only possible to have one driver dimension per model. If you leavethe driver dimension empty, then no validation rules will be applied to this model.Several rules per one driver dimension are possible.

636 © 2011 SAP AG. All rights reserved. 2011

Page 657: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Figure 484: Example: The Same Validation Rule Can be Used in Several Models

As you can see in the above example that the Finance and Sales models are using thesame driver dimension. Since rules are created at the Dimension level, you can seethat any rules created for the ACCOUNT dimension will apply to both models.

Figure 485: Rules Maintenance 1/2

As you can see, one rule can apply to multiple members and one member can belongto multiple rules (for example, KPI1 in Rules 1 and 3), which would make it an ANDcondition (must pass 1 and 3 to be valid).

2011 © 2011 SAP AG. All rights reserved. 637

Page 658: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 486: Rules Maintenance 2/2

The upper example shows that you can only use an “=” or “<>” sign to configureyour master data rules.It is possible to refer to multiple values in the condition. Here, we have CategoryBudget, Flash and Forecast which means that with “=” a record can only be savedKPI1 or to KPI2 up to KPI5 if the category selection is one of the three: Budget,Flash, or Forecast.

638 © 2011 SAP AG. All rights reserved. 2011

Page 659: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

With “<>”, a data set for one of the accounts can only be saved if the category isneither Budget, nor Flash, nor Forecast.

Hint: You can use a range of members. You can also use members that do notexist yet. In this case, you will get a warning, but you can continue.

Hint: It is possible to copy all of the validation configuration from oneenvironment to another environment. If the models or dimensions aredifferent, it will just copy the matching entries. If nothing could be copied,you will get an information message. You will be warned if the targetenvironment already has Validations customizing defined, so you can chooseif you wish to overwrite.

If you delete the environment configuration, you will get prompted forconfirmation.

Hint: Deleting a dimension that is a driver will delete all validationsconfiguration.

Figure 487: Turn Validations On/Off

2011 © 2011 SAP AG. All rights reserved. 639

Page 660: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

It is possible to turn validations on/off by model. You have three different validationswitches: Journals, Manual Planning, and Data Manager.

Note: By default, all modules are turned “Off”.

Note: “Manual Planning” means BO PC for Excel and BO PC Web inputby users.

“Data Manager” includes all Data Manager Upload packages, Logic ScriptPackages, and Consolidation Packages.

Figure 488: Validation Results During Write Back in Manual Planning

640 © 2011 SAP AG. All rights reserved. 2011

Page 661: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

The above example shows that if you have Category Flash as the selection in Excel,which is not allowed according to the above rule, the system creates a validationerror message.

Hint: You can decide if you want to transport Validations from theDevelopment system or not. If not, you can create them in the Productionsystem as well.

Changes in Validations customizing can be tracked since “Last Changed By,Date & Time” is stored in the underlying validation tables (UJV*).

Validations are integrated to the Activity Audit module.

Authorization is controlled by access to the transaction (SAP authorizations –auth object S_TRANS).

2011 © 2011 SAP AG. All rights reserved. 641

Page 662: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

To implement a Master Data Validation

1. Navigate to the backend system, enter transaction UJ_VALIDATION inthe command field and then press “Enter”.

2. Enter your environment. You do this by clicking at the white square iconon the right of the environment field. In the resulting pop-up, scroll downuntil you will reach your environment. Double click it.

3. Then, click the “Assign Driver Dimension” button. On the next screen,navigate to the row with your model and, in the white field for this lineunder “Dimension”, click the right corner. An icon with a “square” comesup (F4). Click it and, in the resulting pop-up, double-click the desireddimension.

4. Then, click “Driver Dimension Settings”. Then click “BACK”.5. Then click the “Rule Maintenance” button. In the resulting pop-up

“Validations Maintenance – Which Dimension?” also click the white squareicon on the right hand side of the Dimension field (F4). A popup appears.Here, double-click the desired dimension and then press “Continue”.

6. The next step is to click “Create Rule”. In the “Rule Description” section,type “Account & Category”.

7. In the “Assigned Members” section, click the “Multiple Selection” buttonon the right hand side. In the resulting pop-up, stay on the “Select SingleValues” tab card. Here, click the white square icon (F4) at the right handside of the first line. In the resulting pop-up, scroll down until you find themember(s) of your choice. When found, double click it. Then click the“Copy” icon. Then, make sure the “Use Logic Table” is flagged.

8. Then, click the “Add Dimension” button. For the first line, open the squareicon on the right hand side of the “Dimension” field and double-click thedesired dimension in the resulting pop-up.

9. Then click the black triangle icon in the same row, but for the “Operator”column. Select “=” in the pop-up. Finally, for the “Members” column,open the square icon in the first row and double-click the dimension ofyour choice.

10. Then, click “Save Rule” and then click “BACK” twice.11. Click the “Turn Validations On/Off” button. On the next screen, click the

black triangle for the Model field and, in the next pop-up, click your model.12. In the “Validation Switch” section, click the black triangle for any of the

three selections or in parallel for all three. In the subsequent pop-up, click“ON”.

Continued on next page

642 © 2011 SAP AG. All rights reserved. 2011

Page 663: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

13. Finally, click “Save Validation Settings” and then click “BACK” once.

Hint: Master Data Validation checks can be executed in Excel or Webby entering some data for the relevant selection and by pressing SaveData → Save and Refresh Workbook Data. The system then gives anerror message when the validation rule is “hurt”.

2011 © 2011 SAP AG. All rights reserved. 643

Page 664: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

644 © 2011 SAP AG. All rights reserved. 2011

Page 665: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Exercise 12: Validate Master Data

Exercise ObjectivesAfter completing this exercise, you will be able to:• Set up Characteristic Validation to show how to prevent certain combinations of

master data from being saved to the server or to only allow certain combinationsto be saved to the server.

Business ExampleYou want to avoid that certain combinations of dimension members are saved to theInfoProvider by using the “Master Data Validation” tool.

Task 1:Create a Master Data Validation Rule.

1. Navigate to the backend system and, via transaction UJ_VALIDATION, enterthe “Validations Maintenance” tool. Select environment “BPC420_##” andassign “Driver Dimension” “P_ACCT” to model “D_PLAN##”. Create thefollowing rule:

Flag “Use Logic Table”

- Rule Description: type “Account & Category”

- Assigned Members: select “KPI1, KPI2, KPI3, KPI4, KPI5”

- Add Dimension: select Dimension “CATEGORY”

- Add Dimension: select Operator “=”

- Add Dimension: select Members “BUDGET”.

Save your rule.

In the “Turn Validations On/Off” section, select Model “D_PLAN##” and in the“Validation Switch” section select “ON” for “Manual Planning”.As a consequence, you are only allowed to save data to the Info Provider whenthe data set you want to save contains Category BUDGET and KPI1, KPI2,KPI3, KPI4, or KPI5. For all other Category selections, in combination with theaccounts mentioned, the system will produce a validation error message. Stayin the “Validations Maintenance - Initial Screen”.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 645

Page 666: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Task 2:Test a Master Data Validation Rule

1. Open your Excel interface and log on to your BPC420_## environmentconnection with model D_PLAN##. In your EPM tab card make sure thefollowing selections are set:

Dimension Member

Category FLASH

Entity STORE17

P_ACCT KPI_NODE

InputCurrency EUR

Time 2011.Q1

MEASURES PERIODIC

Open your input form “IF_TEST_SCRIPT_LOGIC” and then “Refresh SelectedReport”. Enter 100 for each of the KPIs in 2011. JAN and then save your dataand refresh your workbook in one step. As a result, you should get a validationerror message.

Continued on next page

646 © 2011 SAP AG. All rights reserved. 2011

Page 667: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Figure 489: Master Data Validation Settings and Validation Error Message

Return to your backend system. Here, you should be in the “ValidationsMaintenance - Initial Screen”. Click “Turn Validations On/Off” and select“OFF” in the “Validation Switch” section for “Manual Planning” of Model“D_PLAN##”. Then, save the validation settings and return to the screen aftersystem logon. Leave your Excel screen and input form open.

2011 © 2011 SAP AG. All rights reserved. 647

Page 668: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Solution 12: Validate Master DataTask 1:Create a Master Data Validation Rule.

1. Navigate to the backend system and, via transaction UJ_VALIDATION, enterthe “Validations Maintenance” tool. Select environment “BPC420_##” andassign “Driver Dimension” “P_ACCT” to model “D_PLAN##”. Create thefollowing rule:

Flag “Use Logic Table”

- Rule Description: type “Account & Category”

- Assigned Members: select “KPI1, KPI2, KPI3, KPI4, KPI5”

- Add Dimension: select Dimension “CATEGORY”

- Add Dimension: select Operator “=”

- Add Dimension: select Members “BUDGET”.

Save your rule.

In the “Turn Validations On/Off” section, select Model “D_PLAN##” and in the“Validation Switch” section select “ON” for “Manual Planning”.

Continued on next page

648 © 2011 SAP AG. All rights reserved. 2011

Page 669: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

As a consequence, you are only allowed to save data to the Info Provider whenthe data set you want to save contains Category BUDGET and KPI1, KPI2,KPI3, KPI4, or KPI5. For all other Category selections, in combination with theaccounts mentioned, the system will produce a validation error message. Stayin the “Validations Maintenance - Initial Screen”.

a) To create a master data validation rule, navigate to the backend system,enter transaction UJ_VALIDATION in the command field on the upperleft, and press “Enter”. Enter BPC420_## as the environment. You do thisby clicking at the white square icon on the right of the environment field.In the resulting pop-up, scroll down until you reach your environment.Double-click it.Then, click the “Assign Driver Dimension” button. On the next screen,navigate to the row with model “D_PLAN##” and, in the white fieldfor this line under “Dimension”, click the right corner. An icon with a“square” comes up (F4). Click it and, in the resulting pop-up, double-click“P_ACCT” . Then click “Driver Dimension Settings”. Then click“BACK”. Then, click the “Rule Maintenance” button. In the subsequentpop-up, “Validations Maintenance – Which Dimension?”, also click thewhite square icon on the right hand side of the Dimension field (F4). Apop-up appears. Here, double-click “P_ACCT” and then press “Continue”.The next step is to click “Create Rule”. In the “Rule Description” section,type “Account & Category”. In the “Assigned Members” section click the“Multiple Selection” button on the right-hand side and, in the resultingpop-up, stay on the “Select Single Values” tab. Here, click the white squareicon (F4) at the right-hand side of the first line. In the resulting pop-up,scroll down until you find “KPI1”. When found, double-click it. In line 2up to line 5, select KPI2 up to KPI5. Then, click the “Copy” icon. Makesure the “Use Logic Table” is flagged.Then, click the “Add Dimension” button. For the first line, open the squareicon on the right-hand side of the “Dimension” field and double-click“CATEGORY” in the resulting pop-up. Then, click the black triangleicon in the same row but for the “Operator” column. Select “=” in thesubsequent pop-up. Finally, for the “Members” column, open the squareicon in the first row and double-click “CATEGORY”. Then, click “SaveRule” and then press “BACK” twice. Click the “Turn Validations On/Off”button. On the next screen, click the black triangle for the Model fieldand, in the next pop-up, click “D_PLAN##”. Then, in the “ValidationSwitch” section, click the black triangle for “Manual Planning”. In thenext pop-up, click “ON”. Finally click “Save Validation Settings” andthen click “BACK” once.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 649

Page 670: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Task 2:Test a Master Data Validation Rule

1. Open your Excel interface and log on to your BPC420_## environmentconnection with model D_PLAN##. In your EPM tab card make sure thefollowing selections are set:

Dimension Member

Category FLASH

Entity STORE17

P_ACCT KPI_NODE

InputCurrency EUR

Time 2011.Q1

MEASURES PERIODIC

Open your input form “IF_TEST_SCRIPT_LOGIC” and then “Refresh SelectedReport”. Enter 100 for each of the KPIs in 2011. JAN and then save your dataand refresh your workbook in one step. As a result, you should get a validationerror message.

Continued on next page

650 © 2011 SAP AG. All rights reserved. 2011

Page 671: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Figure 490: Master Data Validation Settings and Validation Error Message

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 651

Page 672: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Return to your backend system. Here, you should be in the “ValidationsMaintenance - Initial Screen”. Click “Turn Validations On/Off” and select“OFF” in the “Validation Switch” section for “Manual Planning” of Model“D_PLAN##”. Then, save the validation settings and return to the screen aftersystem logon. Leave your Excel screen and input form open.

a) Within your Excel interface, first click your EPM tab card and then “LOGON”. On the next screen, click the gray icon with the three dots and in theupcoming next pop-up mark your connection for BPC420_## with modelD_PLAn##. Then, click “OK”. In the next pop-up, enter your credentialsand then click “LOG ON”. Then, make sure that you can see the “EPMContext” bar with the drop down boxes for the dimensions. If not, clickthe “Show Pane & Context” button. When you see the bar, select thedimension members given in the exercise. We will explain how to select“CATEGORY” “FLASH”, for all the others the technique is the same.Click the black triangle for the CATEGORY dropdown box. Then click“Select Other Members...” In the next pop-up, click the black triangle tothe right of “Select Member Names to Display.” In the next pop-up, click“ID”. Then mark “FLASH” and then click OK. Set the selections given inthe exercise by navigating the same way.Then navigate as follows: Open→Open Server Root Folder... → Company→ Input Schedules → BPC420-##. Then click the input form mentionedin the exercise and then click “Open”. Then click Refresh → RefreshSelected Report. Enter 100 for all KPIs in 2011.JAN and then select SaveData → Save and Refresh Workbook Data. Then confirm with “YES” andthe validation error message will come up as described in the exercisescreenshot. Confirm with “OK”. You should get this validation errormessage since you only allow combinations of KPI1 up to KPI5 combinedwith CATEGORY Budget and in the selections you had selected “FLASH”!

Then, return to your backend screen. Here, the “Validations Maintenance -Initial Screen” should be open. Click the “Turn Validations On/Off” button.On the next screen, click the black triangle for the “Model” dropdown boxand select “D_PLAN##”. In the “Validation Switch” section, select “OFF”for “Manual Planning”. Then click “Save Validation Settings” and thenclick “BACK” twice. Leave your Excel screen open.

652 © 2011 SAP AG. All rights reserved. 2011

Page 673: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Validating Master Data

Lesson Summary

You should now be able to:• Estimate the Validation Concept• Describe the customizing for Validation

2011 © 2011 SAP AG. All rights reserved. 653

Page 674: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson: Configuring Audits

Lesson OverviewIn this lesson, you will learn how you can track changes in data and configurationusing the Audit tool.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Track Changes to Data and Activities• Configure Auditing

Business ExampleYou use Audits to capture system activity and changes. Capturing audit information isrequired to meet external regulatory authorities as well as the internal controls of abusiness. This could be relevant for consolidation applications as well as for planningapplications.To comply with statutory regulations and SOX (Sarbanes-Oxley) requirements, it hasto be ensured that all security changes as well as changes to the configuration aretracked. This enables external auditors to perform the audit as well as giving themconfidence into the system.For internal purposes, Audits can be used to ensure that the configuration of the datamodel and other administrative changes are tracked

654 © 2011 SAP AG. All rights reserved. 2011

Page 675: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Audits

Figure 491: Audit Configuration by Environment and by Model 1/2

You can perform activity auditing to track administrative and user tasks at theenvironment level and data auditing to track changes to transactional data at themodel level.

Audit is broken up into 2 categories:

• Activity Auditing• Data Auditing.

Activity Auditing:

2011 © 2011 SAP AG. All rights reserved. 655

Page 676: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

This function tracks administrative and user tasks at the environment level.Administrators control whether activity auditing is enabled or not. The system cantrack changes for the following activities, showing the previous and new values aswell as the IP address and machine name associated to the user making a change:

• Administration activities, including:

– Security-related changes, such as adding, changing, and deleting users,teams, task profiles and member access profiles.

– Create, modify, delete, and copy operations for models and dimensions;dimension processing; create and delete operations for dimension members;changes made to property or hierarchy values for a dimension member;delete and copy operations on environments and on drivers for driver basedcalculations.

– Changes to environment and model setup options, global configurationsettings and KPI definitions for automated performance analysis, documenttypes and subtypes, activity audit settings, and data audit settings.

• User activities, such as setting data locks.• Business Process Flow activities, such as adding, deleting, and modifying

business process flows, and saving business process flows to new names.• User activities in business rules management.

To enable activity auditing for the current environment, from the Administrationscreen, choose Features → Audit → Edit. Then, choose the types of activity auditingto enable. Once the system records an activity, you can run a report that shows activitybased on specified criteria. You can set up Data Manager packages to archive activityaudit information.

656 © 2011 SAP AG. All rights reserved. 2011

Page 677: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Figure 492: Audit Configuration by Environment and by Model 2/2

Data Auditing:This function tracks changes to transactional data at the model level, such as when andby whom records were changed within a model.

• EPM Add-in• Data Manager Import• Data Manager Clear• Script Logic Execution• Web Report Input• Journal Input• Business Rules Execution• Ownership• FIM Import.

When selecting the tasks to audit for a category within a model, you can indicatewhether you want to retain the logs of the data audits indefinitely or for a specificnumber of days. Planning and Consolidation does not delete the logs; rather, itarchives them after the number of days you indicate.

2011 © 2011 SAP AG. All rights reserved. 657

Page 678: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

To enable data auditing, from the Administration screen, choose Features → Audit.Select a model, then choose Edit. Select Yes for each task for which you want toenable data auditing. You can also set the number of days in which to purge data audithistory for each category. Save your selections and purge setting.Once an activity is recorded, you can run a report that shows activity based onspecified criteria.You can also set up Data Manager packages to archive data audit information.

Figure 493: How to archive Audit Data

You can set up Data Manager packages and schedule them to archive activity auditinformation and to archive data audit information.

Audit Tables: /1CPMB/appset_prefix+appl_prefix+AD

Audit Archive Tables: /1CPMB/appset_prefix+appl_prefix+AD_A

658 © 2011 SAP AG. All rights reserved. 2011

Page 679: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Figure 494: Display Failed Audit Logs

To control the background audit jobs, the backend transaction SLG1 can be used.

The relevant object is UJ with Subobject UJU.

Audit Reports

Figure 495: Audit System Reports

2011 © 2011 SAP AG. All rights reserved. 659

Page 680: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

This function allows you to prepare reports that contain system information and ahistory of administration and business user activities. Audit reports enable you toreport on any of the following topics:

• Security• General.

The purpose of the security audit reports is to show a summary of the users, teams, andprofiles that exist for a particular environment. It does not show any security-relatedactivity (for that purpose, you can use activity auditing and the administration auditreport, with the appropriate filters).

Security – The following general reports are available:

• Users - This report allows you to see in a grid, the users assigned to theenvironment, and the teams and profiles to which they are assigned. You canalso drill down to view the detailed report for each user.

• Teams - See a summary of the teams created for the environment, or drill into thedetails and see the users and profiles assigned to that team.

• Task Profiles - This report shows you all the task profiles in the system, and foreach profile, the individual tasks that have been assigned. The detailed reportalso shows user and team assignments.

• Data Access Profiles - This report shows, by model, all the members assigned tothe profile and whether they are for Read, Write, or Deny access. The detailedreport also shows user and team assignments.

Note: In each report, you can toggle between the list and the detail reportusing the Show List/Show Detail link.

To view a security report, select Audit from the left navigation pane in the Hometab, and from the list of reports, select the type of security report you want to view.Also compare the Security Guide.

Hint: To view security reports of other users, you must have the “RunSecurity Reports task privilege” assigned to you. However, all users canaccess their own security report.

General - The following general reports are available:

• Data changes• Comments• Work status• Administration Activity.

660 © 2011 SAP AG. All rights reserved. 2011

Page 681: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

To create a new audit report from the Home tab, select Audit from the left navigationpane, and then select the type of report you want to create. To create a new auditreport from an audit report, click New Report and then select the type of report youwant to create.Once you have displayed the report, you can also:

• Edit the report selection criteria. Click Edit Criteria to change the selectioncriteria.

• Refresh the report. Click Refresh to regenerate the report if you think that thedata, upon which the report is based, has changed.

• Print the report. Click Print. The system grays out this option if a printer isnot available.

• Export the contents of the report to a file. Click Export to File and specify thefile name and location.

“Reporting on Data Changes”:

Figure 496: Audit – Data Changes Report 1/2

Planning and Consolidation records audit information on who changed transactionaldata in the model. Since a data audit can only be captured for a model, this report isonly applicable at the model-level. The report shows who changed the data, what

2011 © 2011 SAP AG. All rights reserved. 661

Page 682: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

time they made the change, how they made the change (for example, through logicexecution or the EPM add-in for Microsoft Office), and the details of the record thatwas changed.You can choose from the following criteria to fine tune your report:

Option Description

Model Select a model, for example, PLANNING or RATE.

DimensionMembers

Select the dimension and dimension members the audit information isstored against.

Date andTime

You can choose start and end dates for the report or display the fullhistory of the selected data audit information (Anytime).

AdditionalCriteria

Select from the following options:

• Data Modified by Task

– All– The EPM add-in for Microsoft Office– Data Manager Import– Data Manager Clear– Logic Script Execution– Web Report Input– Journals Input– Business Rule Execution– Ownership– FIM Import.

• User• IP Address• Group Rows by:

– Activity– AddInfo1– AddInfo2– Machine Name– IP Address– Dimensions relevant to the model– User

• Show Rows by:

– ID (Member ID)

662 © 2011 SAP AG. All rights reserved. 2011

Page 683: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

– Description (Member description)• Machine Name.

To view a data changes report from the list of reports, select Audit →Data Changes from the left navigation pane in the Home tab. Setthe appropriate reporting options and choose “Display Report”. Inthe report, the columns correspond to the parameters in the abovetable, with the addition of a Value column. The Value field shows youwhat the value was changed to, as a result of the change. That is, itshows you the new value (not the original nor the delta value postedto the database).

Figure 497: Audit – Data Changes Report 2/2

The figure above shows the audit report on data changes for the following scenario:“The user first planned and saved 100 and then changed the value to 150. As a result,the Data Change Report shows two data sets, one with 100 and a second with thedata change of 50. In addition further information is given such as the time stamp,the user and so on”.

Reporting on Comments:The report on comments allows you to see the comments made for the current model(from your context). You can choose how many and which comments are displayedby applying filters.

2011 © 2011 SAP AG. All rights reserved. 663

Page 684: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

The following table shows the filtering options that are available:

Option Description

Model Select a model, for example, PLANNING or RATE.

DimensionMembers

Enter the individual dimensions the comment is stored against.

History You can choose to display the entire commenting string (that is, allcomments that match your filter criteria) or only the most recentcomments (that is, only one record is returned).

Date &Time

You can choose start and end dates for the report or display the fullhistory of the selected comments (Anytime).

Priority Choose from:

• Priority

– All– Critical– High– Medium– Low– No Priority.

Note: With the exception of All, these filterelements select a particular priority and all higherpriorities. For example, High selects High andCritical comments.

• User: Enter a User ID if you want to report on the commentsmade by a particular user.

664 © 2011 SAP AG. All rights reserved. 2011

Page 685: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

To view a comments report, select Audit from the left navigation pane in the Hometab, and from the list of reports, select Comments. Set the appropriate reportingoptions and choose Display Report. In the Comments report, the columns correspondto the parameters in the above table.

Reporting on Work Status:The report on work status allows you to display the work status codes for a set ofgiven criteria.Work status is a feature that allows you to lock regions of data from being overwritten.You define “work states” (for example, Locked, Submitted, or Approved) so userscan control input to specific data regions and input methods (for example, to preventthe Data Manager being used to update data). You can filter the report to the specificregion of the cube for which you want the work state.The work status report shows Data State, which is the current work state for thedata. It tells you the current stage of the data in the overall approval process. It alsoshows the dimensions for which you define work status as being applicable. Therecan be three to five dimensions (the report adjusts dynamically based on the activeapplication). You specify the report parameters as specified in the following table:

Option Description

Model Select a model, for example, PLANNING or RATE.

DimensionMembers

Select dimensions and dimension members that the work status isstored against. The dimensions displayed depend on the selectedmodel.

Date andTime

You can choose start and end dates for the report or display the fullhistory of the selected work status information (Anytime).

AdditionalCriteria

User ID – Enter the User ID for which you need the work status report.

To view a work status report, select Audit from the left navigation pane in the Hometab, and from the list of reports, select Work Status. Set the appropriate reportingoptions and choose Display Report.

Reporting on Administration Activity:

2011 © 2011 SAP AG. All rights reserved. 665

Page 686: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 498: Audit – Administration Activity 1/2

The administration activity audit records information on tasks performed in thesystem, for example, who is creating, changing, deleting models, dimensions, andsecurity. This report applies to the environment or model level. You can set thefollowing report criteria:

Option Description

Date andTime

You can choose start and end dates for the report or display the fullhistory of the selected activities (Anytime).

TaskSelection

The following options are available:

• Task Name - You can enter the following tasks:

– COPY ENVIRONMENT– DELETE ENVIRONMENT– CREATE MODEL– COPY MODEL– MODIFY MODEL– DELETE MODEL– CREATE DIMENSION– COPY DIMENSION

666 © 2011 SAP AG. All rights reserved. 2011

Page 687: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

– MODIFY DIMENSION– DELETE DIMENSION– PROCESS DIMENSION.

Note: The functional tasks are case-sensitive. Whenyou enter the functional tasks, the system tries toanticipate your entry as you type in partial text.

• Task Area:

– Environment – Report on activity at the environment level– Model – Report on activity at the model level.

• Task Group

– All – Report on activity for both user types (Admin andUser).

– Admin – Reports the activity selected in the Task Typefield (described below)

– Admin activity shows both the previous and new values.– User – Reports work status changes– Process – Reports business process flow activity– Business Rule – Reports business rule activity

• Task Type:

– All – All activity types– Add – Only add activity– Change – Only activity that involves changes within the

system– Delete – Only delete activity.

TaskParameters

These fields are optional and are used for additional information. Youtypically use them in reporting, but not for filtering:

• Modified Object• Parameter Value• Field Value• Pre-Task Value• Post-Task Value• User.

2011 © 2011 SAP AG. All rights reserved. 667

Page 688: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Modified Object and Parameter Value are at the audit header record.Field Value, Post-Task Value, and Pre-Task Value are at the detailrecord.

Figure 499: Audit – Administration Activity 2/2

The upper slide gives an example of how an audit report on administration activitiescould look like.

Report Contents: The report header shows the date and time of the report, and thenumber of records returned. It also shows the options that you selected for TaskSelection and Task Parameters, as described above.In the report, the columns correspond to report criteria above, with additional items:

• Task Name – Name of the task• Date and Time – Date and time of the task• Model – The name of the model in which the task occurred• User – Name of the user who performed the task• Modified Object – The name of the modified object• Machine ID – The IP address of the machine on which the task was performed• Machine Name – The name of the machine on which the task was performed• Parameter Value – Additional information• Task Group – Task group for which the task was performed• Task Type – Type of task performed• Field Value – Details of the task performed, for Create Member if a dimension

member was created.

668 © 2011 SAP AG. All rights reserved. 2011

Page 689: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

• Pre-Task Value – Value in the field before the task was performed. For newdimension members, this is blank. For deleted dimension members, this showsthe ID of the deleted member. For modified dimension members, this showsthe value of the modified property or hierarchy before the change, or blank ifthere was no value before processing.

• Post-Task Value – Value in the field after the task was performed. For newdimension members, this shows the ID of the created member. For deleteddimension members, this is blank. For modified dimension members, this showsthe value of the modified property or hierarchy before the change, or blank ifthe value was removed.

Report Filters: You can filter a report by entering a filter value in a column heading.You can combine filters by entering filter values for multiple columns.Sorting a Column in a Report: You can sort the columns in a report in ascending ordescending order by clicking a column heading. To view an administration activityreport, select Audit from the left navigation pane in the Home tab, and from the listof reports, select Administration Activity. Set the appropriate reporting options andchoose Display Report. In the report, the columns correspond to the parameters inthe above table.

2011 © 2011 SAP AG. All rights reserved. 669

Page 690: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

To Configure Audits and to see Audit Reports

1. First navigate to the Administration Web Client for your environment. Onthe Administration tab, navigate as follows: Features → Audit.

2. Mark your relevant model on the list on the right hand side and then select“Edit” in the “Data Audit Configuration by Model” section.

3. In the next screen, first decide for which category you want to configurethe data auditing. Then have a look at each column for this line and decideif you want a tracking or not. This means for example that if you wantauditing for Category Budget with the “Audited Task” “EPM Add-in Input”you have to have to click in the relevant cell.

4. A pop-up appears. Select “Yes” if auditing is wanted.5. If necessary, navigate to the utmost right column “Data Audit Purge-

Frequency (days)” and click in the relevant cell. Enter the purge frequencyof your choice.

6. Then, click “Save” and then “Close”.7. Stay on the screen and click “Edit” in the upper environment related section

“Activity Audit Configuration for the Environment”.8. In the next pop-up, you can flag the tracking(s) of your choice and click at

“Save”.9. When data changes and or administration changes are executed you can

report on the changes as follows: Home tab card → Audit → Data Changesor Home Tab Card → Audit → Administration Activity.

10. When opening one of the mentioned audit reports, fill in the relevantinformation and then click “Display Report”.

11. To close one of the two audit reports, close the relevant tab the system hadcreated when you clicked “Display Report”. The tabs are denominated asfollows: “Audit - Data Changes” and “Audit - Administration Activity”.

670 © 2011 SAP AG. All rights reserved. 2011

Page 691: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Exercise 13: Configure Audits

Exercise ObjectivesAfter completing this exercise, you will be able to:• Practice audits

Business ExampleYou track and analyze system changes and data changes.

Task:Configure Audits and track changes.

1. Navigate to your Administration Web Client for your environment BPC420_##.Activate all model-related “Audited Tasks” for model “D_PLAN##” withCategory “FLASH”. Then flag all environment related settings concerning the“Activity Audit”. Always save your settings. Leave the screen open.

2. Then, navigate to your Excel interface where the “IF_TEST_SCRIPT_LOGIC”input form should be open and the following settings should already be set:

Dimension Member

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

PRODUCT2 DOGDRYPUPPY

P_ACCT KPI_NODE

TIME 2011.Q1

MEASURES PERIODIC

Enter 100 for KPI1 with 2011.JAN and then save and refresh your data at thesame time. Then, change the value to 150. Save and refresh again. Leave yourinput form open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 671

Page 692: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

3. Now let's have a look at the “Data Changes” Audit Report. In the report selectyour model “D_PLAN##” as well as “ALL” for “Data modified by Task”,“Activity” for “Group Rows by” and “ID” for “Show Rows by”. Then click at“Display Report” and check the results. Finally, close your new tab, “Audit -Data Changes”. Leave your screen open.Then, open the “Administration Activity” report and select “Environment” as“Task Area:”, “ALL” as “Task Group:”, and “ALL” as “Task Type:”. “DisplayReport” and then check the results. Finally, close your new tab, “Audit -Administration Activity”. Leave your Administration Web Client open.

672 © 2011 SAP AG. All rights reserved. 2011

Page 693: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Solution 13: Configure AuditsTask:Configure Audits and track changes.

1. Navigate to your Administration Web Client for your environment BPC420_##.Activate all model-related “Audited Tasks” for model “D_PLAN##” withCategory “FLASH”. Then flag all environment related settings concerning the“Activity Audit”. Always save your settings. Leave the screen open.

a) Within your Administration Web Client, click Features → Audit and thenmark the line “Configuration for: D_PLAN##”. Then, click “Edit” whichis under the header “Data Audit Configuration by Model”.On the next screen select “YES” for each “Audited Tasks” columnbut only for the “FLASH” row. When done, click “Save”. Then click“Close”. On the same screen, click “Edit” under the header “Activity AuditConfiguration for the Environment”. The “Activity Audit for Environment:BPC40_##” pop-up appears. Here, flag all four selection possibilities.Then click “Save”. Leave the screen open.

2. Then, navigate to your Excel interface where the “IF_TEST_SCRIPT_LOGIC”input form should be open and the following settings should already be set:

Dimension Member

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

PRODUCT2 DOGDRYPUPPY

P_ACCT KPI_NODE

TIME 2011.Q1

MEASURES PERIODIC

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 673

Page 694: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Enter 100 for KPI1 with 2011.JAN and then save and refresh your data at thesame time. Then, change the value to 150. Save and refresh again. Leave yourinput form open.

a) Navigate to the EPM tab in Excel with your input form“IF_TEST_SCRIPT_LOGIC” open and with the selections of the exercisealready set. Then, enter 100 for KPI1 with 2011.JAN and then select SaveData → Save and Refresh Workbook Data. Then, enter 150 in the samedata cell and again select Save Data → Save and Refresh Workbook Data.Leave the input form open.

3. Now let's have a look at the “Data Changes” Audit Report. In the report selectyour model “D_PLAN##” as well as “ALL” for “Data modified by Task”,“Activity” for “Group Rows by” and “ID” for “Show Rows by”. Then click at“Display Report” and check the results. Finally, close your new tab, “Audit -Data Changes”. Leave your screen open.Then, open the “Administration Activity” report and select “Environment” as“Task Area:”, “ALL” as “Task Group:”, and “ALL” as “Task Type:”. “DisplayReport” and then check the results. Finally, close your new tab, “Audit -Administration Activity”. Leave your Administration Web Client open.

a) Navigate back to the Administration Web Client and click the “HOME”tab. Then, click as follows: Audit → Data Changes. On the next screen,click the black triangle next to “Model” and then click “D_PLAN##”. Onthe right-hand side, “Additional Criteria”, click the black triangle to theright of “Data modified by Task” and then click “ALL”. Then click theblack triangle to the right of “Group Rows by” and then click “Activity”.Finally, click the black triangle to the right of “Show Rows by” and thenclick “ID”. When done, click “Display Report” on the upper left sectionof your screen. Have a look at the result and then click the “X” of thetab“Audit - Data Changes”.Then, click the “HOME” tab and click Audit → Administration Activity.Leave “Anytime” selected. Click the black triangle to the right of “TaskArea:” and in the list of selections click “Environment”. The,n click theblack triangle to the right of “Task Group:” and, in the subsequent list,click “ALL”. Then click the black triangle to the right of “Task Type” andselect “ALL”. Do not change any settings in the “Task Parameters” sectionon the right hand side. Then click “Display Report” on the upper left handside. Have a look at the results and then click the “X” on the “Audit -Administration Activity” tab. Leave your screen open.

674 © 2011 SAP AG. All rights reserved. 2011

Page 695: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Audits

Lesson Summary

You should now be able to:• Track Changes to Data and Activities• Configure Auditing

2011 © 2011 SAP AG. All rights reserved. 675

Page 696: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson: Presenting Concurrency Locking

Lesson OverviewIn this lesson, you will learn about locking of transaction data which is calledConcurrency Locking in terms of Planning and Consolidation.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Define how Concurrency Locking works

Business ExampleYou want to analyze how the system reacts when two users work in the same selectionsat the same time and especially when both want to save data at the same time.

Concurrency Locking

Figure 500: What Is Concurrency Locking?

Concurrency locking prevents users from saving data to the same region of the cube atthe same time. ALL mechanisms that write data into a cube (for example, manualuser planning in Excel/Web, Data Manager, Journals, and so on) must go through aconcurrency lock check before data can be saved to the cube. There are no exceptions,and it can not be bypassed in any circumstances. This process is initiated only whenthe user tries to Save Data. The locking process works per data package. Locks areobtained only during the write-back process. A lock cannot persist at the time of read.

676 © 2011 SAP AG. All rights reserved. 2011

Page 697: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Presenting Concurrency Locking

During “Save Data”, data is packed into smaller blocks, called separate data packages.The default size of the data package is 40,000 records. If necessary, the default sizeof a package can be changed by changing parameter “PACKAGE_SIZE” in table“UJR_PARAM” (or transaction UJR0).Only when the data to be submitted is more than 40,000 records at a time, will itbe broken into data packages of 40,000 records each. If the number of records tobe submitted is less than the allowed package size, there is no reason to break intodata packages.Locks are only obtained for the length of one data package at a time. For example,if there are three data packages to be saved, it is possible that the first package willbe successful, but the second package will contain locked records. In that case, thesecond package will fail and the failure of second package will prevent the thirdpackage from being saved.In the example, the first package is already saved to the cube before the secondpackage fails and it is not possible to reverse the entries to ‘unsave’ even the firstpackage. But this is no issue since we are writing back delta values to the cube. Onlythe delta records are saved to the cube and hence the failed package(s) can be runagain. If successful, it will result in writing the delta records successfully.

Note: Some components in Planning and Consolidation do not post deltavalues (for example, Journals), in which case, the package size is always setto 99,999,999 (meaning packaging will never be used).

2011 © 2011 SAP AG. All rights reserved. 677

Page 698: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson Summary

You should now be able to:• Define how Concurrency Locking works

678 © 2011 SAP AG. All rights reserved. 2011

Page 699: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Lesson: Configuring Work Status

Lesson OverviewIn this lesson, you will learn how to configure and test work status.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Explain the concept of work status• Describe customizing• Identify execution of work status

Business ExampleYou want to lock data from time to time, because a data review or data approvalis needed.

Work Status Concept

Figure 501: Work Status – Month-End Financial Example

2011 © 2011 SAP AG. All rights reserved. 679

Page 700: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Once you have entered and saved data, you can modify the work status for a specificdata region. The work status feature enables you to apply a label to a data region andlock it for review, approval, and so on. For example, after saving data, you can set thework status to "Saved". This locks the data region from being overwritten. They arechecked to ensure one is not trying to write to a cell that has been intentionally lockeddown from changes. Each individual record is checked for work status at a timeduring write-back, so only each individual record that fails a check would be rejected.SoWork State is the ability for a customer to lock a “slice” or “region” of data ina model. The work status is set up in the Administration view. Work Status is NOTprocess flow management. Work Status is optional for the customer.

The figure above describes a typical example about how the Work Status can be usedby the customer in real life:

• At month-end, data is loaded and further adjusted by authorized end-users(member access profile).

• On completion of the month-end data submission, the responsible user(Owner/Manager) can set the Work Status as defined by the administrator.

• The data is locked at the responsibility center. In financial situations, this istypically a subsidiary.

• A manager and/or a high level group processor, will start the review andconsolidate the data (specific calculations/logic execution).

• After the group consolidation is run, the data can be locked from changes so thatthe reporting group can create accurate month-end reports.

• At any time, the end user may submit supporting documents or comments(annotations) during the process to further support the month-end results.

Figure 502: Owner Property - Work Status Prerequisite

680 © 2011 SAP AG. All rights reserved. 2011

Page 701: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

You can choose which dimension shall carry the “OWNER” property within a workstatus scenario. “OWNER” is a reserved property for work status. The Owner is theuser that is assigned to a dimension member of your choice. The manager of theowner is the owner positioned on the parent node of the owner member. The ownerdesignating property takes user and team names in brackets as values. You can entermultiple names and teams separated by commas. You can define if the owner or themanager or both shall be able to set a work status for a region of data. This is done inthe “Work Status” table that is an environment-related table:

Figure 503: Work Status Table - Environment related Table

In the figure above, you define who can change the data in the system:

• All — All users with the appropriate member access rights can change data• Locked — No one can change the data• Manager — Only managers (parents of owners) can change data• Owner — Only owners can change data.

2011 © 2011 SAP AG. All rights reserved. 681

Page 702: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

The areas of Planning and Consolidation for which you can control the work status are:

• Data Manager (DM) — Controls data input from running a Copy, Import, orMove package

• Journal (JRN) — Controls data input from posting journal entries• Manual Entry (MAN) — Controls data input manually• Comments (COM) — Controls data input from posting comments (unstructured

data)• Documents (DOCS) — Controls posting documents with model context to the

Document view (unstructured data).

Work statuses (or work status “codes”) are defined for the entire environment (notper model). There is no limit to the number of codes you can create, but there is apractical limit.A “default work status” exists which must be the first status. This status cannot bechanged. It has an internal code of 0 and is controlled by the Manager and Owner(Controlled by is set to Owner and Manager). You can change the method of updatefor this code, but not the order or the Controlled by value. You can change the textdescription. The default code allows you to have a customized behavior for theenvironment. For example:

• LOCKED for all methods is equivalent to preventing any data update until thework status is advanced to the next status (1)

• ALL for all methods is equivalent to having all data open for update – this is thecurrent and default behavior

• SETUP applies to ALL of the models in the environment• WRITEBACK always checks for locks; if there are no locks in the lock table,

the system behaves based on the setup of status (0).

Hint: Work status codes must be 20 characters or less, and their descriptionsare limited to 40 characters (this is the same as a member ID).

Hint: You can change the order of work status, but once you change it, thesystem deletes all locks for all models in the environment.

Hint: Deleting codes also deletes all locks. Adding codes to the bottom ofthe list, changing a code definition, does not impact existing locks, but mayimpact business users. We recommend this only during the testing phase.

682 © 2011 SAP AG. All rights reserved. 2011

Page 703: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Figure 504: Work Status - Notifications 1/2

Sending E-mail Notifications to Owners and Managers is possible. So they areautomatically notified when a change occurs in a work status.

Figure 505: Work Status - Notifications 2/2

2011 © 2011 SAP AG. All rights reserved. 683

Page 704: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

The above screenshot shows the e-mail the owner gets when the status is changed.You can have a look at the e-mail by navigating in the related backend system andnavigate as follows: Menu → Business Workplace → Inbox → Unread Documents.The text of the e-mail depends on the text you had maintained in the “Notification”pop-up in the “Work Status” section of the Administration Web Client.

Figure 506: Work Status Settings - Model related Table

Setup of Data Locking Settings:Use this function to set up data locking settings for each model. This involvesidentifying aminimum of 3 and a maximum of 5 dimensions from the environment.The dimensions should be variables in your business process, such as entity, category,and time. These are dimensions whose members change based on who is submittingdata.For example, the time dimension is typically a data locking dimension, since datais segregated based on time. Dimensions such as account, data source, reportingcurrency, and so on, typically remain static, so those are considered non-data lockingdimensions. An Account-type dimension cannot be defined as a data locking

684 © 2011 SAP AG. All rights reserved. 2011

Page 705: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

dimension. The dimension that contains the Owner property must be defined as a datalocking dimension. You can enable data locking and select the dimensions to lock theprocess context, or disable data locking.

Hint: If you have maintained several hierarchies for your “Owner” propertycarrying the dimension, the “Hierarchy:” field in the above screenshot can beused to decide from which hierarchy the Owner and Manager will be taken!

Figure 507: Change Work Status...

To change the work status for a data region, select Save Data → Change Work Status...on the EPM tab in Excel. The Change Work Status dialog box opens, where youdefine for which data region you want to change the work status. For each dimension,the context member is displayed by default. You can select another member for adimension by clicking the ellipsis button.In Planning and Consolidation for SAP NetWeaver, you must only select a basemember for each dimension except the Owner Dimension or you will not be ableselect another work status. You can change the work status only for members of whichyou are the owner or manager.

For the first dimension, which is defined as the owner dimension in the Administrationview, you can include in the selection all the descendant members of the specifiedmember by selecting the Include all Descendants option.

2011 © 2011 SAP AG. All rights reserved. 685

Page 706: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Owner / Manager Determination:

• Parent member owners act as an owner for that specific parent member ID.• Parent member owners act as a manager for their direct children.• The parent owner can change any specific “direct ” child work status; can be

both parent and base members.• When using“ Include all Descendants” the owner of a parent can update all

children (all levels) below.• Base (leaf) members owners act as owner only.• Members (top of a hierarchy) that have no parent but have children act as their

own manager in addition to owner.

Work Status is stored in table:

Work StatusTable:

/1CPMB/LKWS+appset_prefix+appl_prefix

Figure 508: Audit - Work Status

The report on work status allows you to display the work status codes for a set ofgiven criteria. You can filter the report to the specific region of the cube for which youwant the work state. The work status report shows Data State, which is the currentwork state for the data. It tells you the current stage of the data in the overall approval

686 © 2011 SAP AG. All rights reserved. 2011

Page 707: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

process. It also shows the dimensions for which you define work status as beingapplicable. There can be three to five dimensions (the report adjusts dynamicallybased on the active application). You specify the report parameters as specifiedin the following table:

Option Description

Model Select a model, for example, PLANNING or RATE.

DimensionMembers

Select dimensions and dimension members that the work statusis stored against. The dimensions displayed depend on theselected model.

Date and Time You can choose start and end dates for the report or display thefull history of the selected work status information (Anytime).

AdditionalCriteria

User ID – Enter the User ID for which you need the work statusreport.

To view a work status report, select Audit from the left navigation pane on the Hometab, and, from the list of reports, select Work Status. Set the appropriate reportingoptions and choose Display Report.

2011 © 2011 SAP AG. All rights reserved. 687

Page 708: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

To Configure and Test Work Status

1. In the Administration Web Client, click Administration Tab Card →Features → Work Status .

2. Click “New” in the “Work Status” section to create a new work status. Onthe next screen, fill in “Name:” and “Description:” and flag one of the threepossibilities in the “Controlled by” section.

3. Then, flag the right selections in the “Permitted Data Entry Methods”section.

4. Then click “Save”, then “Close”.5. In the “Work Status” section, click “Reorder”. In the next pop-up, mark

your new work status and then click “Move Up” or “Move Down” toposition your new work status. Then click “Save”.

6. If, in the “Work Status” table, it is necessary to change the “Controlledby” or “Permitted Data Entry Methods”, then mark the relevant existingwork status and select “Edit”. On the next screen, execute the adaptionsand then click “Save”.

7. In the “Data Locking Settings by Model” section, mark “Settings for:xxxx” for your model and then click “Edit”.

8. In the next pop-up, flag “Enable Data Locking” and then select your“Owner Dimension”. Select the “Hierarchy” of your choice whichdetermines the Manager - Owner relationship. This is only possible whenthe owner property carrying dimensions contains more than one hierarchy.

9. In the “Other Dimensions” section, select the other dimension variables.Then click “Save”.

10. In the “Work Status” section, click “Notifications” and then flag “ActivateE-mail Notifications” and then flag “Default message” or “User-definedmessage”. In the last case, you will have to define a message of yourown using the delivered variables which can be found by pressing the“Information” button in the middle right section of the pop up. Then click“Save”.

11. In the EPM tab of the Excel interface, click Save Data → Change WorkStatus....

12. Change the Work Status as follows:

• The first dimension carries the Owner property. Select a leaf or nodemember by clicking at the grey button at the right hand side for thisdimension. When you select a node member, it is possible to flag“Include all Descendants”.

Continued on next page

688 © 2011 SAP AG. All rights reserved. 2011

Page 709: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

• The following dimensions are the dimensions variables defined in 9.Always select leaf members here if you want to change the workstatus.

• Click the black triangle to the right of the dropdown box for “NewStatus” and select the desired status. Then click “Apply” and then“OK”.

13. Test the work status by entering data for the selections you had lockedand then select Save Data → Save and Refresh Workbook Data. Thenclick “Yes” and then select “OK” when the error message concerning workstatus comes up.

14. Finally, you want to track work status as an administrator. Navigate backto the Administration Web Client and click Home tab card → Audit →Work Status.

15. Click the black triangle for the Model dropdown box and select the modelof your choice.

16. In the “Dimension Members” section, also click the white square icon atthe right hand side of each dimension dropdown box and select “SelectMember...”. In he next pop-up, flag the member of your choice and press“OK”.

17. In the “Date and Time” section, flag “Anytime” or “Start Time” and selectthe time frame of your choice.

18. If necessary fill in your user in the “User” field.19. Then click “Display Report”.20. Finally, close the report by clicking at the “Audit - Work Status” tab card.

2011 © 2011 SAP AG. All rights reserved. 689

Page 710: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

690 © 2011 SAP AG. All rights reserved. 2011

Page 711: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Exercise 14: Configure Work Status

Exercise ObjectivesAfter completing this exercise, you will be able to:• Create a work status table• Define a work status settings table• Execute work status

Business Example

Task: Test Work StatusConfigure Work Status

1. Navigate to the Administration Web Client for your BPC420_## environmentand first check if your BPC-## user is maintained as “OWNER” for all “Entity”members. If not, maintain the user in the “OWNER” column and then “Save”,then “Save and Process” and then “Close” your master data editor.

2. Then navigate to the “Work Status” table and maintain the environment-relatedtable by adding a further work state “TESTWS”. Adapt the Work Status table asfollows:

Figure 509: Work Status Table - Environment Related

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 691

Page 712: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Then, navigate to the “Notifications” section and “Activate E-mail Notifications”.Select the “Default message”. Leave your screen open.

3. Now maintain the model-related “Work Status Settings” in the same screen.First, “Edit” the “Settings for: D_PLAN##”. “Enable Data Locking” and leave“Entity” as “Owner Dimension”. In the “Other Dimensions:” section, leave“CATEGORY” and “TIME” selected. Leave the Administration Web Clientopen.

4. Navigate to the EPM tab in Excel and make sure that the following selectionsare set:

Dimension Selected Member

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

P_ACCT KPI_NODE

PRODUCT2 DOGDRYPUPPY

TIME 2011.JAN

MEASURES PERIODIC

Your input form “IF_TEST_SCRIPT_LOGIC” should already be open. “Refreshyour Report” if you had to change some selections.

Then, set your lock on “CATEGORY” member “FLASH”. Also select “TIME”member “2011.JAN” and “ENTITY” member “STORE17” and change the workstatus from “Unlocked” to “Testws”.Then type 200 for KPI1 in 2011.JAN and save your data and refresh it at thesame time. You should receive an error message since “Work Status Testws”locks this data selection for “Data Entry”.

Continued on next page

692 © 2011 SAP AG. All rights reserved. 2011

Page 713: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Figure 510: Work Status Error Message

Finally set the Work Status back to “Unlocked” for the same selection and enter“200” for the same selection. Now, saving data should be possible without aproblem, since “Unlocked” does not lock any data. Leave your Excel mode open.

2011 © 2011 SAP AG. All rights reserved. 693

Page 714: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Solution 14: Configure Work StatusTask: Test Work StatusConfigure Work Status

1. Navigate to the Administration Web Client for your BPC420_## environmentand first check if your BPC-## user is maintained as “OWNER” for all “Entity”members. If not, maintain the user in the “OWNER” column and then “Save”,then “Save and Process” and then “Close” your master data editor.

a) Within the Administration Web Client make sure that BPC420_## is setas your environment. Then navigate as follows: Administration tab →Dimensions and Models → Dimensions. Then mark “Entity” and thenclick “Edit Members”. Navigate to the “OWNER” tab and check if youruser “BPC-##” is filled in this column for all members. If not, enter youruser for each member and then press “Save”, then “Save and Process” andfinally click “Close”.

2. Then navigate to the “Work Status” table and maintain the environment-relatedtable by adding a further work state “TESTWS”. Adapt the Work Status table asfollows:

Figure 511: Work Status Table - Environment Related

Continued on next page

694 © 2011 SAP AG. All rights reserved. 2011

Page 715: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Then, navigate to the “Notifications” section and “Activate E-mail Notifications”.Select the “Default message”. Leave your screen open.

a) Navigate as follows on the “Administration” tab: Features → Work Status.Next navigate in the upper “Work Status” section and click “New”. On thenext screen, fill in “Testws” as “Name:” and “Description:”. Flag “Ownerand Manager” in the “Controlled by” section. Then flag the combination“Locked/Manual Entry”. Then, click “Save”, then “Close”. In the “WorkStatus” section, click “Notifications”. A pop-up appears. Here, flag“Activate E-mail Notifications”. Then flag “Default message” and thenclick “Save”. Then mark your new status within the “Work Status” sectionand click “Reorder”. In the next pop-up, click your new status and thenonce press “Move Up”. Then click “Save”. Leave your screen open.

3. Now maintain the model-related “Work Status Settings” in the same screen.First, “Edit” the “Settings for: D_PLAN##”. “Enable Data Locking” and leave“Entity” as “Owner Dimension”. In the “Other Dimensions:” section, leave“CATEGORY” and “TIME” selected. Leave the Administration Web Clientopen.

a) With your screen open, mark “Settings for: D_PLAN##” in the “DataLocking Settings by Model” section. Then press “Edit”. Flag “EnableData Locking” and don't change the rest of the settings. You should seethe following:

Figure 512: Work Status Settings

Click “Save” and leave your screen open.

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 695

Page 716: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

4. Navigate to the EPM tab in Excel and make sure that the following selectionsare set:

Dimension Selected Member

CATEGORY FLASH

ENTITY STORE17

INPUTCURRENCY EUR

P_ACCT KPI_NODE

PRODUCT2 DOGDRYPUPPY

TIME 2011.JAN

MEASURES PERIODIC

Your input form “IF_TEST_SCRIPT_LOGIC” should already be open. “Refreshyour Report” if you had to change some selections.

Then, set your lock on “CATEGORY” member “FLASH”. Also select “TIME”member “2011.JAN” and “ENTITY” member “STORE17” and change the workstatus from “Unlocked” to “Testws”.Then type 200 for KPI1 in 2011.JAN and save your data and refresh it at thesame time. You should receive an error message since “Work Status Testws”locks this data selection for “Data Entry”.

Continued on next page

696 © 2011 SAP AG. All rights reserved. 2011

Page 717: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Figure 513: Work Status Error Message

Finally set the Work Status back to “Unlocked” for the same selection and enter“200” for the same selection. Now, saving data should be possible without aproblem, since “Unlocked” does not lock any data. Leave your Excel mode open.

a) Navigate to your EPM tab in the Excel interface. Make sure that thedimension members of the exercise table are set. If not, navigate as followsto set the selections - explained here for CATEGORY:In the “EPM Context” row, click the black triangle for the CATEGORYdropdown box. Then, click “Select Other Members...”. In the next pop-up,click the black triangle for the “Select Member Names to Display” icon.Then, click “ID”. Then mark “FLASH” and then click “OK”. Navigate thesame way for the other dimension member selections if necessary. If yourinput form “IF_TEST_SCRIPT_LOGIC” is not open, open it as follows:Open → Open Server Root Folder... → Company → Input Schedules →BPC420-##. Mark your input form and then click “Open”. Then clickRefresh → Refresh Selected Report.Now let's set the work status. Navigate as follows: Save Data → ChangeWork Status.... In the next pop-up, “EPM - Change Work Status”, youshould see the following:

Continued on next page

2011 © 2011 SAP AG. All rights reserved. 697

Page 718: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 514: EPM - Change Work Status

Here, click the gray button with the three dots for “TIME” and click the“+” next to “2011 Total”, then click the “+” at “2011 Q1” and then click“2011.JAN”. Then press “OK”. Click the black triangle next to “NewStatus:”. Then, mark “Testws” and then click “Apply”, and finally “OK”.Then, in your input form, enter “200” for KPI1 with 2011.JAN and thenselect Save Data → Save and Refresh Workbook Data. In the next pop-u,pclick “Yes” and then the “Save Results” pop-up should appear with theerror message concerning work status given in the above screenshot. Click“OK”.Finally, click Save Data → Change Work Status... and in the resultingpop-up, click the gray button with the three dots for “TIME” and click the“+” next to “2011 Total”, then the “+” at “2011 Q1” and then click the“2011.JAN”. Then press “OK”. Click the black triangle next to “NewStatus:”. Then, mark “Unlocked” and then click “Apply”, and “OK”.Then enter 200 for KPI1 with 2011.JAN and then select Save Data →Save and Refresh Workbook Data. Then, click “Yes” and then “OK”. Nomessage should appear, since with “Unlocked” all users can save data inany “Permitted Data Entry Method” including “Manual Entry”. Leaveinput form and Excel mode open.

698 © 2011 SAP AG. All rights reserved. 2011

Page 719: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: Configuring Work Status

Lesson Summary

You should now be able to:• Explain the concept of work status• Describe customizing• Identify execution of work status

2011 © 2011 SAP AG. All rights reserved. 699

Page 720: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson: OPTIONAL: Explaining Transports

Lesson OverviewIn this lesson you will learn about transports in Planning and Consolidation.

Lesson ObjectivesAfter completing this lesson, you will be able to:

• Define how transport works in BO PC• Illustrate the transactions to define transports.

Business ExampleTransports allow you to move an environment across a landscape. For example, youcan transport an environment from a development system to a test system and thento a production system.

Transport ManagementThere is no need to maintain separate transport process strategies for BO PC objects.As it is fully integrated into NW CTS, it is easy for system administrators to domaintenance/scheduling jobs along with other NW objects.With Planning and Simulation, we have a granular transport feature which allows youto transport almost all components “individually ” using the standard NW transportframework. Transports should only contain the objects which are needed. That istransporting the individual components such as dimensions, dimension members,applications, work status settings, report, and so on separately. Granular transportingreduces the transport times significantly. You can use the standard NW transportdebugging tools for better error analysis.

Note: Transporting one or more environments at a time is possible.

700 © 2011 SAP AG. All rights reserved. 2011

Page 721: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

Two modes of transport are supported:

• Normal mode – For modifying and creating objects. In this mode, if atransported object exists in the target system, it is modified with the changesfrom the source system. If it does not exist, it is created.

• Deletion mode – For deleting objects. In this mode, you explicitly specify theobjects to delete.

Figure 515: Transport Mode - Normal Mode

In this mode, if a transported object exists in the target system, it is modified with thechanges from the source system. If it does not exist, it is created.

Note: All aspects of an environment are transported except transaction data.

Note: You can also collect NetWeaver objects into a transport request, suchas NetWeaver process chains. To move process chains into your productionenvironment, use the SAP NetWeaver transport process for process chains.The process chain must be assigned to component /cpmb/BPC.

2011 © 2011 SAP AG. All rights reserved. 701

Page 722: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 516: Transport Mode - Deletion Mode

In this mode, the objects which are explicitly mentioned for deletion are deleted.These are the only Environment objects which support Deletion Mode of Transport.

Figure 517: Transport Dependency Check

To transport successfully, make sure that the dependent objects exist either in targetsystem or transport request. For example, application Appl1 depends on dimensionDim1, so to transport Appl1, make sure Dim1 has already exists in target systemor Dim1 has been collected in the transport request Otherwise, the transport Appl1will fail.“During the transport creation process”, the transport framework will check theexistence of these dependent entities. The transport framework will raise a warningmessage of missing dependent entities when the transport request is released. The usercan continue to do transport by selecting “continue with warning message”.If the dependent entities already exist in the target system, transport will succeedotherwise the transport will fail.“During the Import process” a dependency check is also executed. If it fails, a rollback will happen on the single entity (corresponding to transport granularity) thatencounters error during transport and it will not affect other entities.

702 © 2011 SAP AG. All rights reserved. 2011

Page 723: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

“The Data checker is executed after importing”. Roll back will not be executed at thisstep. Error or warning message will be returned back when there are issues duringthis step.

Hint: Besides these three types of dependency check, the transport frameworkwill check the existence of the Environment information when the transportrequest is released. If the Environment information has not been collected ina transport request, a warning message of missing Environment informationwill be returned back by transport framework even if the Environmentinformation has not been set as the dependent entity.

Figure 518: Transport Steps - Normal Mode 1/5

In Planning and Consolidation, the standard NW transport UI is used to transport BOPC objects. Log on to the backend system and execute transaction RSA1, then choosethe Transport Connection tab in left column to start the transport process.

2011 © 2011 SAP AG. All rights reserved. 703

Page 724: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 519: Transport Steps - Normal Mode 2/5

This is the standard BW transport process and BO PC objects are included to thisframework itself. In the left column navigate as follows: SAP Transport group →Object Types. In the middle column, BO PC objects are found under More Types →Environment. Select Objects to choose a new Environment for transports. Alreadyselected/transported Environments are visible under Environment group itself forfuture transports.

704 © 2011 SAP AG. All rights reserved. 2011

Page 725: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

Figure 520: Transport Steps - Normal Mode 3/5

All the Environments in the system are displayed, select the one which need to betransported. Click the Transfer Selections button to go to the selection screen.

2011 © 2011 SAP AG. All rights reserved. 705

Page 726: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 521: Transport Steps - Normal Mode 4/5

Note: Before transporting, make sure that the Environment is offline in bothSource and Target systems, so as to not allow any further changes duringTransport. Transport will not be successful (will get error message) if it is notoffline.

Hint: Transporting Environments - If a transport fails for an object, thechanges for that object are not made in the target system. The object in thetarget system remains unchanged. This does not affect the transport of otherobjects to the target system.

706 © 2011 SAP AG. All rights reserved. 2011

Page 727: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

Figure 522: Transport Steps - Normal Mode 5/5

Once all the required Transport objects have been created, create a customizingrequest to include these transport objects and release it for transport. According to thetransport route configuration (prerequisite), the import process starts automatically. Ifnot, using transaction STMS import can be triggered manually.

Note: All the BW objects are not really ‘transported’ into target system.Actually, they are generated in target system when a metadata object istransported. Similarly, for a virtual info provider, when a BO PC applicationis transported with GRC integration flag on in source system, the virtualprovider is generated accordingly in the target system.

2011 © 2011 SAP AG. All rights reserved. 707

Page 728: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Figure 523: Transport Steps - Deletion Mode

This process is almost the same as the Normal mode, except the step to choose the BOPC Deletion type instead of Environment type.

Note: If deletion fails for an object, the changes for that object are not madein the target system. The object in the target system remains unchanged. Thisdoes not affect the deletion of other objects in the target system

Hint: Transporting Deletion - After an object has been deleted in the sourcesystem, you can mark it for deletion in the target system. You can select thedeleted objects to transport. However, you can only select deleted objectsfor which there are no dependencies.

Hint: If deletion fails for an object, the changes for that object are not madein the target system. The object in the target system remains unchanged. Thisdoes not affect the deletion of other objects in the target system.

Hint: Do not add a normal transport and a deletion transport for the sameenvironment into one customizing request. See SAP note 1583670.

708 © 2011 SAP AG. All rights reserved. 2011

Page 729: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

Transport Log Files: After a transport has been completed, you can view thetransport log. The log reports the successful completion of a transport request, as wellas warnings and errors encountered during the transport.

Hint: The program “UJT_AFTER_FAIL_PROCESS” can be used whentransport problems occur.

Figure 524: Transport Steps - Debugging Transport Issues

Debugging Transport Issues:The Log reports the successful completion of a transport request, as well as warningsand errors encountered during the transport. To find only the transport logs specific toBO PC, use transaction SLG1 and in the Object field enter UJ and in the Subobjectfield enter UJT. Click the execute button. Messages, like the “Environment statusnot offline; cannot export/import transport request”, appear which guides you to theexact source of the issue.

2011 © 2011 SAP AG. All rights reserved. 709

Page 730: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

To Configure Transport Settings

1. Logon to the source system and enter transaction code RSA1.2. In the left column, select Transport Connection.3. Select the objects to transport.4. In the left column, select SAP Transport Object Types.5. In the middle column, select More Types BPC Environment.6. Double-click Select Objects.7. In the dialog box, select the environment to be transported and click

Transfer Selections.8. In the right column, the objects in the environment are listed. Select the

objects to be transported by selecting or deselecting the correspondingobject.

9. Generate a customizing request by clicking the Transport Objects buttonin the right column.

10. In the dialog box, click the Create Request button to generate a newcustomizing request, then click the Continue button.

11. In the next dialog box, enter the description and transport target, then clickthe Save button.

12. Click the Continue button to generate the customizing request. The selectedobjects are included into the request.

13. Enter transaction code SE09 to open the transport organizer. Click Display.14. Release the customizing task by selecting the task under the customizing

request you just generated.15. Click Release directly.

Deployment ScenariosThere are two typical landscape deployment scenarios:

• Development to Production• Production Only (with Development for patch testing)

In the “Development to Production deployment scenario”, you create and maintainan environment in development. All dimensions, dimension properties, and modelsare created in development. A decision needs to be made for all other objects.Typically, all objects are created in development and transported to production. Theexceptions include security and teams, which typically are handled landscape bylandscape. Additionally, the decision would need to be made for Workbooks (report

710 © 2011 SAP AG. All rights reserved. 2011

Page 731: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Lesson: OPTIONAL: Explaining Transports

templates and input schedules). If this is done in development, then workbooks inproduction would be overwritten. If this is done in production, then workbooks fromdevelopment are not transported.

In the “Production only scenario”, you work in production only. When you need toapply a patch, you transport the environment from Production to Development. Youtest the patch in Development. After the patch is validated, you apply the patch toProduction.

“Best Practices for Ongoing Development”Some customers have release cycles in which they are unable to transport an entireenvironment. For example, they may have a configuration that has Productionsupport changes and another configuration on the same model or environment thatis transported at a later stage in the project cycle. In this case, you should have twoenvironments in development, one for new development, and one for productionsupport changes. When a production support change occurs, this should be done inboth environments in development. When the cut-over of new development needsto be transported, then the configuration can be moved to the production supportenvironment and transported.

2011 © 2011 SAP AG. All rights reserved. 711

Page 732: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit 7: Administration BPC420

Lesson Summary

You should now be able to:• Define how transport works in BO PC• Illustrate the transactions to define transports.

712 © 2011 SAP AG. All rights reserved. 2011

Page 733: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Unit Summary

Unit SummaryYou should now be able to:• Estimate the Validation Concept• Describe the customizing for Validation• Track Changes to Data and Activities• Configure Auditing• Define how Concurrency Locking works• Explain the concept of work status• Describe customizing• Identify execution of work status• Define how transport works in BO PC• Illustrate the transactions to define transports.

2011 © 2011 SAP AG. All rights reserved. 713

Page 734: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Unit Summary BPC420

714 © 2011 SAP AG. All rights reserved. 2011

Page 735: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 736: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf
Page 737: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Test Your Knowledge BPC420

715 © 2011 SAP AG. All rights reserved. 2011

Page 738: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Course Summary BPC420

Course SummaryYou should now be able to:

• Set up environments, models, and dimensions• Work with hierarchies• Navigate in the interface for Excel• Perform flat file, InfoCube to InfoCube transaction data imports• Set up BW characteristic master data imports• Create Data manager package ‘links’• Work with logic, business add-ins (BAdI’s), and custom process chains• Execute Allocations• Configure business process flows• Set up work status and security• Work with activity and data audit• Discuss locking• Discuss transports

716 © 2011 SAP AG. All rights reserved. 2011

Page 739: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 1Web Client Interface Features

• You can change the user preferences to customize the display of your UI -Preferences

• You can change the way data displays in table format - Grid• You can use keyboard shortcuts for quick navigation to specific functions

- Keyboard Shortcuts• You can print objects in PDF format - Printing Objects• You can create a message template as the basis for the message structure -

Message Template.

PrefPreferencesYou can change the user preferences to customize the display of your UI. You canmake changes to the startup options, language, and display, among other settings.GridYou can display data in table format and change the display as follows:

• Reorder the columns in a table using drag and drop• If possible you can filter the data displayed in a table using the Toggle Search icon• By entering a specific value, you can narrow the data displayed to only include

that value• Display or hide certain columns using the column selector

All columns are displayed by default. To hide a particular column, deselect thecheckbox for that column. Sort the data in the table according to a particular columnby selecting the column header. The data is sorted in ascending or descending order.

Keyboard Shortcuts

Allow quick navigation to specific functions.

2011 © 2011 SAP AG. All rights reserved. 717

Page 740: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 1: Web Client Interface Features BPC420

Available are the following keyboard shortcuts:

• CTRL + M to open the Start button dropdown• CTRL + SHIFT + ALT + O to open the Browse dialog box• CTRL + SHIFT + ALT + N to create a new workspace

Keywords being in an open workspace:

• CTRL + SHIFT + ALT + F to create a new folder• CTRL + SHIFT + ALT + D to save a workspace• CTRL + SHIFT + ALT + W to create a new view• CTRL + SHIFT + ALT + X to close a workspace• CTRL + SHIFT + F12 to open a workspace in full screen mode inside the browser

Keywords being in an open briefing book:

• SHIFT + ENTER to navigate between the book and organizer view in a briefingbook

• CTRL + LEFT ARROW or CTRL + RIGHT ARROW to navigate betweenpages in the book or tiles in the organizer

• CTRL + ENTER to open a page in the book from the corresponding tile in theorganizer view

• SHIFT + R to tename a tile in the organizer view• CTRL + SHIFT + DELETE to delete a tile from the organizer view and to delete

the corresponding page from the briefing book.

Printing Objects

You want to print objects in PDF format and you have a PDF reader installed.It‘spossible to print a workspace, report, or dashboard, from the toolbar. You have tochoose the Print icon and select the document title which corresponds to the name ofthe tab you are printing.

Note: For workspaces only: The name of the document is the name of theworkspace combined with the name of the current view. A PDF version ofthe content is generated. You can open it and print the PDF document orsave it to your local system.

Message Template

You can use the smart forms visual editor to create and update message templates.When you publish a message, you can select a smart form by specifying the formname.

718 © 2011 SAP AG. All rights reserved. 2011

Page 741: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 1: Web Client Interface Features

Guidelines to ensure compatibility between the message and smart form:

• Define only one page with only one main window-• Define the alignment of text at paragraph level and not at text element level• Do not use unsupported elements• Use only page, window, text (with no web attributes), program lines, and date

elements. Standard placeholders can be used• Set the smart Form Global Settings/Form Attributes, Output Options/Output

Format to XSF Output + HTML• Set the Smart Form Global Settings/Form Attributes/Output Options/Page

Format to Online.

Restrictions:

• The notification title cannot be maintained as part of the smart form• A hyperlink in a smart form can be rendered as a HTML hyperlink with a

hyperlink description as• described in the following SAP Note: SAP Note 622718- Images are not

supported• Tables are only rendered in e-mails- Interactive web forms are not supported• Text area is not supported- Background graphics are not supported• Address is not supported- Folders are not supported• Smart form styles, for example, font, is not supported; however, bold, italic,

and underlined texts are not supported.

Access the smart forms visual editor via transaction “smartforms”.

For an example see ABAP report “/POA/R_EN_NOTIFICATION_DEMO”.

For an example of how to use the sample smart form see“/POA/SBC_EN_DEMO_SFT03”.

For more information about smart forms, see the SAP Library documentation on SAPHelp Portal and Search for Basic Elements of a Form. Standard Placeholders.Standard Placeholders:

These are a set of tokens that can be placed in the payload of a message, either inthe body or the subject.If the placeholder exceeds the maximum permitted length inthe subject line, it is truncated.

2011 © 2011 SAP AG. All rights reserved. 719

Page 742: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 1: Web Client Interface Features BPC420

Tokens:

• $FirstName$ for the First name of the recipient• $LastName$ for the Last name of the recipient• $DisplayName$ for the Display name of a recipient• $PublishDateTime$ for Date and time the message is published• $AllRecipients$ -> List of recipients this message is delivered to.

720 © 2011 SAP AG. All rights reserved. 2011

Page 743: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 2Workspace and Library

Figure 525: BPC NW Web Client - Workspaces

A workspace is a grouping of specific content or objects specific to a certain businessprocess and needed for reporting.This grouping of specific content is displayed in a single location on the UI.The workspace is made up of one or more views.Views are used to organize content inside the workspace; you can group the viewsinto folders.The views can contain widgets whereby a widget is the smallest unit in the workspace.It can be in form of a report, input form, a Crystal Dashboard, chart, or other tool thatthe user can use to analyze data. Widgets can be added using drag and drop.Predefined workspaces:

2011 © 2011 SAP AG. All rights reserved. 721

Page 744: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 2: Workspace and Library BPC420

The content (views and widgets) is predefined; you cannot add or delete content in theworkspace. You can use the workspace to analyze data.User-defined workspaces:You can create the workspace from scratch, adding views and widgets and saving thatworkspace as required.If you have the permission to create and modify workspaces you can create a newworkspace, add a view, add widgets to the view, and save the workspace.You can only modify user-defined workspaces.The content of predefined workspaces is locked and cannot be modified.In a workspace, users can include content from the Library or create new reports orinput forms specific to the workspace.If reports and input forms are created within the workspace, those objects are notavailable outside that workspace.On the other hand, if a user adds content from the library, that content is still availablefrom the library as well as the workspace.

Figure 526: Creating a new Workspace

When creating a new workspace, you should notice two items.First:A new Tab was created defining the workspace which will encapsulate all objectsspecific to this workspace.Second:The default context is displayed and is inherited from the Administration defaults.While this is the default, it can be changed when the workspace is being created.

722 © 2011 SAP AG. All rights reserved. 2011

Page 745: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 2: Workspace and Library

Figure 527: Workspace and Context Defaults

Context is the model, dimensions, and associated members authorized to a user andapplicable to what is displayed in the workspace, folder, or view. So this featureenables you to specify what the defaults are used for the scope context.In the Context Defaults top panel of the main page, you can specify the defaultmodel that will be used when initializing the scope context. In the bottom panel ofthe main page of this view, you can edit and then specify the defaults per Dimensionof the selected Model.The scope context will be initialized with the defaults of the relevant dimensions:

• The default Member in a Report• The default Member in Data Input document• Whether the Dimension is displayed in the scope context or not• The Description of the Dimension is displayed instead of the ID• Only the ID of the Members is displayed or only the Description or both.

2011 © 2011 SAP AG. All rights reserved. 723

Page 746: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 2: Workspace and Library BPC420

Figure 528: Add Content

To choose which model this workspace is for, click the blue files button to the leftof the context.This button also allows the workspace to use the default settings (set up by anadministrator), display all, or hide all dimension member names.To Add Content from the Library, select Add Content and the library’s folders(Private, Public, and Teams) will appear.Select the desired report, input form, or Crystal Dashboard desired, and select OK.

Figure 529: Creating a New Workspace – A new line and Action Bar come up

724 © 2011 SAP AG. All rights reserved. 2011

Page 747: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 2: Workspace and Library

When a new object is added to the Workspace, a new line item is created underOverview. Additionally, a new action bar is created allowing the user to Refresh thereport, view Comments, and change the Work Status.

Figure 530: Comments and Work Status

A user can add, edit, delete, manage comments as well as view comment history byselecting the Comments button.Work Status can be changed by clicking the Work Status button

2011 © 2011 SAP AG. All rights reserved. 725

Page 748: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 2: Workspace and Library BPC420

Figure 531: Reports and Forms for Workspace

As stated earlier, reports and input forms can be created specifically for the workspace.To add a new report or input form, click Add New Report and the report/input formdesigner is opened. Also web reports andf forms can be included.

Figure 532: Rename, Delete, Default Setting

Objects within a workspace can be renamed, deleted, as well as being able to setan object as the default.

726 © 2011 SAP AG. All rights reserved. 2011

Page 749: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 2: Workspace and Library

Figure 533: Saving Workspace

The last step is to save the workspace which can be saved in any of the three libraryfolders, Public, Private, or Teams.

Figure 534: Modifying Workspaces in the Library

To modify a workspace, open the Library view from the Home folder, selectWorkspaces from the filter list.Click the workspace name and the Library Action menu bar will become active.A user can now Open, delete, rename and move the workspace to another folderor subfolder.

2011 © 2011 SAP AG. All rights reserved. 727

Page 750: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 2: Workspace and Library BPC420

728 © 2011 SAP AG. All rights reserved. 2011

Page 751: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 3Library and Folders

Figure 535: Library and Folders

The Web Client Library is accessed from the left menu of the home page allowingusers to create, view, and edit different Planning and Consolidation objects(Workspaces, Reports, Input Forms, Dashboards, and Books).

2011 © 2011 SAP AG. All rights reserved. 729

Page 752: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 3: Library and Folders BPC420

The folders and documents that the user has access to depends on his/her accessrights. The objects in the Library view are sorted by folders. You can select a folder tosee the objects saved to it. There are four main folders:

• Private – You can create your personal folder and save content in it, whichyou do not want to share with other users. The content of this folder cannot beaccessed by other users. If you have more than one personal folder, you canmove content from one folder to another. You can share content stored in yourpersonal folder with other users. For this, select the users and the roles to whomyou want to provide access.

• Public – This folder contains content that can be accessed and modified by allusers depending on the permissions in place. It is possible to restrict access tothis folder. Users with the task profile Update Company Folders can add andmanage the content.

• Teams - This folder is created automatically by the system and removed whena team is created/removed. Team members can access all content of the teamfolder, but only the team lead can update the content.

• Favorites – You can add objects to this folder to group to together the objectsthat you use frequently. The Folder column shows the folder in which the objectis stored.

Figure 536: Folders - Filter Objects

A user can filter on the objects displayed by clicking the appropriate hyperlink(Workspaces, Reports, Input Forms, Dashboards, Books, or All).

730 © 2011 SAP AG. All rights reserved. 2011

Page 753: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 3: Library and Folders

Figure 537: Folders - Object Maintenance

Library actions are just below the filtering option, allowing the user to create, open,delete, rename, and move objects to certain folders.By clicking New, the user is able to create new objects as long as they have the propersecurity access (edit rights).

2011 © 2011 SAP AG. All rights reserved. 731

Page 754: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 3: Library and Folders BPC420

Figure 538: Folders - How to open an Object

To Open an object, either double-click the object or highlight the object and selectOpen.In this case, a new folder displays the Rates workspace is opened rendering twosubfolders (Rates and Ownership).Also, notice the default context is displayed (Actual from GL, 2009.Dec, and RateEntity) but can be modified by selecting the blue plus button.

Figure 539: Folders - Deletion of Objects

732 © 2011 SAP AG. All rights reserved. 2011

Page 755: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 3: Library and Folders

To Delete an object, highlight the object and select Delete. After selecting Delete, aconfirmation box appears making sure you want to delete the object.

Figure 540: Folders - Renaming of Objects

To Rename an object, highlight the object and select Rename. A prompt screen isopened for the user to rename the object.

Figure 541: Folders - Moving of Objects

2011 © 2011 SAP AG. All rights reserved. 733

Page 756: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 3: Library and Folders BPC420

To Move an object to another folder, highlight the object and select Move To and thefolder list will appear. Select the desired folder and select OK.

734 © 2011 SAP AG. All rights reserved. 2011

Page 757: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 4Flat File Upload - Append Package, Import

Package and Import Append Package with Mergeand Replace and Clear

Figure 542: Flat File Upload - Append Package

As you can see with „Append“ data sets with the same selection in first and secondload are just added.

2011 © 2011 SAP AG. All rights reserved. 735

Page 758: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear BPC420

Figure 543: Flat File Upload - Import Package - Merge

As you can see from the Import Package with Merge data sets with the same selectionsbehave the way that a delta is calculated.

736 © 2011 SAP AG. All rights reserved. 2011

Page 759: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear

Figure 544: Flat File Upload - Import Package - Replace and Clear

As you can see „Replace and Clear“ in combination with the Import Package firstdeletes all data of a prior load and only keeps the last load‘s data.

2011 © 2011 SAP AG. All rights reserved. 737

Page 760: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear BPC420

Figure 545: Flat File Upload - Import Append Package - Merge

As you can see the Import Append Package first writes zero data for the selections ofthe first source file which means that the data tables for these selections are deleted= for KPI1 and KPI2).Then new data for these selections (from file 1) is written into Cube by Append Mode(1500 and 1000).For the second load existing data in the cube is cleared again but only for selectionsfound in the second source file (1500-).For all new selections which are new in the second file system first writes zero (0for KPI3).Then new data for these selections (from file 2) is added into Cube (1600 and 2000).

738 © 2011 SAP AG. All rights reserved. 2011

Page 761: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear

Figure 546: Flat File Upload - Import Append Package - Replace

Compared to the merge variant the replace and clear variant deletes the prior loadwhich means that 1500- and 1000- are written into the cube.

2011 © 2011 SAP AG. All rights reserved. 739

Page 762: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 4: Flat File Upload - Append Package, Import Package and ImportAppend Package with Merge and Replace and Clear BPC420

740 © 2011 SAP AG. All rights reserved. 2011

Page 763: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 5BW Data Upload - Aggregate Overwrite and Append

with Merge and Replace and Clear

Figure 547: Load Transaction Data from BW InfoProvider – Aggregate Overwrite- Merge

With „Merge“ the system checks if the second load contains selections that werealso in the first load (KPI1 ) and deletes them. Data sets with selections that can‘tbe found in the second load are kept (KPI2). New data sets from the second loadare added (KPI3).

2011 © 2011 SAP AG. All rights reserved. 741

Page 764: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 5: BW Data Upload - Aggregate Overwrite and Append with Merge andReplace and Clear BPC420

In general: Data in the source will first be aggregated by all dimensions.Then data inthe target will be overwritten by source data by all dimensions.

Figure 548: Load Transaction Data from BW InfoProvider – Aggregate Overwrite– Replace and Clear

Replace and Clear first deletes all data from the first load and then adds data from thesecond load.

In general: The target data will first be cleared by E/C/T/D in the source. Thendata in the source will be aggregated by all dimensions and overwrite the target byall dimensions.

Note: Replace and Clear with Aggregate Overwrite and Replace and Clearwith Append always deliver the same results.

742 © 2011 SAP AG. All rights reserved. 2011

Page 765: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 5: BW Data Upload - Aggregate Overwrite and Append withMerge and Replace and Clear

Figure 549: Load Transaction Data from BW InfoProvider – Append - Merge

Merge and Append add the data from the first and second load when selections are thesame (KPI 1: 1500 + KPI1: 1600 = 3100) .If selections are not the same the data setsfrom first load are kept and those from the second load are added.

In general: The source data will be appended into the BPC cube. Key figure willbe appended.

2011 © 2011 SAP AG. All rights reserved. 743

Page 766: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 5: BW Data Upload - Aggregate Overwrite and Append with Merge andReplace and Clear BPC420

Figure 550: Load Transaction Data from BW InfoProvider – Append – Replaceand Clear

Replace and Clear first deletes all data from the first load and then add the data fromthe second load.

In general: The target data will first be cleared by E/C/T/D in the source. The sourcedata will be appended into the BPC cube. Key figure will be aggregated

Note: Replace and Clear with Aggregate Overwrite and Replace and Clearwith Append always deliver the same results.

744 © 2011 SAP AG. All rights reserved. 2011

Page 767: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 6BO PC NetWeaver Authorizations

Figure 551: BPC NetWeaver Authorizations

2011 © 2011 SAP AG. All rights reserved. 745

Page 768: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 6: BO PC NetWeaver Authorizations BPC420

Figure 552: BPC Netweaver Authorizations (Cont.)

Figure 553: BPC Netweaver CLM Authorizations

746 © 2011 SAP AG. All rights reserved. 2011

Page 769: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 7Appendix 2: Task Profiles and Descriptions

Figure 554: Administration Task Profile Descriptions

2011 © 2011 SAP AG. All rights reserved. 747

Page 770: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 7: Appendix 2: Task Profiles and Descriptions BPC420

Figure 555: Analysis and Collection Task Profile Descriptions

Figure 556: Audit Task Profile Description

Figure 557: Business Process Flows Task Profile Descriptions

748 © 2011 SAP AG. All rights reserved. 2011

Page 771: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 7: Appendix 2: Task Profiles and Descriptions

Figure 558: Collaboration Task Profile Descriptions

Figure 559: Comments Task Profile Description

Figure 560: Consolidations Task Profile Description 1/2

2011 © 2011 SAP AG. All rights reserved. 749

Page 772: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 7: Appendix 2: Task Profiles and Descriptions BPC420

Figure 561: Consolidations Task Profile Description 2/2

Figure 562: Data Manager Task Profile Description

750 © 2011 SAP AG. All rights reserved. 2011

Page 773: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 7: Appendix 2: Task Profiles and Descriptions

Figure 563: Folder Access Task Profile Description

Figure 564: Journal Task Profile Description

2011 © 2011 SAP AG. All rights reserved. 751

Page 774: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 7: Appendix 2: Task Profiles and Descriptions BPC420

Figure 565: Publish Task Profile Description

Figure 566: System Reports Task Profile Description

Figure 567: System Security Task Profile Description

752 © 2011 SAP AG. All rights reserved. 2011

Page 775: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 7: Appendix 2: Task Profiles and Descriptions

Figure 568: Transport Task Profile Description

Figure 569: Web Report Profile Description

Figure 570: Web Service Profile Description

2011 © 2011 SAP AG. All rights reserved. 753

Page 776: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 7: Appendix 2: Task Profiles and Descriptions BPC420

Figure 571: Work Status Profile Description

754 © 2011 SAP AG. All rights reserved. 2011

Page 777: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 8Appendix 4: *Options in Transformation Files

Figure 572: *Options in the Transformation File 1/4

2011 © 2011 SAP AG. All rights reserved. 755

Page 778: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 8: Appendix 4: *Options in Transformation Files BPC420

Figure 573: *Options in the Transformation File 2/4

Figure 574: *Options in the Transformation File 3/4

756 © 2011 SAP AG. All rights reserved. 2011

Page 779: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 8: Appendix 4: *Options in Transformation Files

Figure 575: *Options in the Transformation File 4/4

2011 © 2011 SAP AG. All rights reserved. 757

Page 780: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 8: Appendix 4: *Options in Transformation Files BPC420

758 © 2011 SAP AG. All rights reserved. 2011

Page 781: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9Appendix 5: Retraction Scenarios in BO PC

Figure 576: Export Master Data to File Service

Data Manager export packages offer the ability to send master data and/or transactiondata to the File Service or to the Application Server.

This capability may be used to transfer data from Planning and Consolidation toanother (non-Planning and Consolidation)scenarios.

2011 © 2011 SAP AG. All rights reserved. 759

Page 782: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

Export packages may otherwise be used to move data (that is not collected in thechange and transport system) from one Planning and Consolidation system to anotherPlanning and Consolidation system, such as a typical system landscape architecturecontaining three environments: Development, Test, and Production.

Figure 577: Export Master Data to Application Service

The Data Manager export packages offer the ability to send master data and/ortransaction data to the File Service or to the Application Server.

This capability may be used to transfer data from Planning and Consolidation toanother (non-Planning and Consolidation) scenarios

Export packages may otherwise be used to move data (that is not collected in thechange and transport system) from one Planning and Consolidation system to anotherPlanning and Consolidation system, such as a typical system landscape architecturecontaining three environments: Development, Test, and Production.

760 © 2011 SAP AG. All rights reserved. 2011

Page 783: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Figure 578: Export Master Data to BAdI for Retractor

To support the scenario of retracting Planning and Consolidation master data ortransaction data to another SAP system, for example to the ECC system in the SAPBusiness Suite, new Data Manager packages have been provided to export data usinga Business Add-in (BAdI)

Within the custom BAdI implementation, developers can codify, using ABAP Objects,where and how to store exported data, and they may even call importing protocols toretract Planning and Consolidation data into a target SAP system.

An export BAdI definition is achieved with the following steps:

• Log on to the SAP NetWeaver ABAP system• Go to Transaction SE18 (“BADI Implementation”)• Enter “UJD_RETRACT” in field Enhancement Spot• Choose Display• Right Mouse Click on BAdI definition• Choose Create BAdI Implementation• Choose Create Enhancement Implementation• Enter Enhancement Implementation Name and Short Text• Enter BAdI Implementation name, description and Class• Implement the interface method IF_UJD_RETRACT~RETRACT• Check and Save (activate) the method

2011 © 2011 SAP AG. All rights reserved. 761

Page 784: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

For master data, the BADI is based on table level.

Note: No packaging is supported for master data related extraction. This isthe limitation from ADMIN API which could not support packaging; This iswhy all behaviors related with master data do not support packaging.

For transaction data, the BADI does support packaging for large volume support.

Figure 579: Export Transaction Data to File Service

As explained:

• New Data Manager export packages offer the ability to send master data and/ortransaction data to the File Service or to the Application Server.

• This capability may be used to transfer data from Planning and Consolidation toanother (non- Planning and Consolidation) scenario.

• Export packages may otherwise be used to move data (that is not collected in thechange and transport system) from one Planning and Consolidation system toanother Planning and Consolidation system, such as a typical system landscapearchitecture containing three environments: Development, Test, and Production.

762 © 2011 SAP AG. All rights reserved. 2011

Page 785: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Figure 580: Export Transaction Data to Application Server

As explained:

• New Data Manager export packages offer the ability to send master data and/ortransaction data to the File Service or to the Application Server.

• This capability may be used to transfer data from Planning and Consolidation toanother (non-Planning and Consolidation) scenario.

• Export packages may otherwise be used to move data (that is not collected in thechange and transport system) from one Planning and Consolidation system toanother Planning and Consolidation system, such as a typical system landscapearchitecture containing three environments: Development, Test, and Production.

2011 © 2011 SAP AG. All rights reserved. 763

Page 786: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

Figure 581: Export Transaction Data to BAdI for Retractor

764 © 2011 SAP AG. All rights reserved. 2011

Page 787: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Also covered in the Master Data Packages section of this lesson:

• To support the scenario of retracting Planning and Consolidation master dataor transaction data to another SAP system, for example to the ECC system inthe SAP Business Suite, Data Manager packages have been provided to exportdata using a Business Add-in (BAdI)

• Within the custom BAdI implementation, developers can codify, using ABAPObjects, where and how to store exported data, and they may even call importingprotocols to retract Planning and Consolidation data into a target SAP system

• An export BAdI definition is achieved with the following steps:

– Log on to the SAP NetWeaver ABAP system– Go to Transaction SE18 (“BADI Implementation”)– Enter “UJD_RETRACT” in field Enhancement Spot– Choose Display– Right Mouse Click on BAdI definition– Choose Create BAdI Implementation– Choose Create Enhancement Implementation– Enter Enhancement Implementation Name and Short Text– Enter BAdI Implementation name, description and Class– Implement the interface method IF_UJD_RETRACT~RETRACT– Check and Save (activate) the method

For master data, the BADI is based on table level.

Note: No packaging is supported for master data related extraction. This isthe limitation from ADMIN API which couldn't support packaging. This iswhy all behaviors related with master data couldn't support packaging.

2011 © 2011 SAP AG. All rights reserved. 765

Page 788: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

For transaction data, the BADI does support packaging for large volume support.

• Further notes:

Process type 0-1: Start

Process type 0-2: Modify

Process type 1: Reader transaction data

Process type 2: Convert

Logic:

BADI_start_routine

Transformation including conversion

BADI_end_routine

Process type 3: Writer

Call BADI_retractor

Process type 4: Clear Planning and Consolidation Temp table

– If the reader gets empty data but the flag more data is true, this will be takenas abnormal and there must be something wrong, and the data package willnot be passed to transformation. And of course BADI will not be called. Inthis scenario, the BADI can not generate any records

– If the reader gets empty data and the flag more data is false, this meanthere is no data in source. And the data package containing no data willbe passed to transformation, and BADI will be called. In this scenario, theBADI can generate some records if the user likes

766 © 2011 SAP AG. All rights reserved. 2011

Page 789: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Figure 582: Prompt Commands

• By Prompt Command dialog boxes, a user can select such things as the files toupload, the data to export, or the target applications for selected data.

– When multiple prompt commands are entered in the same script, the systemcombines all of the prompts into one dialog box.

This rule applies to all prompt commands asking for the selection of a file, a delimiter,or text, but not to the COPYMOVE and SELECT prompts.

• The COPYMOVE and SELECT prompts are presented individually, with asmany dialog boxes as prompts are found in the script.

All file selection prompts return the name of the selected file with the complete path.

If the user leaves a selection field blank in a SELECT or COPYMOVE dialog box, thesystem assumes all members for that dimension; the system does not insert a range forthe dimension in the returned statement

Figure 583: Business Example – SELECTINPUT 1/2

2011 © 2011 SAP AG. All rights reserved. 767

Page 790: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

The following commands refer to Dynamic Script Logic used for the configuration ofthe pop-upsof data management packages. We dont go into detail in this unit and inthe next unit we refer to dynamic script logic in the exercise section showing somecustomizing feature to modify data management pop-ups.

The upper command is used to allow the user to select only non-calculated members(Export, for example)

Syntax: PROMPT(SELECTINPUT, [variable], [second variable], [label],[dimensions])

Where: Means: Default Value:

SELECTINPUT Select one non-calculateddata range

n/a

[variable] The name of the returnedvariable

%SELECTION%

[label] The text to display to theuser

Select the desired datarange

[dimensions] The dimensions fromwhich to select members

Category, Time, Entity

Activities

%DIMS% is the dimension list in the current application. The value can be ACCOUT,ENTITY, TIME

PROMPT(SELECTINPUT,,,,“%DIMS%”)

%SELECTION% is the result that the user selects in the Run Package dialog box.The script can be the following:

PROMPT(SELECTINPUT,%SELECTION%,,,“%DIMS%”)

%DIMS% creates the screen, and the selected result is saved in %SELECTION%.Without %selection%, you use %SELECTION% as the default. Therefore, you canalso write the script as:

PROMPT(SELECTINPUT,%ANYNAME%,,,“%DIMS%”), then use%ANYNAME% in the task commands

Note: SELECTINPUT – supports both “Member list” and “filter” mode toreturn

768 © 2011 SAP AG. All rights reserved. 2011

Page 791: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Figure 584: Business Example – SELECTINPUT 2/2

This command is used to allow the user to select only non-calculated members(Export, for example)

Syntax: PROMPT(SELECTINPUT, [variable], [second variable], [label],[dimensions])

Where: Means: Default Value:

SELECTINPUT Select one non-calculateddata range

n/a

[variable] The name of the returnedvariable

%SELECTION%

[label] The text to display to theuser

Select the desired datarange

[dimensions] The dimensions fromwhich to select members

Category, Time, Entity

Activities

%DIMS% is the dimension list in the current application; The value can be ACCOUT,ENTITY, TIME.

PROMPT(SELECTINPUT,,,,“%DIMS%”)

2011 © 2011 SAP AG. All rights reserved. 769

Page 792: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

%SELECTION% is the result that the user selects in the Run Package dialog box;The script can be the following:

PROMPT(SELECTINPUT,%SELECTION%,,,“%DIMS%”)

%DIMS% creates the screen, and the selected result is saved in %SELECTION%;Without %selection%, you use %SELECTION% as the default; Therefore, you canalso write the script as:

PROMPT(SELECTINPUT,%ANYNAME%,,,“%DIMS%”), then use%ANYNAME% in the task commands

Note: SELECTINPUT – supports both “Member list” and “filter” mode toreturn.

Figure 585: Business Example – MEMBERFROMTOINPUT

This command is used to prompt the user for an existing data selection file

Syntax: PROMPT(MEMBERFROMTOINPUT,[source_variable],[target_vari-able],[label],[dimensions])

Where Means Default Value

MEMBERFROMTOIN-PUT

This is the function name n/a

[source_variable] Source variable %SELECTION%

770 © 2011 SAP AG. All rights reserved. 2011

Page 793: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

[target_variable] Target variable %TOSELECTION%

[label] The text to display to theuser

Enter Source and Target

[Dimensions] The dimensions to selectfrom

Category, Time, Entity

%DIMS% is the dimension list in current application

• One package script can contains more than one MEMBERFROMTOINPUTkeyword

• The UI is the same as COPYMOVEINPUT• Support both “Member list” and “filter” mode to return• Order of members is not taken into account

Figure 586: Business Example – DIMENSIONNAME

This command is used to prompt the user for selecting a SAP BusinessObjectsPlanning and Consolidation dimension. It is to be used when importing master data

Syntax: PROMPT (DIMENSIONNAME, [variable],[label],[combo style],[defaultvalue],[dimensions])

Where Means Default Value

DIMENSIONNAME Select a dimension n/a

[variable] The name of returnedvariable

%COMBOBOX%

[label] The text to display to theuser

Make your selection

2011 © 2011 SAP AG. All rights reserved. 771

Page 794: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

[combo style] The style of combo box(see note)

n/a

[default value] The preselected choice n/a

[dimensions] The dimensions to select Category, Time, Entity

%DIMS% is the dimension list in the current application

Note: 0 – The item the user selects should be one of the items in the selecteditems. Any number which is not 0 – The item the user selects can be anyvalue, which do not need to be one of the items in the selected items.

Figure 587: Business Example – MASTERSELECTION

This command is used to prompt the user for selecting an InfoObject and the attributeand hierarchy selection; It is used to import master data from a BW InfoObject.

Syntax: PROMPT (MASTERSELECTION,[variable],[second variable],[label])

Where Means Default Value

MASTERSELECTION Select InfoObject andselection

n/a

[variable] Variable for the selectedInfoObject

%INFOOBJECT%

[second variable] The second variable forthe selection

%MASTERSELEC-TION%

[label] The text to display to theuser

n/a

772 © 2011 SAP AG. All rights reserved. 2011

Page 795: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

BPC420 Appendix 9: Appendix 5: Retraction Scenarios in BO PC

Figure 588: Business Example – HIERARCHYSELECTION

This command is used to prompt the user for selecting an InfoObject and the hierarchyselection; It is used to import a hierarchy from a BW InfoObject.

Syntax: PROMPT (HIERARCHYSELECTION,[variable],[second variable],[label])

Where Means Default Value

HIERARCHYSELEC-TION

Select InfoObject andselection

n/a

[variable] Variable for the selectedInfoObject

%INFOOBJECT%

[second variable] The second variable forthe selection

%HIERARCHYSELEC-TION%

[label] The text to display to theuser

n/a

Figure 589: Business Example – DIMENSIONMEMBER

This command is used to prompt the user for selecting a dimension and its members;It is used to export master data.

Syntax: PROMPT (DIMENSIONMEMBER,[variable],[label],[the secondlabel],[dimensions])

2011 © 2011 SAP AG. All rights reserved. 773

Page 796: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

Appendix 9: Appendix 5: Retraction Scenarios in BO PC BPC420

Where Means Default Value

DIMENSIONMEMBER Select a dimension and themembers

n/a

[variable] Variable for the selectedInfoObject

%DIMENSIONMEM-BER%

[label] The text to display to theuser

Make your selection

[second label] The second text to displayto the user

Make your selection

[dimensions] The dimension to select Category, Time, Entity

Separate multiple values with commas %DIMS% is the dimension list in currentapplication.

Figure 590: Business Example – MEASURELIST

This command is used to prompt the user for selecting measures; It is used to exporttransaction data.

Syntax: PROMPT (MEASURELIST,[variable],[label])

Where Means Default Value

MEASURELIST Select Measures n/a

[variable] Variable %MEASURES%

[label] The text to display to theuser

n/a

774 © 2011 SAP AG. All rights reserved. 2011

Page 797: sapbpc420encol96fvparta4bpc10-140126073658-phpapp02.pdf

FeedbackSAP AG has made every effort in the preparation of this course to ensure the accuracyand completeness of the materials. If you have any corrections or suggestions forimprovement, please record them in the appropriate place in the course evaluation.

2011 © 2011 SAP AG. All rights reserved. 775