Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Table of Contents Executive Summary: ..................................................................................................... 3 Business Scenario: ........................................................................................................ 3 Data Model: .................................................................................................................. 4 Solutions Building Blocks: ............................................................................................ 5 Script Logic - Structure: .............................................................................................. 12 Script Logic – Implemention Steps: ........................................................................... 13 List of Script Logic Commands: .................................................................................. 14 Script Logic in Action .................................................................................................. 16 Debugging Script Logic ............................................................................................. 120 Benefits of Script Logic ............................................................................................. 125 Golden Rules of Script Logic .................................................................................... 126 Appendix 1 : Calling Script Logic – Various Options ............................................... 127 Disclaimer:................................................................................................................. 132 _______________________________________________________________________ .
SAP Community Contributors: ........................................................................... 132
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Executive Summary: The purpose of this document is to demonstrate the implementation of script logic in reallife projects, which includes designing, creating, executing and debugging Script Logic in a SAP BPC 10. /7.5 NW environment. This document educates the user only the essential topics that are required to solve practical problems and it expose the user to the Script Logic commands that are widely used in any business process automations such as Budget Allocation Revenue Distributions Cost Calculations Revenue and Cost Implementation Impact of Financial Statements Scenario (“What If”) Analysis Adjustment to plan to formalizing forecasting It is assumed that the user has basic knowledge/understanding about SAP BPC NW 10.0/7.5 version.
Business Scenario: CloneSkills, Inc. automates their Sales Revenue Planning process through SAP BPC NW 7.5 software and here, we are using SAP BPC’s core function of Script Logic to perform key business calculations and also automatic data management. Also it has been identified to implement a special requirements on the planning calculations and distribution.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_ACCOUNT The following image shows the member sheet of SR_ACCOUNT dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_CATEGORY The following image shows the member sheet of SR_CATEGORY dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_ENTITY The following image shows the member sheet of SR_ENTITY dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_RPTCURRENCY The following image shows the member sheet of SR_RPTCURRENCY dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_TIME The following image shows the member sheet of SR_TIME dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Dimensions - SR_PRODUCT The following image shows the member sheet of SR_PRODUCT dimension:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Script Logic - Structure: Script Logic code can be broken down into 3 components: 1. Scoping [ the data on which the Logic is to be applied] 2. Body/Code[ the processing/logic to be applied to the data] 3. Saving/writing the record. The following code snippet shows the three parts:
We will be discussing all of the above sections in details of the above in a short while.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Script Logic – Implementation Steps (Sample): Step # 1: Launch BPC Admin client and implement Application, Dimensions and Members. Step # 2: In BPC Admin, Go to SR_PLANNING (Note: need to use your own application) application’s Script Logic folder. Create a new Logic file. Validate and Save it. Step # 3: In BPC Admin, Go to SR_PLANNING (Note: You need to use your own application) application’s Script Logic folder. Look for Default.lgf. If it does not exist, create a new one. Validate and Save it. Step # 4: In BPC Admin, Inside Default.lgf file, include the just created Logic file. Validate and Save it. Step # 5: In BPC Admin, launch Interface for Excel. Connect to SR_PLANNING (Note: need to use your own application) application. Step # 6: Verify the data using EVDRE () command or using the Report Template(s) provided by SAP. Note:
Instead of having a separate logic file, the code can be put into the Default.lgf file and it will get executed when data is sent to the BPC server. This may not be a good practice and may not be manageable if the script has lots of lines of code. These are all sample steps, there are several different ways to implement a Script logic
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Body/Code/Processing Commands 5. *INCLUDE 6. *WHEN/ENDWHEN 7. *REC 8. TMVL Parameter 9. *SELECT 10. *SELECTCASE/ENDSELECT 11. *FOR / *NEXT 12. *ADD / *ENDADD 13. *BEGIN / *END 14. *FUNCTION / *ENDFUNCTION A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Script Logic in Action: 1. *XDIM_MEMBERSET Syntax: *XDIM_MEMBERSET {Dimension name} = {Members Set} *XDIM_MEMBERSET {Dimension}<>{MemberSet} Description: *XDIM_MEMBERSET defines the scope of the data in which the subsequent business logic is applied.
Business Scenario: Increase the discount given to the PRODUCT [LAPTOP] by 10% and book the value to the SPL_DISCOUNT [ACCOUNT] for PLAN data for the period – 2006, JAN.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Implementation Steps: I) Launch BPC Administration client and connect to AppSet – MURUGESAN.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
III) Under the AppSet – MURUGESAN, go to the folder ApplicationSR_PLANNINGScript Logic, and click the link Create New Logic which appears on the right.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
IV) On the following screen, enter Logic Name as LOGIC_1 and click OK button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
V) On the following screen, enter the code(as mentioned below) and click the link Validate and Save which appears on the right.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
VI) You will be prompted with the Confirmation message(as shown below). Click OK.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
VII) Now, go to the folder : ApplicationSR_PLANNINGScript Logic, and look for the file – Default.lgf file. If it does not exist, create a new one and enter the code as mentioned below:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
VIII) Click Validate and Save link on the right and respond to the subsequent confirmation prompt.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
IX) Launch Interface for Excel from BPC Administration client. Choose the options as shown below and click OK button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
X) On the following screen, enter login info and click on the Finish button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
XI) Now, make sure that the Current View(CV) looks like the following:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
XII) Now, click on the Data Input line which appears on the right. And, then click on the link – Build a schedule using a dynamic template. You will be prompted with a dialog box as shown below:
Select the Input schedule template – Account Trend. And, click Open button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
The following confirmation prompt will be shown and just click OK button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
XIV) As shown below, enter data for Discount account and click the button at the top – Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
In the following screen, as shown below, click Refresh button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Subsequently, the following prompt is shown. Click Yes button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
XVII) The following screen is shown. Click Close button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
XVIII) Following screen shows the value – 5, which is 10% of 50[ DISCOUNT Account], in the Special Discount Account.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
*XDIM_ADDMEMBERSET allows you to add/join/union members to the data region already passed by *XDIM_MEMBERSET command. This is different from *XDIM_MEMBERSET command in that, the data region defined by subsequent *XDIM_MEMBERSET overrides the data region defined by earlier *XDIM_MEMBERSET.
Business Scenario: Calculate special discount and copy it to 2006 first quarter. And also, calculate and copy the same to 2006.Apr.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
2.1 Create a new logic file – LOGIC_ADDMEMBER as follows:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
2.2 Enter discount data for 2006.APR as below. Take note of the current view here.
Point Default.LGF to LOGIC_ADDMEMBER.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
2.3 Open an Input schedule template(Account Trend). Here, the current view should point to 2006.Q1. Enter discount data for first quarter of 2006. Click Send and Refresh Schedules.
Here, the data(discount) is entered for 2006.Q1(Jan, Feb and Mar) months and the scope of the member set is defined as BAS(2006.Q1). As the requirement is to calculate for 2006.Apr also, the XDIM_ADDMEMBERSET SR_TIME=2006.APR is included to add more members (2006.APR) to define the scope.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
2.4 Now, change the memberset parameter for SR_TIME as 2006.JAN, 2006.FEB, 2006.MAR and 2006.APR. Click Expand All now.
This will show the calculation of special discount for 2006’s first quarter and also for 2006.APR as shown below:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
3. *XDIM_MAXMEMBERS Syntax : *XDIM_MAXMEMBERS {dimension} = {max number of members} Description:
When there are too many records to be processed, *XDIM_MAXMEMBERS can be used to do batch processing, i.e. you can tell the server to process the first batch of records(say 100 records) and when that is completed, next batch can be started. This stops the server from slowing down which arises when too many records are being processed in-memory. Example: *XDIM_MEMBERSET SR_CATEGORY=ACTUAL *XDIM_MEMBERSET SR_TIME=2005.JAN *XDIM_MEMBERSET SR_ACCOUNT=QTY,U_PRICE,U_COST *XDIM_MAXMEMBERS SR_PRODUCT=5 *WHEN SR_ACCOUNT *IS "QTY" *REC(EXPRESSION=%VALUE%*1.1,SR_CATEGORY=PLAN,SR_TIME=2006.JAN) *IS "U_PRICE","U_COST" *REC(EXPRESSION=%VALUE%,SR_CATEGORY=PLAN,SR_TIME=2006.JAN) *ENDWHEN *COMMIT
The above example processes 5 Products at a time. Once that is completed, it picks the next 5 Products and it goes on like that.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
*XDIM_FILTER {Dimension name} = { Dimension name }.properties(“Property Name”) = “Property Value” Description: This command selects all the members satisfying the condition.
Business Scenario: Calculate special discount which is 10% of discount for first quarter of 2006 for the entities for which, the special discount property is “Y”.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
4.1 Create a logic file – LOGIC_FILTER.LGF as follows: Point Defalut.LGF to LOGIC_FILTER.LGF.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
4.2 Open an input schedule(Nested Rows)as shown below. Specify the member set parameter as DISCOUNT, SPL_DISCOUNT for SR_ACCOUNT. Click Expand All button. In the following screen, enter DISCOUNT FOR India, Singapore and Germany.
Note that ONLY India and Germany are having SPECIAL_DISCOUNT property as “Y”.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
4.3 Now, enter the discount data for India, Singapore and Germany. And, click the Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
4.4 The following screen shows the special discount only for India and Germany.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
5. *INCLUDE Syntax : *INCLUDE {Logic file Name} Description: Multiple files can be put into a single logic file and this file can then be included in the main logic file. When .LGF file is generated, main logic file is stuffed with the code in the included logic file. Example:
*INCLUDE LOGIC_SUB.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
6. *WHEN / *ENDWHEN Syntax : *WHEN {criteria} *IS [=]{value1}[,{value2},…] | <>{value} *REC(FACTOR={Real number}|EXPRESSION={Expression}[,{dim1}={member},{dim2}=…]) [ *REC(FACTOR={Real number}|EXPRESSION={Expression}[,{dim1}={member},{dim2}=…])] [*ELSE] *ENDWHEN Description: {Criteria} is the member property name to test. *IS is followed the values to be testes against. It has to be comma delimited if multiple values are to be checked against. The operators allowed are = and <>. If no operator is specified, then = is assumed. Example: *WHEN SR_ACCOUNT *IS QTY *REC(EXPRESSION=%VALUE%, SR_CATEGORY=PLAN, SR_TIME=2007.JAN) *REC(EXPRESSION=%VALUE%, SR_CATEGORY=PLAN, SR_TIME=2007.FEB) *REC(EXPRESSION=%VALUE%, SR_CATEGORY=PLAN, SR_TIME=2007.MAR) *ENDWHEN
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Business Scenario: Copy Quantity account’s ACTUAL data for JAN, 2006 to JAN,FEB & MAR, 2007 PLAN data for the product - LAPTOP. 17.1 Create a new logic file – LOGIC_WHEN.LGF in the Script Logic folder. Point Default.LGF to the new logic file. Validate and Save both logic files. The new logic file is as follows:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
6.1 Enter Quantity(as 1000) for Jan, 2006 as follows and click Send and Refresh Schedules. This will update the database.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
6.2 Now, change the Current View as follows. This will refresh the screen with the latest data from the database.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
6.3 The following screen shows the data copied to JAN, FEB & MAR 2007.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
7. *REC Syntax : *REC ( {Expression/Factor to change the signed data}, {Comma delimited additional member values to insert/update in the target member} ) Description: *REC() generated a new record to post to the database. Multiple *REC() statements can be used to insert multiple new records in to the target/dimension. *REC() can also be used to update the same record in the dimension and this is achieved through delta record/update. Example: *WHEN SR_ACCOUNT *IS "QTY" *REC(EXPRESSION=%VALUE%*1.1,SR_CATEGORY=PLAN,SR_TIME=2006.JAN) *REC(EXPRESSION=%VALUE%*1.1,SR_CATEGORY=PLAN,SR_TIME=2006.FEB) *REC(EXPRESSION=%VALUE%*1.1,SR_CATEGORY=PLAN,SR_TIME=2006.MAR) *ENDWHEN
Business Scenario: Increase quantity data by 10% for JAN, 2005 for the product – LAPTOP, for the ACTUAL category and copy it to JAN, FEB & MAR 2006’s PLAN data.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
7.1 Create a logic file – LOGIC_REC.LGF under the folder : \{AppSet}\Application\SR_PLANNING\Script Logic\, as follows:
Validate and Save LOGIC_REC.LGF. And, point Default.LGF to LOGIC_REC.LGF. Validate and Save it.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
________________________________________________________________________ 7.2 In the following screen, enter Quantity as 1000 for JAN. 2005 as below:
Click Send and Refresh Schedules Button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
7.3 The following screen shows the Quantity(increased by 10%) data for JAN, FEB, MAR, 2006(PLAN), which have been copied from JAN, 2005 for the same product.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
8. TMVL Syntax : TMVL(offset, base_period) Description: This command returns time value after offsetting the value from the base period which is passed as parameter to this command. This command works with only base members. Nested commands are not supported. Example: TMVL(1, 2006.FEB)
//will return Mar, 2006
Business Scenario: Increase the ACTUAL quantity by 10% for Jan, 2005 and book it to PLAN data for JAN, 2006.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
8.1 Create a new logic file – LOGIC_TMVL.LGF under \Application\SR_PLANNING\Script Logic\ Save and Validate LOGIC_TMVL.LGF Remove all the INCLUDEs from Default.LGF Include LOGIC_TMVL.LGF in Default.LGF Save and Validate Default.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
8.2 Make sure the CV is as follows to get the following screen which contains Jan, 2006 PLAN data. The data is empty now.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
8.3 Now, change the CV as follows to get the following screen to enter data for Jan, 2005 and ACTUAL. Key in data for “Quantity” and click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
8.4 Again, change the CV as follows to see the Jan, 2006 Planned data. Here, the Quantity has been increased by 10%.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
*SELECT ({variable}, {[What]}, {from dimension}, {Where}) Variable What From Dimension Where
-
Holds the selected (retrieved) data Property which need to be retrieved From which Dimension the data need to retrieved The selection criteria
Description: The special instruction *SELECT allows the user to retrieve a list of elements from a dimension and save it in a user-defined variable for later use anywhere else in the logic. The SELECT instruction is not specific to a given logic section, but it can be written once anywhere in the logic and used across multiple commit sections. The SELECT statement is fairly limited, as it only supports the equal sign (=), not equal to (<>) and cannot be used to combine multiple filter criteria with AND or OR keywords. The dataset retrieved using *SELECT can be used in XDIM_MEMBERSET to define scope. The memory variables are defined at compile time, not at run-time, so the logic file needs to be revalidated when new members are added to the dimensions.
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.1 Select all the entities which are having “AGENT_COMMISSION” property as “A” and save the retrieved dataset in %PRODSET% variable which can later be used in the script.
Business Scenario: Calculate the Agent Commission which is 3% of Revenue for all the products which are having “A” in their “AGENT_COMMISION” property for Jan, 2006 when Revenue data is entered/ calculated.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Create a new logic file – LOGIC_SELECT.LGF under \Application\SR_PLANNING\Script Logic\
•
Save and Validate LOGIC_SELECT.LGF
•
Remove all the INCLUDEs from Default.LGF
•
Include LOGIC_SELECT.LGF in Default.LGF
•
Save and Validate Default.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.3 Make sure the CV is as follows to get the following screen which contains 2006 Q1 (Jan, Feb and Mar) PLAN data for the product “LAPTOP”. The data is empty for “AGT_COMM”.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.4 Now enter data in “REVENUE” for 2006 Q1 (Jan, Feb and Mar), PLAN and for the product “LAPTOP”. And, click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.5 Verify 2006 Q1 Planned data for the product “LAPTOP”. Here, the “AGT_COMM” have been calculated as 3% of “REVENUE” as the “AGENT_COMMISION” property value for the product “LAPTOP” is “A”
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.6 Now change the “LAPTOP” to “DESKTOP” for the Product in CV and enter data in
“REVENUE” for 2006 Q1 (Jan, Feb and Mar), PLAN. And, click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
9.7 Verify 2006 Q1 Planned data for the product “DESKTOP”. Here, the “AGT_COMM” has not been calculated as the “AGENT_COMMISION” property value for the product “DESKTOP” is “B”
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Syntax : *SELECTCASE {expression} *CASE {value1}[,{value2},…] {Formulae} [*CASE {value1}[,{value2},…] {Formulae} [*CASEELSE] {Formulae} *ENDSELECT where {Expression} is the condition to be evaluated {value1},.. is the range of comma-delimited results that satisfy the condition for the current case
Description: *SELECTCASE is an alternate to IIF MDX statements and expands into IIF when executed. IIF and SELECTCASE have same impact on the performance.
Example: *SELECTCASE [SR_PRODUCT].CURRENTMEMBER.PROPERTIES("AGENT_COMMISSION") *CASE "A" [#AGT_COMM]=[REVENUE]*0.03 *CASE "B" [#AGT_COMM]=[REVENUE]*0.02 A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
________________________________________________________________________ *CASEELSE [#AGT_COMM]=[REVENUE]*0.01 *ENDSELECT Agent Commission for the each product is calculated based on the Product DIMs AGENT_COMMISSION property.
Business Scenario: Calculate the Agent Commission for all the products based on the “AGENT_COMMISION” property (“A” – 3% 0f Revenue, “B” – 2% of Revenue, - 1% of Revenue) for 2006 Q1 when Revenue data is entered/ calculated.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Create a new logic file – LOGIC_SELECTCASE.LGF under \Application\SR_PLANNING\Script Logic\
•
Save and Validate LOGIC_SELECTCASE.LGF
•
Remove all the INCLUDEs from Default.LGF
•
Include LOGIC_SELECTCASE.LGF in Default.LGF
•
Save and Validate Default.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
10.2 Make sure the CV is as follows to get the following screen which contains 2006 Q1 (Jan, Feb and Mar) PLAN data for the product “LAPTOP”. The data is empty for “AGT_COMM”.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
10.3 Now enter data in “REVENUE” for 2006 Q1 (Jan, Feb and Mar), PLAN and for the product “LAPTOP”. And, click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
10.4 Verify 2006 Q1 Planned data for the product “LAPTOP”. Here, the “AGT_COMM” have been calculated as 3% of “REVENUE” as the “AGENT_COMMISION” property value for the product “LAPTOP” is “A”
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
10.5 Now change the “LAPTOP” to “DESKTOP” for the Product in CV and enter data in
“REVENUE” for 2006 Q1 (Jan, Feb and Mar), PLAN. And, click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
10.6 Verify 2006 Q1 Planned data for the product “DESKTOP”. Here, the “AGT_COMM” has been calculated as 2% of the Revenue as the “AGENT_COMMISION” property for “DESKTOP” is “B”.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Description: *FOR / *NEXT is used to execute the scripts written between *FOR and *NEXT repeatedly. Variables will be used in FOR loop to identify the records.
Example: *WHEN SR_ACCOUNT *IS "QTY" *FOR%CURMONTH%=2005.JAN,2005.FEB,2005.MAR *REC(EXPRESSION=%VALUE%*1.1,SR_CATEGORY=PLAN,SR_TIME=TMVL(12,%CURMONTH%)) *NEXT *ENDWHEN Here, the *REC function will get executed for each month (2005.JAN,2005.FEB, 2005.MAR) and the %CURMONTH% variable is used to hold the time value.
Business Scenario: Increase the ACTUAL quantity by 10% for 2005 Q1 and book it to PLAN data for 2006 in same months.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
11.1 9 Create a new logic file – LOGIC_FORNEXT.LGF under \Application\SR_PLANNING\Script Logic\ 10 Save and Validate LOGIC_FORNEXT.LGF 11 Remove all the INCLUDEs from Default.LGF 12 Include LOGIC_FORNEXT.LGF in Default.LGF 13 Save and Validate Default.LGF
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
11.2 Make sure the CV is as follows to get the following screen which contains 2006 Q1 (Jan, Feb and Mar) PLAN data. The data is empty now.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
11.3 Now, change the CV as follows to get the following screen to enter data for 2005 Q1 (Jan, Feb and Mar) and ACTUAL. Key in data for “Quantity” and click Send and Refresh Schedules.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
11.4 Again, change the CV as follows to see 2006 Q1 Planned data. Here, the Quantities have been increased by 10% for 3 months.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12. *ADD / *ENDADD Syntax : *ADD {variable} = {set} {Formula} *ENDADD Description: *ADD / *ENDADD allows members values, delimited by comma, to be accumulated/added and then to be stored in a calculated member. Example: *ADD %VARCOST% = [DISCOUNT], [SPL_DISCOUNT], [AGT_COMM] [#VAR_COSTS]= %VARCOST% *ENDADD
Business Scenario: Calculate the variable costs[VAR_COSTS] by adding Discount, Special Discount & Agent Commission, and then booking it to VAR_COSTS account for PLAN data for the period – 2006, JAN.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.1 Create a new Script Logic under the folder – MURUGESANApplicationSR_PLANNINGScript Logic, in the name LOGIC_2. And, key in the code as follows:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.2 Modify Default.lgf file to point to LOGIC_2.LGF file. And, then click Validate and Save link on the right.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.3 The following screen shows the data for before the calculation of variable costs:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.4 Now, enter the variable costs as shown below and click the button – Send and Refresh Schedules:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.5 Now, the following screen is shown. Click Refresh button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.7 Click Close button in the following screen. And, then click the button at the top – Refresh Workbook.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
12.8 The following screen shows variable costs as 70 which is a sum of Discount, Special Discount and Agent Commission Accounts.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
13. *BEGIN / *END Syntax : *BEGIN {Formula}…. {Continuation of same Formula} {Continuation of same Formula} *END Description: *BEGIN / *END is used to split long formulae into multiple lines to improve readability. Example: *BEGIN [#VAR_COSTS]
=
[DISCOUNT] + [SPL_DISCOUNT] + [AGT_COMM]
*END
Business Scenario: Calculate the variable costs[VAR_COSTS] by adding Discount, Special Discount & Agent Commission, and then booking it to VAR_COSTS account for PLAN data for the period – 2006, JAN. Ensure that the formula, adding the values, is spread across multiple line.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
13.1Create a new LOGIC_3 file in the folder MURUGESAN\Application\SR_PLANNING\Script Logic\ and enter the code as shown below. And, modify the Default.lgf to point to LOGIC_3.LGF.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
13.2After entering the data, click the Button – Send and Refresh Schedules. In the following confirmation prompt, click Refresh button and then Yes button. Then click the Close button in the following button. Now, click Refresh Workbook and the following screen shows the calculated data.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
14. *FUNCTION / *ENDFUNCTION Syntax : * FUNCTION Function_Name( param1, param2, etc…) Function Text * ENDFUNCTION Description:
*FUNCTION / *ENDFUNCTION allows you to write user defined functions where in formulae can be put in and can be called from the main logic. These functions could be in a separate logic file or part of the mail logic file(in-line). This can improve the readability of the logic statement. Unlike Subroutines, Functions return a value. Example: *FUNCTION GETREV(%QUANTITY%,%UNIT_PRICE%) %QUANTITY%*%UNIT_PRICE% *ENDFUNCTION
Business Scenario: Multiply Quantity by Unit Price and boot it to REVENUE account for the year Jan, 2006 for the product - LAPTOP.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
14.1 Create a new logic file –FUNCTIONS.LGF under the folder : {AppSet}\Application\SR_PLANNING\Script Logic\. This should contain the function(GETREV) which will be called from the mail logic file – LOGIC_FUNCTIONS.LGF. Script the FUNCTIONS.LGF file as follows:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
14.2 Create a new logic file –LOGIC_FUNCTIONS.LGF under the folder : {AppSet}\Application\SR_PLANNING\Script Logic\. Script the LOGIC_FUNCTIONS.LGF file as follows:
First line in the script includes the FUNCTIONS.LGF. And, the last line in the script calls the GETREV() function that is stuffed in the FUNCTIONS.LGF. Now, point Default.LGF to LOGIC_FUNCTIONS.LGF. Validate and Save the two .LGF files.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
14.3 Now, enter the quantity value as 100 and unit price as 1000 as shown below:
Click Send and Refresh Schedules now.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
14.4 The following screen shows the REVENUE calculated by the GETREV() function:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
15. *SUB / *ENDSUB Syntax : *SUB {SubName}({Param1,[,{Param2}…]) {body text} {body text} {body text} […] *ENDSUB Description: *SUB / *ENDSUB allows you to create sub routines which can be called from the main logic. It is similar to *FUNCTION except that subroutines can not return values. And, *SUB / *ENDSUB does not have to be in a separate a file – it can be part of the main logic. If a particular segment of the code is to be repeated, then it can be coded as a subroutine and called from main code.
Business Scenario: Calculate REVENUE by multiplying QTY and U_PRICE and book it to REVENUE account for the PLAN data for the year JAN, 2006 for the product - LAPTOP.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
15.1 Create a logic file LOGIC_SUB under the folder : {AppSet}\Application\SR_PLANNING\Script Logic\ as follows:
Validate and Save LOGIC_SUB.LGF. Point Default.LGF to LOGIC_SUB.LGF. Validate and Save Default.LGF.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
________________________________________________________________________ 15. 2 Make sure the Current View is as follows. And, key in the data for Quantity and Unit Price as follows too:
Now, click Send and Refresh Schedules button.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
________________________________________________________________________ 15.3 The following screen shows the calculated REVENUE, which is performed by the sub routine.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16. LOOKUP Syntax : *LOOKUP {App} *DIM [{LookupID}:]{DimensionName}="Value" | {CallingDimensionName}[.{Property}] *DIM MEASURES=”MeasureName” *ENDLOOKUP Description: When a value, which is not inside the current data region, is required for calculation, LOOKUP can be used. LOOKUP can be used to retrieve value from current application or another application. Only one LOOKUP is allowed per COMMIT block. Example: *LOOKUP RATE *DIM TIME=SR_TIME.ID *DIM CATEGORY="ACTUAL" *DIM R_ACCT="AVG" *DIM R_ENTITY="GLOBAL" *DIM SRCCURR:INPUTCURRENCY=SR_ENTITY.CURRENCY *DIM RATEEUR:INPUTCURRENCY="EUR" *DIM RATEUSD:INPUTCURRENCY="USD" *DIM MEASURES="PERIODIC" *ENDLOOKUP Business Scenario: Convert NETREVENUE from SR_ENTITY’s local currency to the reporting currencies(USD & EUR).
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
________________________________________________________________________ 16.1 Create a new logic file – LOGIC_LOOKUP.LGF. Point Default.LGF to LOGIC_LOOKUP.LGF. The following screen shows the code for LOGIC_LOOKUP.LGF:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16.2 Open the Nested Rows Dynamic Report Template as per the current view and member set parameters shown below to view the data available before running the LOGIC_LOOKUP.LGF:
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16.3 Following screen shows no NETREVENUE data for all the currencies for first quarter of 2006.
There is no data available for any currencies for Account - NETREVENUE, Product – LAPTOP and Entity – India.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16.4 Now, use the Trend by Account Dynamic Input schedule, enter the NETREVNUE data for local currency (Indian Rupees) for first quarter for 2006.
Now, click Send and Refresh Schedules button. This will save the data in local currency (INR) and the LOGIC_LOOKUP will insert two more records (one for USD currency and another one for EUR currency) by coverting the NETREVENUE for the Indian Rupees using the exchange rates from RATE application.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16.5 The following screen shows the exchange rates for local(INR) and reporting currencies(USD,EUR):
Note that this is a new EVDRE() report for RATE application.
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell
16.6 Open a Nested Row dynamic report template with current view as shown below.
The above screen shows the data records for the respective reporting currencies – USD & EUR, apart from local currency(LC).
A SAP EPM/BPC Community Service
Author: Murugesan Annamalai SAP Project Manager/Lead 03/20/2012 SAP EPM/BPC Solutions Lead [email protected]
Chief Architect: Jothi Periasamy SAP HANA/EPM/BI/EIM Community Leader SAP BPC/BOBJ/BI/MDM Community Domain Champion [email protected], (916)-296-0228 - Cell