You are on page 1of 21

How-to Guide SAP FPM

How To Set up Consolidation Environment using BPC 7.0 for NetWeaver

Applicable Releases: SAP BPC 7.0 NetWeaver Based Version Last Updated: September 2008 Version: 1.0

Copyright 2007 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook,and PowerPointare registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web 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. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP,, xApps, xApp, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data

contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. These materials are provided as is without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages. SAP CPM How-to Guides are intended to simplify the product implementation. While specific product features and procedures typically are explained in a practical business context, it is not implied that those features and procedures are the only approach in solving a specific business problem using SAP. Should you wish to receive additional information, clarification or support, please refer to SAP Consulting. Any software coding and/or code lines / strings (Code) included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent.

1 Scenario
This document describes how to set up business consolidation environment with BPC7.0 NetWeaver BI based version. An ApShell (starting and example AppSet provided) in BPC7 NW initial release would not contain any consolidation application, the strategy is to keep ApShell straight and reflect the baseline requirement for customer to start new implementation and ensure there is nothing that will have to be re-engineered that is related to the customers master/meta data, on the other hand, need minimize the taken off work on ApShell at customers. In this case, the document is intended for consultants or administrators that understand the basic elements need to be set up in the Application in order to make consolidation engine work. It also tries to provide fairly detailed procedures to set up all the elements composing the consolidation module as a referenced document to the manual. But we do not try to explain here for the consolidation rules that can be defined with BPC consolidation engine and especially leaving the accounting principles such as IFRS, USGAAP building likely to the experts in COE team probably with the coming BPC Start Kits.

2 Prerequisites
Successful installation of BPC7.0 NW ABAP server, .Net server and client Completion of ApShell content activation

3 Introduction
Following steps outlines how consolidation environment should be set, 1) Consolidation (Legal) AppSet creation/Parameters setting 2) Master Data (Dimensions) Set-up 3) Application creation/Parameters setting 4) Table Driven ABAP Program Maintaining (Data Manager Packages, Scripts Logic, Business Rules) 5) Rate Data and Ownership Data Update 6) Work Status Setting 7) Journal Template and validation setting

4 The Step By Step Solution

What should be built in order to setup the fundamental legal consolidation? And How to do this from the scratch, here are the steps in detail:


Application Set Creation

1. Once installation and ApShell activation have been completed, you should be able to log on Admin Console with the AppSet ApShell. Technical Aid: to check and ensure the ApShell content activation process have been done successfully, either log on Admin Console or access ABAP server from GUI and run the transaction RSA1 to check the BI Infoprovider APSHELL and its structure.

2. In Admin Console, Copy ApShell into the target AppSet which consolidation environment needs to be set with. Legal Consolidation Environment is possible to be built with in same Application Set where planning or reporting Application built in. As the dimensions can be shared by applications within an Application Set.

3. Set AppSet Parameters Following Parameters must be set during setting up the Application Set. (Most of them are not necessarily consolidation required, but the generic system requirement for AppSet. )

Key ID

Controls whether the system is offline or not. Yes means the system is online and available for sending data to the database. You can take the system offline by changing the value to No. Y=Yes; N=No The message that is displayed to users who try to access an application that is offline (AVAILABLEFLAG = No). For example, the message might be Business Planning and Consolidation is temporarily unavailable due to scheduled maintenance. Please try again later. The name of the Web page to display to users who try to access an application that is offline (AVAILABLEFLAG = No). For example, the url might be: /BPC/NotAvailable.asp See Maintaining applications If [ALL], It was allowed all extension in BPC. XLS,XLT,DOC,DOT,PPT,POT,XML,MHT,MHTML,HTM,HTML,XLSX,XLSM,XLSB,ZIP,PDF,P PTX,PPTM,POTX,POTM,DOCX,DOCM,DOTX,DOTM,CDM,TDM,PNG,GIF,JPG,CSS,MRC Maximum Files Size allowed for uploading is 100M, which should be written as 104857600. Temporary folder used to store Content Library documents. (Required) Directory for web server to put uploaded file before it was transferred into file share. Current version number of the dynamic templates in your application set. Whenever you add to or change your input schedule or report dynamic templates, you should increment this version number so that users will automatically get the new templates downloaded when they log on to this application set. For example: 01 (Version01). User can also reset the template version from the Admin Console. This parameter allows user to set the default zoom magnification value on HTML journal reports. The recommended value = 75%






0= No log, 1 = Error Log only, 2 = Error and Success Logs, 3 = All Logs ( Error, Warning, Success) BPC 7 Internal system Parameter, default value = 1 BPC 7 Internal system Parameter, default value = Blank BPC 7 Internal system Parameter, default value = 1

Technical Aid: At back end, all parameters are stored in ABAP DDIC table: UJA_USER_DEF.


Master Data (Dimensions) Set-up

1. Set-Up Dimensions in Dimension Library For consolidation, listed dimensions are must-to-have dimensions. Therefore, we need to have a check and ensure that all the dimensions are available in the Dimension Library of Application Set just created from ApShell. (It should be fine if the name is not exactly same, but the types of the dimensions are mandatory for corresponding applications.) For Legal Consolidation Application: Here is the list of all the dimensions required for legal application: C_Acct (A) C_Category (C) C_Datasrc (D) Flow (S) Group (R) Entity (E) Intco (I) Time (T) For the Application contains Exchange Rates: Here is the list of all the dimensions required for rate application: R_Acct (A) C_Category (C) R_Entity (E) InputCurrency(R) Time(T) For Application stores ownership details: Here is the list of all the dimensions required for Ownership application: O_Acct (A) C_Category (C) Entity (E) Time (T) Intco (I) Groups(R) To create dimension, go to Admin Console -> Go to dimension library -> find the option in action pane to create dimension as shown below.

2. Maintain consolidation required dimension property When you create a dimension, all the required properties (attributes) are created automatically. But in order to function consolidation process (such as currency conversion, simulation, automatic adjustment etc.), most often additional dimension properties are needed to achieve the filter, flagging and calculation of the target data. Therefore, we need make sure those properties are well maintained with expected value to be involved in the consolidation process according business requirement. Here is the list of all the consolidation needed dimension properties (attributes). Please note this only intends to help on checking the completeness of master data setting for a base line consolidation process and the system automatically generated (required) attributes are not included in this list either. For those dimensions only requested attributes are needed, again are not listed here.

Length 20 2 20 10 4 20 10 10 10 Length 500 20 20 20 20


Length 2 Length 10 20 20 255 Length 1 10 2 2 2 20 Length 2 10 20 20 20 10 20 10 Length 20 10 2 Length 2

To maintain the property of a dimension, Go to Admin Console - > left click to select a dimension in dimension library -> find option Maintain dimension property in action pane.

3. Maintain the dimension member and its property values. To maintain the dimension member of a dimension, go to Admin Console - > left click to select a dimension in dimension library -> find option Maintain dimension member in action pane.

Please note: If the dimension is created as time-dependant dimension, user can not actually delete a hierarchy assigned dimension member out of the timestamp after its created. The dimension member values are case sensitive with BPC7 NW version, which means if upper case and lower case written are recognized as two different members. But for RATE cube and Ownership cube, we strongly recommend that not set two members just with different cases, for example R_ACCT dimension AVG and Avg could be two different members to store the AVG exchange rate, this is not recommended to be used for storing exchange rate and ownership

details, as both script logic and consolidation program could be confused as well as bad ender user recognition issues might be resulted.


Application Set-up

1. Create Applications (Equivalent as InfoCube in BI) For a base line legal consolidation environment, Consolidation, Rate and Ownership applications are must-to-have applications, the consolidation engine will look into these applications to retrieve some of the necessary information.

Rate Application

A. Create a RATE application, The Currency conversion process makes use of a RATE application, where the appropriate exchange rates will be searched for each relevant currency. This cube can be named as desired. But we will refer to R_Acct is utilized to detail the different types of rate it as the RATE application, in this (Average, End-of-period, etc.). document. Note: The master data (dimension) can be shared by application within an application set. But for RATE application, to fulfill certain consolidation requirement, R_Acct (Account Dimension for RATE application) and R_Entity (Entity Dimension for RATE application) are specific and utilized only by Rate Application. B. Create an ownership application Ownership application defines ownership details such as the consolidation scope, method, % of share owned by holding company or groups etc. For ownership application, the only dimension which is specific for ownership cube is Ownership Account (O_Acct), to use BPC consolidation engine; we have to set up several required members, which include, 1. PostionInGroup, defines which companies being consolidated in
R_Entity is used to store multiple tables of rates, if desired, otherwise the R_Entity dimension may just be limited to one dummy member, typically named GLOBAL. Currency dimension is utilized to store for each applicable local currency. Time and Category dimensions can be shared by all the application involved in consolidation.

Ownership Application

each group. 2. Method, defines consolidation method 3. POWN, defines % of ownership (how much they are owned by the group) 4. PCON, defines % of consolidation 5. PCTRL, defines % of control (how much they are controlled by the group) This application can be named as desired, but the relate linkage between ownership application and consolidation engine must be set up in the application parameter setting. (In this document, it will be mentioned it in next section.) C. Create consolidation application, Must assign the RATE and OWNERSHIP application just created as reference applications to the consolidation application. Please refer to the steps wizard of creation process. Step1 and 2: Create a new application, name it and the application type must be Consolidation type and define corresponding RATE and OWNERSHIP application to be referred as shown.

Time, Category, Entity, IntCo dimensions are shared by ownership and legal consolidation cube to be created.

Legal Consolidation Application Creation Steps Step 1, Step 2 & Step 3

Step3: Pick up the consolidation business rules need to be implemented. Please note: Only when the consolidation type application are created and the business rule Automatic Adjustments are selected, the predelivered business rule library tables will be activated and shown from Admin Console UI, which includes Method Library, Elimination Rule and Rule formula tables, as only Automatic Adjustment (Such as Minority posting, Investment adjustment) utilize those Elimination rules and formulas for the calculation of actual postings .

Before the consolidation type application is created, from UI of BPC, user are not able to display the rules and the predelivered library table content are stored in following ABAP database table. Method: UJP_Method Rule Header:UJP_RULEH Rule Formular: UJP_RULE Step 4: Uncheck the dimensions check as shown in order to select the desired dimensions required for legal consolidation.

Step 4

Step5: Set dimensions to be included in Application and also set the Secured dimension for member access control.

Step 5

Under most of the situation, the Entity and Category dimension tend to be set as secured dimension for member access control against. For Group dimension here, it stores both group currency and reporting currency and also consolidation groups.

Here is the Legal Application created with all the dimensions shown.

2. Set the Application Parameters Go to BPC Administration (Web) -> Set Application Parameters -> Change the current view and set to the consolidation cube.


Description 1 for switch ON, 0 for switch OFF Business Rule Table for the application 1 for switch ON, 0 for switch OFF Business Rule Table for the application 1 for switch ON, 0 for switch OFF Business Rule Table for the application 1 for switch ON, 0 for switch OFF Business Rule Table for the application 1 for switch ON, 0 for switch OFF Business Rule Table for the application 1 for switch ON, 0 for switch OFF Business Rule Table for the application The value should be the name of OWNERSHIP cube. The value should be the member ID of Ownership Account (O_Acct) Dimension which controls the position of a consolidation entity within the group. The value should be the name of OWNERSHIP cube. (This is similar as ORG_OWNERSHIPCUBE, but in Consolidation Programs, both are utilized) This parameter is used with dynamic hierarchy for legal applications when defining consolidation hierarchies. The value set here must match the name of property in GROUPS dimension in the legal consolidation application in order to store the ownership data. This parameter controls whether data is input in year-to-date format. 1, for YTD The value should be the ID of the member stores the value of METHOD, Ownership % and % of consolidation in Ownership Account (O_Acct) Dimension. For example, there could be METHOD, POWN, PCON.


ORG_PARENTPROPERTY (Just need to be set in Ownership Application)



Customizing for Table Driven ABAP Program

BPC7 (NW) pre-defined Data Packages and script logic provides the out-of-the box intelligence for consolidation processes (such as CT, ICElim) by calling the heart of the consolidation engine Table Driven ABAP Programs, which perform all the appropriate calculations on a user-selectable region of data, and write the calculated results into the database. To run those Programs, we make use of the designed Data Manager Packages through SAP BI Process Chains to invoke the Programs directly from the K2 scripts logic file and pass to them the appropriate parameters. Following is the full list of consolidation process that BPC7 supports with its BI Process Chain and Script File and corresponding Business Rules.
Script Logic Files Name COPY_OPENING.LGF VALIDATION.LGF FXTRANS.LGF ICDATA.LGF ICBOOKING.LGF CONSOLIDATION.LGF CALCACCOUNT.LGF ICELIM.LGF Business Rule Table Name Carry-forward rules Validation rules and Validation details Currency Conversion Rules No rules needed Intercompany booking Automatic Adjustments and Automatic Adjustmes Details Account Transformation US Elimination

Consolidation Task Balance Carry Forward Validation Currency Conversion Intercompany Reconciliation Intercompany Balance Booking Legal Consolidation (Elimination and Adjustment) Account Calculation (Cash Flow functioned) US widely used Intercompany Elimination


With each process, the pre-defined Data Manager Packages with their associated Scripts and tables of rules need to be created and maintained in order to function the consolidation task according business requirement and specific business requirement is to be configured in corresponding Business Rule Tables. With this approach the customer has the possibility to freely decide when and how a process should be triggered. We can, for example, invoke a currency conversion directly from the DEFAULT logic, whenever a value is changed via WebExcel or via a data load, or we can decide to run one or more consolidation processes in a batch mode, using some customized data package that invokes an appropriately-designed logic file. Also, we can combine one or more of these specialized processes with other custom-defined calculations, like allocations or modeling formulas or whatever else may be defined using our general-purpose logic scripting technique.

In order to be able to run a baseline consolidation task,

Add DM Packages

1. Add the data Manager Packages for consolidation application. Go to BPC for Excel Interface -> eData> Organize Data Package List -> Add a data Package-> look for the consolidation task related pre-delivered SAP BI Process Chain and select to add.

The DM package could also be modified Modify DM Packages for its dynamic script to achieve the specific parameter passing requirement and reassign of the table driven program used scripts logic file (LGF). To Modify DM Package, Go to BPC for Excel Interface -> eData-> Organize Data Package List -> Select the package and right click -> Modify Package -> Dynamic Script Editor for DM Click View Package from Modify Package Screen -> The Dynamic Script Editor for Data Manager should be prompted up -> Click Advance button > Edit the script of dynamic selection screen generation

2. Create consolidation engine used Script Logic files (LGF) Go to BPC Admin Console -> Expand Consolidation Application -> Go to Script Logic Editor -> Create an LGF file by using K2 script supported by BPC 7.0NW

Admin - Logic File Creation

Please note: All the consolidation required K2 logic file (LGF) examples are Access GUI for the File Service Directory stored in the File Service to get the K2 logic examples Directory :\Root\Webfolder\ApShe ll\Systemlibrary\LogicLibrary,

which intents to help user understand the K2 syntax as an example and can be copied and reused in a customer application as well. T-Code for File Service UI: UJFS The K2 Logic File name must be identical as the string defined with the data package.

3. Maintain the business rule table Go to BPC Admin Console -> Expand Consolidation Application -> Go to Business Rule Editor -> Select the rule table to create the content of the rules according business requirement.
Admin Console - Business Rule Edit


Rate Data and Ownership Data Update

1. Loading exchange rate to rate application Most often the Rate application should store the exchange rates for doing currency conversion. There are several ways to upload the data to rate application, such as utilize the data manager package Import, or use dynamic templates to send data from the input schedule. If EVDRE are used, the Rate Account type dimension and Input Currency dimension can be set in Row and Time dimension can be set in column, save the EVDRE as input schedule to send data to the Rate Application. Such input schedule could also be saved as a template in library for sharing and reuse.

Dynamic Input Schedule template (Nested Row) for Rate Input

2. Input ownership data and calculate ultimate ownership As the consolidation scope (such as ownership percentage, group/unit hierarchy) is time dependent and given the fact that the dynamic hierarchy editor is not implemented with initial release. Our recommendation is to leverage the steps suggest below on how updating the ownership cube with ownership details.

If the way direct share input is preferred by business, Step1: Input direct ownership % between Investor unit (entity) and investee unit (Intco) under a group dimension member (most often LC could be used) by category and time. Member POWN in O_Acct dimension stores this information.

Step1: Direct share input

Step2: Input the consolidation method of each entity under each consolidation group. 90 Represents holding company in a group 86 Purchase (Global) 70 Proportional 30 Equity Member Method in O_Acct dimension stores this information.

Step2,3: Dynamic Consolidation Hierarchy Maintain, which includes the consolidation method and positioning in a consolidation group, both of the factors can be maintained with following input schedule:

Step3: Input the position of each entity in a consolidation group. Value 1 represents in the group other value represents not in the group. Member PGROUP in O_Acct dimension stores this information.

The input schedule can be built to input above ownership details into cube.

Step4: Run the pre-delivered DM (DM package) package Calculate Ultimate Ownership to calculate the ultimate ownership that how much each consolidation group own on each entity. As a result that write Check Ultimate Ownership Report back after calculation, the ultimate ownership is stored under the member I_NONE of IntCo dimension, and POWN, PGROUP, METHOD member has the group-own-entity value described above. If the way ultimate share input is preferred by business, the only step required is to input the group-own-entity value for POWN, PGROUP, METHOD under I_NONE under IntCo dimension.

Step4: Run Group Share Calculation


Work Status Setting

1. Work States Setting (AppSet dependent) Go to BPC Admin Console -> Work States Setting -> Add the states according the business needs -> Set for different interface for the Approval privilege level for each work states just created -> Set appropriate privilege for changing work states.

2. Work Status Setting (Application Dependent) Go to BPC Admin Console -> launch the application -> Work Status Setting> Set the lock dimension and owner dimension. Please note: Owner dimension must contain the owner property dimension, which hierarchy controls the work states change hierarchy.


Journal Template and Validation Setting

Admin - Journal Template Creation

1. Journal Template Go to BPC Admin Console -> launch the application -> Journals -> to create a journal template Once the template is created, the dimension in an application cant be deleted from the application any more as well as all data.

2. Validation Setting Validations are designed to prevent incorrect records being saved to the cube. In BPC 7, it is not possible (or supported) to get data into a cube without going through the Write-Back module. Therefore, we implemented the validations in write-back, to ensure that invalid records can not get into the cube from any source not only for journals, but also for all DM package and manual data input. An example for this is if a specified intercompany account with empty Trading Partner dimension will be blocked from writing into the cube.

To customize Validation, Go to SAP ABAP systems with GUI UI -> go to Transaction code UJ_VALIDATION to configure the validation framework and customize the validation rules according business requirement. Refer to the How to guide on this for detail steps on how to setup the validation.

Go to SAP GUI -> T-Code UJ_Validation,

In the configuration screen the validation rules according business requirement are defined as shown. Please refer to the How to guide on Validation setup in BPC 7NW for detail steps on how to setup the validation.

Validation Rule Configuration