Analysis Path Framework – Basic Concepts und Tutorials
In the first part of this blog series I introduced the Analysis Path Framework. Let me summarize strengths and the use cases:
- It is a SAPUI5 library for interactive data exploration.
- It is easy to use: for a given data model you can configure analysis steps in a modeler
- It is integrated into Fiori Launchpad to define KPI tiles
- The Fiori interation allows Insight to Action scenarios where the status of an APF application is transferred to a Fiori app. APF bridges the gap between analytics and operations.
- A typical application are SAP’s Smart Business cockpits that give the user insight in operational data (think of days sales outstanding calculations, workitems, open insurance claims for example) and navigate into transactional Fiori apps to work on these data.
- SAP defined a data model called VDM to perform analytics on top of SAP Business Suite. You don’t need other analytical tools.
- APF is not restricted to operational data and can also be used on top of BW on HANA.
- APF applications are only configuration. If the SAP data model is defined you can run APF configurations on the fly.
APF part SAP Fiori Guidelines so Fiori developers should learn about it:
But APF is not only an SAPUI5 framework – it needs additional components. I described the installation process which is somewhat complicated. But when installation succeeded working with APF is quite easy.
Now I want to explain the most important technical components and the basic concepts: prerequisites, the workflow to create an analytical app. The goal is to explain the most important things to know, how they relate and where you can find more information about them. After reading this blog it should be easy for you:
- the most important concepts of APF
- use APF applications for exploratory data analysis
- understand the technical components of APF
- how APF is related to Smart Business (as APF runtime)
I hope that after reading this blog entry it should be easy to you to start with APF by reading the various documents that are available as links from the central APF document. Here you find links to SAP Library, Youtube and SCN. I will also like to the most important documents and videos provided by SAP here.
Technical Prerequisites for APF
Above mentioned installation process is very technical so I want to summarize it:
- APF is a Fiori library so you will need a running Fiori Launchpad running on an AS ABAP. On these Launchpad is the development environment – the so called APF Configuration Modeler. Since in most cases you will start APF from a Smart Business KPI tile you will also need the KPI modeler to define those tiles. Both are delivered using the ABAP software component UISAFND1 containing APF and Smart Business.
- You also need HANA (otherwise aggregations will take too long) and additional HANA content described in above blog entry.
- Authorizations / roles in HANA and on the ABAP system with Fiori Launchpad.
Then you need a data source that should be explored: data being exposed like aggregating XSOData from aggregating Calculation Views or OData from BW Easy Query (see https://scn.sap.com/docs/DOC-67266). The XSOData sources somes with SAP Business Suite on HANA: SAP defined VDM – a virtual data model and delivered it to customers. You can use it to define own XSOData services or use the XSOData services shipped with so called Smart Business Apps. And last but not least you can create your own Calculations Views and expose them using XS Engine.
So APF can be used for every data model. With SAP Business Suite on HANA you can use VDM as data source but you can also use it in LT-sidecar scenarions.
Central Concepts – explained by running an example Application
APF defines a design time object – a so called configuration. A configuration is consists of
- facets – global filters in your APS app
- categories and
- steps
This configuration can be executed using a runtime. Before we will show how this works we show how a running APF configuration looks like. Therefore I use the Demo App so that you can test it by yourself: https://sapui5.netweaver.ondemand.com/test-resources/sap/apf/demokit/app/index.html#
When you add an analysis step (button on the left) then a list of categories will occur like on the following picture.
When you click on a category like customer you see the possible steps:
When you choose Revenue by Customer and choose a diagram type the APF app will show you the following diagram like “Revenue by Customer”:
Now the semantic of a category is clear: a category represents a characteristic in BI terms – a descriptive attribute of an object. The category “customer” is be a business partner with a certain role, identified by an ID (and we need an additional text – the customer name). The revenue is the key figure, an operational attribute, which indicates a numerical measure calculated using an operation like sum, count, average, minimum, maximum.
Now you can choose a second step like “Revenue by Country of Customer”:
When you play around you see that you can select the characteristic in the first step – say a a single customer like Monsanta Argentina. When you select this customer (like it is seen on the left in the following diagram), this defines a filter which is also valid for the revenues by country of customer.
Of course APF lets you filtering different customers and I suggest that you try it out.
Workflow
Then you define a so called APF configuration using the APF modeler. This is described in detail in the SAP Library the subsections of the following sections: https://help.sap.com/saphelp_uiaddon10/helpdata/en/3a/a60841f1d542088ae85fda131ff094/content.htm
Please let me sum it up – so you don’t have to read it now (but probably later):
- Facets are displayed at the top of APF runtime and are global filters.
- You define different categories and their analysis steps. A step is defined by a view with characteristic (category – f.e. customer) and a set of attributes which is necessary because of the interaction of different steps (filters work from top to down).
- Within a step, the selectable property is the key figure (f.e. revenue).
- The filter mapping is necessary when two attributes different steps have different names. This occurs often due to the naming of rows in transparent tables in SAP Business Suite.
The process is explained in detail in the following video:
An introduction into the APF Modeler UI is provided here:
A second video explained how to configure the graphical representation.
A last video show how to define filters:
APF Runtime
There are two possibilities to run a configuration. This first and simple one is to start a configuration using a KPI tile. It is well described in the following video by SAP.
Another possibility is to extend the APF component. A typical application is above mentioned demo app where the footer of the Fiori app is extended with some buttons like “Reporting Currency”. When you press the button you can filter values can be set. If you want to see how it works I recommend to analyze the demo app. Therefore you should analyze the JavaScript files visible in the picture that shows the application seen in Chrome developer tools.
The APF JavaScript API is described in the SAPUI5 documentation:
Summary
Using APF is quite easy after you managed the installation process. If you understand the basic constants then you can use SAP Library and above mentioned Youtube videos from SAP you can easily create your first APF based app.
In the next part of this blog series I will discuss the following topics:
- Best practices for APF models like texts of categories, filters with ranges…
- Transport of conmfiguration using BSP containers
- Insight to Action scenarios using Navigation Targets
New NetWeaver Information at SAP.com
Very Helpfull