HANA Fiori Analytics || Technical insight into multidimensional reports (Part 1)
We were curious about how we could setup a multidimensional custom report, so I figured this out and thought I would share this information with the o-so-giving SCN Community, you guys.
Please note that the explenation and insights below are based on an S/4 HANA NetWeaver 7.50 SP 03 system.
Multidimensional reports are used to do data discovery of analytical CDS views and there is one out of the box example called ‘Incoming sales orders’ that is used througout this post to explain the concept.
In a later phase I will post a second blog, containing a front to back excercise of how you can define one yourself.
The report is displayed in a Fiori tile, in the S/4 HANA launchpad like below.
When we open the Fiori tile, the multidimensional reports for incomming sales orders looks like below.
If we check the definition of the Fiori tile via the standard Fiori Launchpad configuration url, we see that it points to a webdynpro.
Here we see the details of the tile configuration, and the fact that the Fiori app is actually a link to a webdynpro application.
Since one WebDynpro component can have multiple WebDynpro applications, we need to figure out to which component this application belongs, which you can find in the DB table below using SE16N in the SAP backend system via SAP GUI.
Some of you might have already figured out by now that we will find a generic Floorplan Manager Webdynpro component, which is indeed the case.
[The WebDynpro Floorplan Manager is a highly configurable user interface (UI) framework for easy and efficient application development and adaptation based on Web Dynpro ABAP.
With the help of predefined elements such as floorplans, toolbars and generic user interface building blocks, FPM provides you with consistency across applications and compliance with SAP UI design guidelines, as well as greatly reducing the time required to create such applications.
Central functions such as navigation, messaging, and personalization are embedded in the framework and can be easily defined by application programming interfaces (APIs).
FPM allows you to easily adapt delivered Web Dynpro ABAP UIs to your specific needs modification-free by simple UI configuration, and to combine application-specific views of one or more business applications into new Floorplan Manager applications.]
In this case we found the configuration to be based on the SAP OVP (Overview Page).
[SAP Fiori Overview Page (OVP) provides a new interaction within SAP Fiori UX. The OVP can be seen as a step between the basic information on the SAP Fiori launchpad and the full blown information within the SAP Fiori applications.]
Knowing this we can now find the component configuration like mentioned in the Fiori tile definition and display it, to find out more.
Here is where you will see the Fiori application start taking shape.
The total configuration is made up out of configurations of smaller, generic FPM WebDynpro components, that are placed together in one page.
The most important part is the SEARCH_SECTION, where we will define our data source.
If you double click one of the components you’ll get a detailed table like below, with a clear overview of the FPM Webdynpro component and it’s configuration.
Let’s have a look at the search component via transaction SE80, like you did for the global FPM component.
(Next I mention to open the configuration of a FPM WebDynpro component i’ll assume you remember how to do this based on the image above.)
If we take a closer look at the configuration, we will see that there is a feeder class linked together with a parameter, which defines the ABAP BICS query name.
The screenshot below is from a debugging session of the feeder class “CL_FPM_BICS_SEARCH_FEEDER” in method “GET_DATA_4_BASIC_SEARCH”.
This is also where you can debug the execution of the query.
Detailed information about the ABAP BICS query can be found in transaction RSRT via SAP GUI, in the S/4 HANA backend system.
Here you can find the DDL source name.
In the next blog post a piece will be included on how you can create an ABAP BICS from an ABAP CDS view (DDL Source) yourself.
You’ll find the definitions of this DDL source by connecting to the system via Eclipse and opening an ABAP project, after which you can use th ‘ctrl+shift+a’ key combination to look for objects in an ABAP project. Make sure you are in the ABAP perspective before you do so.
You have now found the DDL Source Definition that is linked with the ABAP CDS view.
Pay good attention to the header semantics as these are very important in order to define your view as an ABAP BICS & analytical view.
More on this in the next part.
Now if we go back to the other FPM configurations that are used to make up the multidimensional report we will see that they are configured in the same way as the search component. A feeder class, combined with some extra parameters.
The buttonrow in the tab page ‘Data Analysis’: FPM_BICS_GRID_RUIBB || SD_FPM_GRID_INCOMINGSLSORDERS
This one is also defined in the same fashion.
The data itself will be shown in the format of the view V_INFORMATION, included in the window BICS_GRID_INFO of the component FPM_BICS_GRID_RUIBB.
I hope this was a good, clear start.
If you are looking forward to learning more about this topic, monitor this post as an update with the link to part two will be included later.