SlideShare a Scribd company logo
SAP Solutions for
                              Performance Management




                      Business Planning and Consolidation
                      5.x Logic Explained
                      Part 1 of 3



SAP Proprietary   1
SAP Solutions for
                             Performance Management




                      Logic Overview – Part 1

                      Script Formulas Overview – Part 2

                      Script Formulas Advanced – Part 3




SAP Proprietary   2
Agenda


         Logic overview
                   What
                   Where
                   When
                   How

         Logic Advice

         Dimension Logic




SAP Proprietary 9/21/06   3
What is “logic” in SAP BPC

         General understanding of what “logic” is for BPC
                   At the most basic level logic is just a calculation
                   The questions are where, when and how the logic is executed that requires
                   the expertise

         Where – calculations can be generated by:
                   Analysis Services
                   BPC Application Server
                   Excel

         When - calculations can be executed:
                   As data is queried from the application
                   As data is written to the application
                   After data is written to the application

         How – calculations are defined
                   Within the definition of a dimension using Microsoft MDX language
                   A script using a proprietary language
                   Using a rules based engine for specific pre-defined business requirements
                   Excel formulas




SAP Proprietary 9/21/06   4
Where logic is executed


         Analysis Services
                   Microsoft provides capability of defining calculations within a
                   dimension
                   Calculations performed as user queries the data
                   Results stored in the cache only
                   First query will allows take longer than subsequent queries

         BPC Application Server
                   BPC proprietary logic engine reads script or rules based definition
                   Application Server tier retrieves data and calculates results
                   Results stored in database directly

         Excel/Live Reporting
                   Excel based formulas calculate on data retrieved within workbook
                   Results stored only in workbook
                   Live Reporting on the web supports simple calculations


SAP Proprietary 9/21/06   5
When logic is executed


         As data is queried from the application
                   Analysis Services member calculations, on the fly
                   Excel calculations, on the fly or on demand (F9)
                   Live Reporting calculations, on the fly

         As data is written to the application
                   Calculation on the fly when user send data from Data Loads, Excel,
                   Live Reporting, Word, PowerPoint or Journal Entries
                   Mechanism = default logic script

         After data is written to the application
                   Calculates on demand via Data Manager packages
                   Script or rules based logic supported only




SAP Proprietary 9/21/06   6
How logic is defined

         Dimension Logic (use sparingly!)
                   Within the definition of a dimension using Microsoft MDX language
                   Calculations defined for a specific member ID
                   Calculations can be defined for specific intersections within one application
                   only (cube)

         Script Logic
                   A script using a proprietary language or MDX
                   Calculations defined for a specific member ID
                   Creates base level data in the application
                   Calculations can cross applications

         Rules Based (table driven) Logic
                   Using a rules based engine for specific pre-defined business requirements
                          Legal consolidation
                          Currency
                          Elimination
                   Rules not specific to a single member ID
                   Calculations will cross applications

         Sheet Based Logic (not covered in these presentation)
                   Exists in worksheet only


SAP Proprietary 9/21/06   7
Logic Advice


         In general you want to create data for logic to avoid performance
         issues in production

         Apply best practices to help determine which type of logic to use
                   do not assume just because it is possible in development that is will
                   be successful in production.

         Application specifics can help determine approach – use holistic
         approach
                   Application Size (dimensions, data)
                   # of Users
                   Application functionality (read,write)

         MDX logic structure has changed in BPC 5




SAP Proprietary 9/21/06   8
Script Logic Pitfalls


         BPC logic is a powerful tool – but can be a performance issue if
         not written correctly
                   Logic syntax is not easy to grasp – plus limited training availability
                   The logic design is not very intuitive to a business user
                   Multiple ways to do the same thing with only 1 or 2 that perform as
                   desired – hard to know best practice

         The good news is we are working on:
                   Improving knowledge dissemination
                   Usability in the product
                   Thinking on next generation logic has begun




SAP Proprietary 9/21/06   9
Logic Approach – Dimension Formulas

         Necessary when calculating after the aggregation (parent calculations)
                   Ratios, KPI’s etc.

         Use of SOLVEORDER
                   Control calculation order across dimensions – does not apply if all formulas
                   are in one dimension
                   Control relationship to the Measures Dimension (a separate dimension)

         Dimension Logic will have a negative impact on retrieval times when
         system is in use by multiple users!
                   Don’t get fooled by the development environment performance

         For BPC 5 see formula guidance
                   Requires tuples with IIF statements on ALL logic statements
                   SQL 2005 currently has serious performance issues when formula property
                   exists in dimension! Microsoft says they are working on it.




SAP Proprietary 9/21/06   10
BPC 5 Dimension Formula Guideline


                 BPC 5 implements multiple hierarchies as separate
                 dimensions in Analysis Services (AS).
                    For example if the account dimension has two hierarchies AS will
                    create two dimensions named account.h1 and account.h2.
                    The top member of these dimensions will be named [all account.h1]
                    and [all account.h2.] All members of the dimension roll up to this
                    top level member.
                    An understanding of this concept is important because it relates to
                    how MDX formulas need to be written.




SAP Proprietary 9/21/06   11
BPC 5 Dimension Formula Guideline

         Suppose we want to define a formula as following in a dimension with 3
         hierarchies:
             #CF_ST_FIN_RATE= ((#IFRSTRATE/#WKSYR)*#WKSCURMTH)

         Where IFRSTRATE, WKSYR and WKSCURMTH are base members of
         hierarchy H1 of Account dimension, and CF_ST_FIN_RATE is a
         dimension formula in H1 of account dimension.


                   The correct formula for H1 is
             IIF(Account.H2.CurrentMember is Account.H2.[All Account.H2] And
                 Account.H3.CurrentMember is Account.H3.[All Account.H3],
                 (Account.H1.IFRSTRATE/Account.H1.WKSYR)*Account.H1.WKSCURMTH, NULL)

                   An example of this formula for H2:
             IIF(Account.H1.CurrentMember is Account.H1.[All Account.H1] And
                 Account.H3.CurrentMember is Account.H3.[All Account.H3],
                 (Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH, NULL)
         Note:
                   All variables need to be fully qualified with dimension name and
                   hierarchy name, such as account.h1.IFRSTRATE. Otherwise AS
                   returns a syntax error.


SAP Proprietary 9/21/06   12
BPC 5 Dimension Formula Guideline

         Note:
                    When defining a formula on H1, you have to specify that formula returns a
                    valid result only if the current members on other hierarchies are at the top
                    level of each hierarchy.
                    Previous example is for the case that base member has dimension formula.
                    If you need to define dimension formula for parent member, you have to use
                    a different type of formula because you need to roll up the value of children.
                    So in previous case, if CF_ST_FIN_RATE is parent member, you have to
                    define the following.
             The correct formula for H1 is
             IIF(Account.H2.CurrentMember is Account.H2.[All Account.H2] And
                 Account.H3.CurrentMember is Account.H3.[All Account.H3],
                  (Account.H1.IFRSTRATE/Account.H1.WKSYR)*Account.H1.WKSCURMTH,
                  rollupchildren(Account.H1.currentMember,"+"))

             An example of this formula for H2:
             IIF(Account.H1.CurrentMember is Account.H1.[All Account.H1] And
                 Account.H3.CurrentMember is Account.H3.[All Account.H3],
                  (Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH,
                  rollupchildren(Account.H2.currentMember,"+"))

             Please see the “V5x DimensionFormula Guide.doc” for full details




SAP Proprietary 9/21/06   13
Dimension Formula Example


         Calculate Net Income per Head as NetIncome/Headcount
                   Does the calculation have to be run at aggregated levels?
                   What is the relationship with the Measures Dimension?
                   ACCTYPE considerations?
                   What is the relationship to the Time Dimension?




SAP Proprietary 9/21/06   14
Dimension Formula Example


       Does the calculation have to be run at aggregated levels?
                 Yes. In fact, it MUST be run at aggregated levels in order to generate the correct
                 result.



                                                                                            After
                                                                                         Aggregations




                                                                                          Before
                                                                                        Aggregations




SAP Proprietary 9/21/06   15
Dimension Formula Example


         What is the relationship with the Measures Dimension?
                   This calculation should be run after the Measures calculation. Use a
                   SOLVE_ORDER = 4 or higher.

         Any ACCTYPE Considerations
                   NetIncome – INC
                   HEADCOUNT - AST
                   Since the calculation happens after the Measures calculation the
                   ACCTYPE will not come into play.




SAP Proprietary 9/21/06   16
Dimension Formula Example

         What is the relationship with the Time Dimension
                   In this situation an average may be required when looking at Headcount at
                   a parent in the Time Dimension.




SAP Proprietary 9/21/06   17
Copyright 2006 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 PowerPoint are 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, System i, System i5, System p,
     System p5, System x, System z, System z9, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, POWER5+, OpenPower and PowerPC
     are trademarks or registered trademarks of IBM Corporation.
     Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated 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, mySAP.com, xApps, xApp, SAP NetWeaver, 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.




     The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior
     written permission of SAP AG.
     This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments,
     and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this
     document is subject to change and may be changed by SAP at any time without notice.
     SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items
     contained within this material. This document is provided 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 have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials.
     This limitation shall not apply in cases of intent or gross negligence.
     The statutory liability for personal injury and defective products is not affected. 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 Proprietary 9/21/06       18

More Related Content

What's hot

SAP Integration with Excel - Basic Guide
SAP Integration with Excel - Basic GuideSAP Integration with Excel - Basic Guide
SAP Integration with Excel - Basic Guide
Benedict Yong (杨腾翔)
 
ERP Made Simple (preview)
ERP Made Simple (preview)ERP Made Simple (preview)
ERP Made Simple (preview)
Benedict Yong (杨腾翔)
 
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f330fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
Yogeeswar Reddy
 
Practitioner perspective-erp-on-hana-and-fi-analytics 2015
Practitioner perspective-erp-on-hana-and-fi-analytics 2015Practitioner perspective-erp-on-hana-and-fi-analytics 2015
Practitioner perspective-erp-on-hana-and-fi-analytics 2015
Benedict Yong (杨腾翔)
 
Sa pexperts prospect_webinar_epm_add_in_v1
Sa pexperts prospect_webinar_epm_add_in_v1Sa pexperts prospect_webinar_epm_add_in_v1
Sa pexperts prospect_webinar_epm_add_in_v1
ashok_krs
 
Bpc 10.1 nw classic training
Bpc 10.1 nw classic trainingBpc 10.1 nw classic training
Bpc 10.1 nw classic training
griteshkaran
 
Sap BPC concepts
Sap BPC conceptsSap BPC concepts
Sap BPC concepts
Verity Solutions
 
BPC 10.1 basics
BPC 10.1 basicsBPC 10.1 basics
BPC 10.1 basics
kamal ega
 
Sap bpc 10 package
Sap bpc 10 packageSap bpc 10 package
Sap bpc 10 package
griteshkaran
 
Erp book
Erp bookErp book
Erp book
Mandeep SINGH
 
SAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC ConsolidationSAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC Consolidation
Jothi Periasamy
 
World 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
World 2013 - Pushing MicroStrategy to the Limit, The Hacker WayWorld 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
World 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
Bryan Brandow
 
Analysis edition for olap
Analysis edition for olapAnalysis edition for olap
Analysis edition for olap
Software Engineer
 
Bo analusis macros
Bo analusis  macrosBo analusis  macros
Bo analusis macros
Yogeeswar Reddy
 
C_EPMBPC_10 BPC 10 Certification
C_EPMBPC_10 BPC 10 CertificationC_EPMBPC_10 BPC 10 Certification
C_EPMBPC_10 BPC 10 Certification
griteshkaran
 
Sap bpc embedded training.pdf
Sap bpc embedded training.pdfSap bpc embedded training.pdf
Sap bpc embedded training.pdf
Rishi1431
 
Currency conversion in bi 7.0
Currency conversion in bi 7.0Currency conversion in bi 7.0
Currency conversion in bi 7.0
gireesho
 
BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0
sap customization
 

What's hot (18)

SAP Integration with Excel - Basic Guide
SAP Integration with Excel - Basic GuideSAP Integration with Excel - Basic Guide
SAP Integration with Excel - Basic Guide
 
ERP Made Simple (preview)
ERP Made Simple (preview)ERP Made Simple (preview)
ERP Made Simple (preview)
 
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f330fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
30fab7f5 f95f-2d10-8ba7-8edb4d69b9f3
 
Practitioner perspective-erp-on-hana-and-fi-analytics 2015
Practitioner perspective-erp-on-hana-and-fi-analytics 2015Practitioner perspective-erp-on-hana-and-fi-analytics 2015
Practitioner perspective-erp-on-hana-and-fi-analytics 2015
 
Sa pexperts prospect_webinar_epm_add_in_v1
Sa pexperts prospect_webinar_epm_add_in_v1Sa pexperts prospect_webinar_epm_add_in_v1
Sa pexperts prospect_webinar_epm_add_in_v1
 
Bpc 10.1 nw classic training
Bpc 10.1 nw classic trainingBpc 10.1 nw classic training
Bpc 10.1 nw classic training
 
Sap BPC concepts
Sap BPC conceptsSap BPC concepts
Sap BPC concepts
 
BPC 10.1 basics
BPC 10.1 basicsBPC 10.1 basics
BPC 10.1 basics
 
Sap bpc 10 package
Sap bpc 10 packageSap bpc 10 package
Sap bpc 10 package
 
Erp book
Erp bookErp book
Erp book
 
SAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC ConsolidationSAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC Consolidation
 
World 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
World 2013 - Pushing MicroStrategy to the Limit, The Hacker WayWorld 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
World 2013 - Pushing MicroStrategy to the Limit, The Hacker Way
 
Analysis edition for olap
Analysis edition for olapAnalysis edition for olap
Analysis edition for olap
 
Bo analusis macros
Bo analusis  macrosBo analusis  macros
Bo analusis macros
 
C_EPMBPC_10 BPC 10 Certification
C_EPMBPC_10 BPC 10 CertificationC_EPMBPC_10 BPC 10 Certification
C_EPMBPC_10 BPC 10 Certification
 
Sap bpc embedded training.pdf
Sap bpc embedded training.pdfSap bpc embedded training.pdf
Sap bpc embedded training.pdf
 
Currency conversion in bi 7.0
Currency conversion in bi 7.0Currency conversion in bi 7.0
Currency conversion in bi 7.0
 
BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0BPC Configuration and User Guide Ver 10.0
BPC Configuration and User Guide Ver 10.0
 

Similar to Business planning and consolidation 5.x%3a logic explained%2c part 1

01 surya bpc_script_ppt
01 surya bpc_script_ppt01 surya bpc_script_ppt
01 surya bpc_script_ppt
Surya Padhi
 
A Deep Dive into HPCM for Planning and Essbase Professionals
A Deep Dive into HPCM for Planning and Essbase ProfessionalsA Deep Dive into HPCM for Planning and Essbase Professionals
A Deep Dive into HPCM for Planning and Essbase Professionals
Alithya
 
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
Ahmed Yasir Khan
 
BPC Article original
BPC Article originalBPC Article original
BPC Article original
Prasad Mavuduri
 
Blue book
Blue bookBlue book
New dimensions for_reporting
New dimensions for_reportingNew dimensions for_reporting
New dimensions for_reporting
Rahul Mahajan
 
Sharepoint 2010: Practical Architecture from the Field
Sharepoint 2010: Practical Architecture from the FieldSharepoint 2010: Practical Architecture from the Field
Sharepoint 2010: Practical Architecture from the Field
Tihomir Ignatov
 
HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?
Ray Février
 
Sap Interview Questions - Part 1
Sap Interview Questions - Part 1Sap Interview Questions - Part 1
Sap Interview Questions - Part 1
ReKruiTIn.com
 
Journals SAP BPC 7
Journals SAP BPC 7Journals SAP BPC 7
Journals SAP BPC 7
khalimail
 
HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?
Alithya
 
SAP Reuse Tools
SAP Reuse Tools SAP Reuse Tools
SAP Reuse Tools
Tobias Trapp
 
Prodev Solutions Intro
Prodev Solutions IntroProdev Solutions Intro
Prodev Solutions Intro
larryATprodev
 
sap po for beginners.docx
sap po for beginners.docxsap po for beginners.docx
sap po for beginners.docx
SWAPNATELLA
 
Kranthi 3.5 exp
Kranthi 3.5 expKranthi 3.5 exp
Kranthi 3.5 exp
kranthi kumar
 
Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANA
Ashish Saxena
 
Extreme SSAS- SQL 2011
Extreme SSAS- SQL 2011Extreme SSAS- SQL 2011
Extreme SSAS- SQL 2011
Itay Braun
 
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
Edureka!
 
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDayEmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
Vatsal Gaonkar
 
Ibm Cognos B Iund Pmfj
Ibm Cognos B Iund PmfjIbm Cognos B Iund Pmfj
Ibm Cognos B Iund Pmfj
Friedel Jonker
 

Similar to Business planning and consolidation 5.x%3a logic explained%2c part 1 (20)

01 surya bpc_script_ppt
01 surya bpc_script_ppt01 surya bpc_script_ppt
01 surya bpc_script_ppt
 
A Deep Dive into HPCM for Planning and Essbase Professionals
A Deep Dive into HPCM for Planning and Essbase ProfessionalsA Deep Dive into HPCM for Planning and Essbase Professionals
A Deep Dive into HPCM for Planning and Essbase Professionals
 
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
Power BI & Advanced Business Intelligence Tools Excel 2013 / 2016 By Spark Tr...
 
BPC Article original
BPC Article originalBPC Article original
BPC Article original
 
Blue book
Blue bookBlue book
Blue book
 
New dimensions for_reporting
New dimensions for_reportingNew dimensions for_reporting
New dimensions for_reporting
 
Sharepoint 2010: Practical Architecture from the Field
Sharepoint 2010: Practical Architecture from the FieldSharepoint 2010: Practical Architecture from the Field
Sharepoint 2010: Practical Architecture from the Field
 
HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?
 
Sap Interview Questions - Part 1
Sap Interview Questions - Part 1Sap Interview Questions - Part 1
Sap Interview Questions - Part 1
 
Journals SAP BPC 7
Journals SAP BPC 7Journals SAP BPC 7
Journals SAP BPC 7
 
HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?HPCM Management Ledger & FDMEE: The Perfect Partnership?
HPCM Management Ledger & FDMEE: The Perfect Partnership?
 
SAP Reuse Tools
SAP Reuse Tools SAP Reuse Tools
SAP Reuse Tools
 
Prodev Solutions Intro
Prodev Solutions IntroProdev Solutions Intro
Prodev Solutions Intro
 
sap po for beginners.docx
sap po for beginners.docxsap po for beginners.docx
sap po for beginners.docx
 
Kranthi 3.5 exp
Kranthi 3.5 expKranthi 3.5 exp
Kranthi 3.5 exp
 
Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANA
 
Extreme SSAS- SQL 2011
Extreme SSAS- SQL 2011Extreme SSAS- SQL 2011
Extreme SSAS- SQL 2011
 
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
Power BI Interview Questions and Answers | Power BI Certification | Power BI ...
 
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDayEmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
EmpoweringEnterprisePlanning_CalculationManager_2015HUGMNTechDay
 
Ibm Cognos B Iund Pmfj
Ibm Cognos B Iund PmfjIbm Cognos B Iund Pmfj
Ibm Cognos B Iund Pmfj
 

Business planning and consolidation 5.x%3a logic explained%2c part 1

  • 1. SAP Solutions for Performance Management Business Planning and Consolidation 5.x Logic Explained Part 1 of 3 SAP Proprietary 1
  • 2. SAP Solutions for Performance Management Logic Overview – Part 1 Script Formulas Overview – Part 2 Script Formulas Advanced – Part 3 SAP Proprietary 2
  • 3. Agenda Logic overview What Where When How Logic Advice Dimension Logic SAP Proprietary 9/21/06 3
  • 4. What is “logic” in SAP BPC General understanding of what “logic” is for BPC At the most basic level logic is just a calculation The questions are where, when and how the logic is executed that requires the expertise Where – calculations can be generated by: Analysis Services BPC Application Server Excel When - calculations can be executed: As data is queried from the application As data is written to the application After data is written to the application How – calculations are defined Within the definition of a dimension using Microsoft MDX language A script using a proprietary language Using a rules based engine for specific pre-defined business requirements Excel formulas SAP Proprietary 9/21/06 4
  • 5. Where logic is executed Analysis Services Microsoft provides capability of defining calculations within a dimension Calculations performed as user queries the data Results stored in the cache only First query will allows take longer than subsequent queries BPC Application Server BPC proprietary logic engine reads script or rules based definition Application Server tier retrieves data and calculates results Results stored in database directly Excel/Live Reporting Excel based formulas calculate on data retrieved within workbook Results stored only in workbook Live Reporting on the web supports simple calculations SAP Proprietary 9/21/06 5
  • 6. When logic is executed As data is queried from the application Analysis Services member calculations, on the fly Excel calculations, on the fly or on demand (F9) Live Reporting calculations, on the fly As data is written to the application Calculation on the fly when user send data from Data Loads, Excel, Live Reporting, Word, PowerPoint or Journal Entries Mechanism = default logic script After data is written to the application Calculates on demand via Data Manager packages Script or rules based logic supported only SAP Proprietary 9/21/06 6
  • 7. How logic is defined Dimension Logic (use sparingly!) Within the definition of a dimension using Microsoft MDX language Calculations defined for a specific member ID Calculations can be defined for specific intersections within one application only (cube) Script Logic A script using a proprietary language or MDX Calculations defined for a specific member ID Creates base level data in the application Calculations can cross applications Rules Based (table driven) Logic Using a rules based engine for specific pre-defined business requirements Legal consolidation Currency Elimination Rules not specific to a single member ID Calculations will cross applications Sheet Based Logic (not covered in these presentation) Exists in worksheet only SAP Proprietary 9/21/06 7
  • 8. Logic Advice In general you want to create data for logic to avoid performance issues in production Apply best practices to help determine which type of logic to use do not assume just because it is possible in development that is will be successful in production. Application specifics can help determine approach – use holistic approach Application Size (dimensions, data) # of Users Application functionality (read,write) MDX logic structure has changed in BPC 5 SAP Proprietary 9/21/06 8
  • 9. Script Logic Pitfalls BPC logic is a powerful tool – but can be a performance issue if not written correctly Logic syntax is not easy to grasp – plus limited training availability The logic design is not very intuitive to a business user Multiple ways to do the same thing with only 1 or 2 that perform as desired – hard to know best practice The good news is we are working on: Improving knowledge dissemination Usability in the product Thinking on next generation logic has begun SAP Proprietary 9/21/06 9
  • 10. Logic Approach – Dimension Formulas Necessary when calculating after the aggregation (parent calculations) Ratios, KPI’s etc. Use of SOLVEORDER Control calculation order across dimensions – does not apply if all formulas are in one dimension Control relationship to the Measures Dimension (a separate dimension) Dimension Logic will have a negative impact on retrieval times when system is in use by multiple users! Don’t get fooled by the development environment performance For BPC 5 see formula guidance Requires tuples with IIF statements on ALL logic statements SQL 2005 currently has serious performance issues when formula property exists in dimension! Microsoft says they are working on it. SAP Proprietary 9/21/06 10
  • 11. BPC 5 Dimension Formula Guideline BPC 5 implements multiple hierarchies as separate dimensions in Analysis Services (AS). For example if the account dimension has two hierarchies AS will create two dimensions named account.h1 and account.h2. The top member of these dimensions will be named [all account.h1] and [all account.h2.] All members of the dimension roll up to this top level member. An understanding of this concept is important because it relates to how MDX formulas need to be written. SAP Proprietary 9/21/06 11
  • 12. BPC 5 Dimension Formula Guideline Suppose we want to define a formula as following in a dimension with 3 hierarchies: #CF_ST_FIN_RATE= ((#IFRSTRATE/#WKSYR)*#WKSCURMTH) Where IFRSTRATE, WKSYR and WKSCURMTH are base members of hierarchy H1 of Account dimension, and CF_ST_FIN_RATE is a dimension formula in H1 of account dimension. The correct formula for H1 is IIF(Account.H2.CurrentMember is Account.H2.[All Account.H2] And Account.H3.CurrentMember is Account.H3.[All Account.H3], (Account.H1.IFRSTRATE/Account.H1.WKSYR)*Account.H1.WKSCURMTH, NULL) An example of this formula for H2: IIF(Account.H1.CurrentMember is Account.H1.[All Account.H1] And Account.H3.CurrentMember is Account.H3.[All Account.H3], (Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH, NULL) Note: All variables need to be fully qualified with dimension name and hierarchy name, such as account.h1.IFRSTRATE. Otherwise AS returns a syntax error. SAP Proprietary 9/21/06 12
  • 13. BPC 5 Dimension Formula Guideline Note: When defining a formula on H1, you have to specify that formula returns a valid result only if the current members on other hierarchies are at the top level of each hierarchy. Previous example is for the case that base member has dimension formula. If you need to define dimension formula for parent member, you have to use a different type of formula because you need to roll up the value of children. So in previous case, if CF_ST_FIN_RATE is parent member, you have to define the following. The correct formula for H1 is IIF(Account.H2.CurrentMember is Account.H2.[All Account.H2] And Account.H3.CurrentMember is Account.H3.[All Account.H3], (Account.H1.IFRSTRATE/Account.H1.WKSYR)*Account.H1.WKSCURMTH, rollupchildren(Account.H1.currentMember,"+")) An example of this formula for H2: IIF(Account.H1.CurrentMember is Account.H1.[All Account.H1] And Account.H3.CurrentMember is Account.H3.[All Account.H3], (Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH, rollupchildren(Account.H2.currentMember,"+")) Please see the “V5x DimensionFormula Guide.doc” for full details SAP Proprietary 9/21/06 13
  • 14. Dimension Formula Example Calculate Net Income per Head as NetIncome/Headcount Does the calculation have to be run at aggregated levels? What is the relationship with the Measures Dimension? ACCTYPE considerations? What is the relationship to the Time Dimension? SAP Proprietary 9/21/06 14
  • 15. Dimension Formula Example Does the calculation have to be run at aggregated levels? Yes. In fact, it MUST be run at aggregated levels in order to generate the correct result. After Aggregations Before Aggregations SAP Proprietary 9/21/06 15
  • 16. Dimension Formula Example What is the relationship with the Measures Dimension? This calculation should be run after the Measures calculation. Use a SOLVE_ORDER = 4 or higher. Any ACCTYPE Considerations NetIncome – INC HEADCOUNT - AST Since the calculation happens after the Measures calculation the ACCTYPE will not come into play. SAP Proprietary 9/21/06 16
  • 17. Dimension Formula Example What is the relationship with the Time Dimension In this situation an average may be required when looking at Headcount at a parent in the Time Dimension. SAP Proprietary 9/21/06 17
  • 18. Copyright 2006 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 PowerPoint are 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, System i, System i5, System p, System p5, System x, System z, System z9, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, POWER5+, OpenPower and PowerPC are trademarks or registered trademarks of IBM Corporation. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated 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, mySAP.com, xApps, xApp, SAP NetWeaver, 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. The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG. This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided 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 have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence. The statutory liability for personal injury and defective products is not affected. 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 Proprietary 9/21/06 18