Wednesday, March 28, 2012

Dependent Tasks in Business Planning and Consolidation 7.0 NW (BPC)



Task Manager helps in managing different activities to be performed by the users in Business Planning and Consolidation (BPC) system. Task Profile Creation being One time activity it involves lot of responsibility in creating it. Right set of system authorization needs to be given to right set of people else it might lead to lot of issues. Usually System administrator creates task profiles and assigns it to end users.
The Security in BPC system needs to be maintained for any user to perform the desired activities in the BPC system. The Security of the BPC system is handled through different profiles on different criteria.

As represented in the diagram above, Member Access Profiles help in providing the authorization to the users based on the Secured Dimensions in the BPC applications. The major mapping for providing access to BPC system is as below,
1.  Team <--> Member Access Profile (Many to Many), Team <--> Task Profile (Many to One)
A Team can have any number of Member Access Profiles and Only one Task Profile
2.  User <--> Team (Many to Many), User <--> Member Access Profile (Many to Many), User <--> Task Profile (Many to Many)
A User can be assigned to any number of Teams, Member Access Profile and Task Profiles.
Once a user is assigned to any Team he has access that is defined in Member Access and Task Profiles assigned to the Team. Assigning users to Team helps in reducing the effort of maintaining users individually.
Note:
1. It is good practice to assign single task profile to any user.
2. Both Member Access Profile and Task Profile needs to be assigned accordingly for correct set of activities.
(No use of access to write data through Task Profile without having write access to any master data through Member Access Profile)


There are different set of tasks available for BPC system. Every task is unique and provides different access specific to them.
Not all tasks can individually provide the required access specific to them. They require certain other tasks to be added for providing their access to assigned users. The table below gives information on the additional set of tasks required for those individual tasks to provide the required access.
Dependent Task NameDescriptionSupporting TaskAccessing System
Manage TemplateIt provides read access to Reports and Input Schedules saved in the system.eAnalyzeExcel Client
Submit DataIt provides access to save any data to the system through any input schedule.eAnalyzeExcel Client
Manage Distributor Provides access to,
  • Create new distribution list
  • Validate and Save distribution list
  • Edit existing distribution list
Needs to be a Primary Admin.Excel Client
Publish OfflineCollects offline changes in Input Sheets and sends to data baseeAnalyze,WebAdmin, SubmitDataExcel Client
Create JournalProvides access to create and save new journal entries into the system.Review Journal and eAnalyzeExcel Client
Post JournalProvides access to post data to the system through available journal entries.Review Journal and eAnalyzeExcel Client
Review JournalProvides access to review available journal entrieseAnalyzeExcel Client
Unpost JournalProvides access to unpost the data entered through journal entriesReview Journal and eAnalyzeExcel Client
Set Work StatusAccess Content Lib: user can set work status through BPC for Web. 
Submit Data : User can set work status through BPC for Excel 
Access Content Lib or Submit DataExcel Client, Web Interface
Create Web Page Provides access to,
  • Add a new web Page
  • Post a document
  • Preview available documents
  • Filter or Sort the document list
Access Content LibWeb Interface
Manage Content LibProvides access to,
  • Post a document
  • Edit Page information of available documents
  • Preview available documents
  • Filter or Sort the document list
  • Delete required documents available
Access Content LibWeb Interface
Manage Live ReportAccess to Build a Report and Delete available Live reportsLive ReportWeb Interface
UpdateToCompanyFolderAllows user to Update the templates in Company folder.Manage TemplateExcel Client
Tasks available in BPC 7.0 NW other than what mentioned in the above table are Independent Tasks and can provide their specific access without requiring any additional supporting tasks.
Thus various Dependent tasks and its Supporting Tasks help us configuring the Exact Task Profile required for various End Users.


Akshay VellankiPartner & Director EPM PracticeTechincept Consulting Inc.www.techincept.com310-956-1113AkshayVellanki@gmail.comwww.techincept.com/sapbpctraining.html

Thursday, March 15, 2012

A Taste of What’s Coming in BPC 10.0


New look and feel – One of the themes that SAP has been touting in the EPM 10.0 release is ‘Unified’, and this refers to making each of the EPM products have a similar user-friendly interface so that the user doesn’t know whether they’re in a BPC report or a Strategy Management scorecard (for example).  This new user interface seems very visually appealing based on the screenshots and demos provided.
Integrated security with Netweaver back-end – One of the complaints about BPC security in previous 7.x releases was that the security was not integrated with the underlying BW system.  SAP appears to have addressed this issue and provides a new administration area that will give system administrators a user friendly tool that acts as a front-end to PFCG or SU01 transaction code.
Enhanced hierarchy maintenance – While maintaining hierarchies were do-able by maintaining the ParentHx property in the dimension sheet, new functionality was developed that will allow for drag and drop hierarchy builds within BPC.
Enhanced script logic editor – Let’s face it, writing script logic can be less than straight-forward (and that’s putting it nicely), but with the new functionality planned for this enhancement, it will become a little easier.  With keywords and MDX statements now at a script-writer’s finger tips, searching online for the exact nomenclature will hopefully be less frequent.
No more .Net tier – As a business guy, I’m not sure that I understand exactly what this involves, but a more simplified and streamlined backend likely makes things easier.
Enhanced core consolidation functionality – New features such as Consolidation Central will give administrators a single place for configuration.  Better data validations (with thresholds that will allow consolidation process to continue or if breached, to stop) and a Consolidation Monitor (ala SEM-BCS) are added features in the upcoming release.
Ownership Manager – the Dynamic Hierarchy Editor is now called the Ownership Manager.  This web-based tool allows for auto calculation of ownership percentages based upon a user input of the Parent/Child relationships.  Based on the description, this reminds me a little of the SEM-BCS Group Shares report.
Web-based Journals – Journals will now be entered via a new web-based front-end, with what seemed to be a user-defined layout.  Enhanced journal reporting using a query manager will also allow users to better investigate the entries that are being posted in the system.
Future HANA Enablement – Beginning later in 2011, BPC will be enabled to run on HANA, first with replication of data using the Sybase Replication Server.  Then, in mid-2012, look for BPC to run fully on the HANA technology.
BPC Microsoft
Further demonstrating what SAP has said it would do, some of the Netweaver enhancements mentioned above will be available in the Microsoft platform, but not all.  Specific notable enhancements called out for the Microsoft platform were performance enhancements brought on by fully leveraging the 64-bit architecture and a new Advanced Variance Analysis tool that will help drive variance reporting.  The AVA will only be available in the Microsoft version of BPC, at least for the initial roll-out of 10.0
Conclusion
It was a really good Roadmap session with a lot of excellent and knowledgeable speakers.  I hate to short-change the speakers for the non-BPC EPM tools, but that’s what my personal focus is on these days.
I look forward to an exciting week at ASUG Annual Conference and SapphireNOW as there will be plenty of EPM sessions (more than any one person can actually attend by him/herself).

Akshay Vellanki
Partner & Director EPM Practice
Techincept Consulting Inc.
SAP BPC Training
http://www.techincept.com/
310-956-1113
AkshayVellanki@gmail.com
www.techincept.com/sapbpctraining.html

Wednesday, March 14, 2012

Understanding BPC Terminology in a NetWeaver




For all of you NetWeaver Consultants out there that focus on SEM-BPS, BI-IP or any other SAP Business Planning Solutions and are thinking of moving into the world of BPC, there is a whole new set of terminology out there which may or may not be familiar to you.

The objective of this blog is to help all of those folks out there like myself that have an SAP NetWeaver Pedigree and want a starting point to begin learning and understanding SAP's new Business Planning and Consolidations application (formerly OutlookSoft). Remember that Business Planning and Consolidations is based on the Microsoft Platform and the newest release BPC 5.1 is based on Microsoft SQL Server 2005.

TERMINOLOGY

Since SAP BW 1.2A we have been supporting something known as MDX, or MultiDimensional eXpressions. MDX is a querying language similar to SQL that is used to query MultiDimensional data objects or InfoCubes in our case. MDX a standard now that was developed by Microsoft has a different structure than what we are used to in NetWeaver BI, however this diagram below (from help.sap.com) was created awhile back to help us correlate Microsoft objects with SAP objects (see figure 1.1).



Figure 1.1 - Mapping Metadata with Microsoft

This diagram is a good starting point to understanding some of the same terms used and leveraged within SAP BPC and how they correlate to NetWeaver. I really liked this diagram and how it illustrates side by side the terminology of Microsoft and the terminology of SAP so I went ahead and built some new diagrams that attempt to do something similar.

Below are a series of diagrams which draw dotted lines between SAP BPC 5.1 objects and SAP BI objects. These correlations are my own and have helped me understand quickly SAP BPC and the environment in which it runs.



Figure 1.2 - Mapping the Tools and Services within the Platforms

From within SQL Server 2005's toolset, SQL Server Management Studio can be installed as a workstation component. This tool can be used to view existing Databases, their corresponding tables, views stored procedures etc. From within the ABAP Data Dictionary you can similarly view all of the tables, views and structures available within your NetWeaver installation. Along with being able to view relational objects via the SQL Server Management Studio if you connect to an instance of Analysis Services (Microsoft's OLAP Engine) you can browse your cubes and see their corresponding dimensions very much like you can from the Administrator or Data Warehousing Workbench (tx RSA1) within NetWeaver.

As of SQL Server 2005 a new tool has been incorporated into their suite called SQL Server Integration Services or SSIS. SSIS is the second generation of what was called DTS or Data Transformation Services. SSIS allows a user to build a data flow using logic to determine a pathway of data based on different levers which can be pulled during the transformation process. Essentially, SSIS is used to load data into SQL Server data objects; tables, cubes, and master data.

SSAS, or SQL Server Analysis Services is Microsoft's OLAP Engine (MOLAP based). IIS or Internet Information Services is Microsoft's Web Server. As of SAP BW 3.0 every single SAP BI instance comes with a web application server built in.
At a very high level this begins to draw some correlations for those that have always lived in the NetWeaver world.


Let's drill in a little bit to the "guts" of what we know as an InfoCube.




Figure 1.3 - OLAP Cube Structure

The diagram above is very self explanatory and is not too different from what we saw in Figure 1.1. The main points that I want to highlight here is that:

  1. A Property is a display attribute but SAP BPC has a feature by which you can flag a property as inApp which is the same thing as a Navigational Attribute.
  2. A Hierarchy in SAP BPC is not the same thing as a BI Hierarchy. A BPC Hierarchy is technically an Attribute within the master data table of a Characteristic InfoObject.
  3. Time InfoObjects are treated as Characteristic InfoObjects inside of SAP BPC.

The last diagram I wanted to go through details the underlying tables which make up an InfoCube.





Figure 1.4 - Tables that make up Cubes

Dimension Tables within NetWeaver correlate pretty much 1:1 with Dimensions added to a cube in SAP BPC. Be careful here because a lot of people use the word dimension very liberally and at times this can be a little bit confusing when you are trying to determine whether they are referring to a Characteristic InfoObject or a Dimension Table.

Within BPC there are three partitions which make up what we would think of as fact tables.

  1. Fact Table - This table corresponds to the F-Table in SAP NetWeaver
  2. Write Back Table – This table correlates functionally to an open request in a SAP NetWeaver InfoCube. When data is written from a planning application in SAP BPC this information is written directly to a separate table. Within NetWeaver this write back is performed by separating data in the F-table by a request ID and writing data directly to the most recent request in the cube that is open.
  3. Fact 2 Table - This table acts as kind of an E-Table. When performance starts to drag in SAP BPC you can "Optimize" your Application (this is an Analysis Services Cube and a heap of contextual metadata) which will move your data from the Write Back Table (this is a ROLAP partition) into the Fact 2 Table (a MOLAP partition). This is done specifically to improve performance

Akshay Vellanki
Partner & Director EPM Practice
Techincept Consulting Inc.
SAP BPC Training
http://www.techincept.com/
310-956-1113
AkshayVellanki@gmail.com
www.techincept.com/sapbpctraining.html

Tuesday, March 13, 2012

WHEN_REF_DATA?



At times in SAP Business Planning and Consolidation, when writing a *WHEN-*REC-*ENDWHEN structure in script logic, we may come across a scenario where we want to post value to an intersection/region where there is no data. This was not supported previously as calculations happen in transaction mode by default.
The above is not a limitation anymore in SAP BPC NW with the new script logic keyword -*WHEN_REF_DATA. This allows us to switch our calculation mode to either transaction data or master data.
Syntax
1)      To enable master data mode
*WHEN_REF_DATA = MASTER_DATA   
//*WHEN-*REC-*ENDWHEN CONSTRUCT

2)      To enable transaction data mode
*WHEN_REF_DATA = TRANS_DATA  
//*WHEN-*REC-*ENDWHEN CONSTRUCT

  • In transaction data mode, calculations will happen based on the transaction data in the source data region
  • In master data mode, calculations will happen based on the Cartesian product of the source data region no matter if the transaction data exists or not
  • The mode is set to transaction by default. So when we do not use this keyword in our logic, all the calculations in *WHEN construct will happen in transaction mode
  • When we use the *WHEN_REF_DATA statement, all the calculations in following *WHEN  constructs will happen in the mode specified until the next *WHEN_REF_DAT (if specified) 
Example
*XDIM_MEMBERSET TIME=2010.MAR
*WHEN ACCOUNT
*IS  ACC1
*REC(EXPRESSION=1000, ACCOUNT=ACC2)
*ENDWHEN
Here we have no *WHEN_REF_DATA and thus calculations will happen in the default mode i.e. transaction data mode. A value of 1000 will be written to ACC2 wherever there is a value for ACC1 in the period 2010.MAR.
Now, let us look at the same example in master data mode.
*XDIM_MEMBERSET TIME=2010.MAR
*WHEN_REF_DATA = MASTER_DATA  
*WHEN ACCOUNT
*IS  ACC1
*REC(EXPRESSION=1000, ACCOUNT=ACC2)
*ENDWHEN

Akshay Vellanki
Partner & Director EPM Practice
Techincept Consulting Inc.
SAP BPC Training
http://www.techincept.com/
310-956-1113
AkshayVellanki@gmail.com
www.techincept.com/sapbpctraining.html

Monday, March 12, 2012

BPC Allocation Logic – Analyze results in Cube


BPC Allocation Logic – Analyze results in Cube






The log for the script logic executed using the data manager package is maintained by the system, but does not provides complete details of allocation script execution. These logs are very useful in analyzing the data updated in the backend if the script has normal REC and MDX statements. But the log for allocation logic is not easy to trace which is bit difficult in analyzing the set of accounts updated after the logic execution.
This blog helps in sorting this problem easily and helps the coder to debug and analyze the behavior of allocation script logic easily.
Steps to be followed,
Before executing the script with allocation logic, Login to the BW system and enter to Data Warehousing workbench using the TCode RSA1.
Right click the BW cube corresponding to the BPC application and select manage.

Select the request tab and click the request status which is yellow and set it to green.

Now execute the data manager package from the front end and check the log which gives only the number of records generated and not the line item were the record has got generated.

Once the package is executed successfully go back to the SAP Logon and refresh the requests of the application.

The new request id with the status yellow gives you the set of all data updated after executing the logic.
The data can be checked in the back end by moving to contents tab and fetching the data for the new request.

 
Thus the analysis of BPC script for allocation logic has become easier and this helps in tracking the execution of the logic. The same logic can be used for debugging any kind of scripts from the back end.




Akshay Vellanki
Partner & Director EPM Practice
Techincept Consulting Inc.
SAP BPC Training
www.techincept.com
310-956-1113
AkshayVellanki@gmail.com
www.techincept.com/sapbpctraining.html