SAC and SAP PaPM Cloud Integration in a Nutshell
Do you want to know How to utilize the Calculation prowess of SAP Profitability and Performance Management Cloud (SAP PaPM Cloud) and use the processed data for SAP Analytics Cloud (SAC) reporting, and analysis and have no idea yet where to start or how it can be achieved? Well, this blogpost is for you!
As context, SAC recently released a MultiAction step to support API calling which meant that we now have the possibility to make use of SAP PaPM Cloud’s configured process without the need to trigger the execution of process manually in Process Management but directly to your SAC Story. Isn’t it good news?
In this blogpost, I will give you a digestible End to End (E2E) scenario which can be used as your baseline in order to achieve SAC and SAP PaPM Cloud integration in a nutshell.
The goal of this example is to produce a simple comparison simulation story in SAC, like the one above, which can be leveraged for presentation purposes. In this example, it will consist of three components:
1) INPUT : Data from SAC Planning Model is available for comparison
2) TRIGGER : Multi Action with SAP PaPM Cloud’s API in order to execute the Process Execution remotely.
3) RESULT : Output Data from SAC Planning Model wherein data comes from a Query Function in SAP PAPM Cloud.
This report looks neat, isnt it? With just a click of the trigger button everything will be executed simultaneously. Now the question is “What is the process to be able to configure such a report?”.
If you are into some technical stuff, then the diagram above might be easy to digest for you but for the sake of all our diverse readers let me explain it a bit. There are two types of arrows in the above technical diagram:
- Solid arrow (Calling) means that the arrow-tail calls the service from the arrowhead (e.g. SAC calls SAP PaPM Cloud API Service to trigger the Process Activity).
- Broken arrow (Data Flow) means that the arrow-tail is the source of data which flows to the arrowhead. (e.g. SAC provides input data to SAP PaPM for data processing)
For visual learners like myself, I prepared a visual ption which catches the same meaning as the technical diagram above. This diagram tells a story on how the two solutions are interconnected.
Considering both the technical and visual diagram presented above, I will explain the process on how the APIStep MultiAction of SAC can be used and setup in an orderly manner.
Once user clicks this button the underlying list of activities will start sequentially.
Step 1 – SAC Planning Model with data is available for consumption in SAP PaPM Cloud
To start of, existing SAC Planning Model where relevant data for calculation in SAP PaPM Cloud should be available. This model can be reused from previous SAC Planning models or by creating a new one. To create a new SAC Planning Model, you may refer to help document guide as starting point: How to Create Planning Models from Blank Models
Step 2 – Model View OData (MV OData) function will run which will read data from SAC Planning Model
The configuration of MV OData in Modeling entails ONE TIME configuration of SAC Data Export Service in SAC side. All other configuration details are included in the separate blogpost How to setup Model View OData.
Step 3 – SAC triggers SAP PaPM API service..
The API Step Multi Action is configured here containing the step which requires a ONE TIME setup of HTTP API connection pointing to your subaccount where authentication to run SAP PaPM API is configured. See Blogpost Integrate remote application via API step of Multi Actions for detailed steps.
Step 4 SAP PaPM Execution Process starts..
Once the API Step Multi Action is executed, SAP PaPM Cloud execution activity will be triggered in the background. Data processing is being done here which in turn will contain the input data for the Query Function.
Step 5 – SAP PaPM Cloud’s Query is supplied with Processed Data
After execution of previous steps, the Query Function will be populated with the processed/enhanced data. This Query function will serve as the input of the SAC query in the next step.
Step 6 – SAP PaPM Cloud’s processed data is ready to be consumed back in SAC.
Within a subaccount where SAP PaPM is subscribed, a ONE TIME creation of service instance then service keys in the specific space is needed where the Modeling Environment is available. This will be used for the creation of OData connection in order to create an SAC Query based on SAP PaPM Cloud Query. The detailed steps for the following are available in the blogpost entitled, How SAP Analytics Cloud (SAC) pulls data from SAP Profitability and Performance Management Cloud (SAP PaPM Cloud)
Finally, this separate Planning Model in SAC will use the SAC Query as DataSource which will serve as input for SAC Data Import Step. The data will serve as the final output of the whole process.
With all these information given, you will have all the ingredients in order to create an SAC story with different visualization.
Easiest way for me to show you how the integration happens is through a comparison table where first table contains original data and second table contains processed data after triggering the MultiAction API Step.
It can be the case that you prefer to add, remove or even optimize a step over what I shared and that’s okay. I would love to learn too therefore, feel free to post a version you created as comment here.
In the end, I hope the information I shared piqued your interest and will help you on your future integration demos or projects relevant to SAC and SAP PaPM Cloud. See you again!
Thank for the nice blog. And I'd like to ask a question.
Is it possible to apply the scenario for PaPM on-premise since most customer is on it? Or for PaPM cloud only? If it possible, some hints would be so helpful.
As of this writing, scenario is applicable for SAP PaPM Cloud only.
very nice blog post, thanks!
I have just noticed that the last step of your story involved importing data from SAP PaPM to SAC. Would it work if instead we configure SAC to read data live from a HANA table where SAP PaPM writes result data?
Thanks in advance.
I had the same question and I created both scenarios and both works well. (I haven't tried performance yet)
So what I realize here is when you import data to the SAC model, you have all the benefits to have the data physically in SAC (hierarchies, attributes, KPIs, and so on...) and that would help to build reports in a better shape.
In live connection perhaps you don't have that information in PaPM, as it is more of a tabular tool, and sometimes you don't create many hierarchies or attributes that you don't need.
Of course, all the above is relative to the data volumen and how you build your models in both solutions (for example, it wouldn't make sense to do a data import of millions of rows from PaPM to SAC), but maybe can be helpful.
Thanks a lot Edwin!
Hi Paul, great article.
When it comes to allocations, what are some of the pros and cons of doing allocations in PaPM versus building the allocations in SAC natively?