Skip to Content
Author's profile photo Murali Shanmugham

Analyse KPI Details – Generic Drill-Down App

You have a HANA View ready and you need an App to display the contents of the HANA View on Fiori Launchpad – There is an App for that.

The Generic Drill-Down App is part of the KPI Modeler. Using this App, you could create a report which consists of one or more views of a KPI. This can be launched when the user clicks on a tile or from within another report. It reads the attributes from the KPI Evaluation and UI/Filters from the visualization which are defined in the configuration. There can be up to seven different chart/table views associated to one configuration. Each of these views can have different filters, dimensions, visualizations to analyse the data from different perspective.

In this document, I will explain how I used it to expose one of the HANA Views for reporting purposes.

1) Create your HANA View and enable its consumption using XSOData

2) Follow the steps in previous article to create a KPI/Evaluation. You could refer to the HANA View/XSOData service in the evaluation.

3) Click on “Configure Drill Down” tile to launch the configuration for the generic drill down App for a selected KPI/evaluation.

This App is very user friendly and you can work your way out as how you would like to display your report.

/wp-content/uploads/2015/08/11_761214.jpg


When you add a view, you would need to provide details like the dimension/measures which are to be used for this view along with the visualization details as shown  below


/wp-content/uploads/2015/08/12_761215.jpg

4)     Navigating to the Generic Drill-Down App


Click on the “Configure KPI Tiles” app and attach a tile to the active evaluation as shown below. Notice that the Action “analyzeSBKPIDetails” is provided to launch the Generic drill down App. I have provided a Semantic Object “IATestSuit” which is used for further Navigation (explained below)


Below is the target Mapping for “IATestSuit”. The Fiori App “MyHLReport” is the standard Analytical App for “Customer Reports” used in CRM.



/wp-content/uploads/2015/08/13_761222.jpg

Configure the tile as follows


/wp-content/uploads/2015/08/14_761223.jpg

Add the tile to the Launchpad from the Catalog “SAP:KPI”. Once you add this tile to the Launchpad, it would show up as below. Based on the evaluation which is attached to the KPI Tile, there would be a XSOData call triggered to HANA to read the numeric count.

/wp-content/uploads/2015/08/15_761224.jpg


When the user clicks on tile, the Generic Drill-down app will be launched. Users can choose filters from those which have been enabled during design time and toggle between chart/table formats.



/wp-content/uploads/2015/08/16_761228.jpg

What’s interesting is the navigation aspects. Below is the extract from SAP Help


The SAP Smart Business framework allows navigation from the generic drill-down application to other applications. The semantic object must be configured so that the navigation links are displayed in the drill-down application. The navigation links can appear in either of the following locations:

  1. 1. In the Open In menu of the SAP Fiori Launchpad, all application parameter URLs configured for a given semantic object (that do not have mandatory parameters configured) are shown, except the action that is used to call-up the current drill-down application page.
  2. 2. In the popup that appears when you select a data point on a chart or a record on a table, all navigation links that require the selected dimensions (or a subset of them) as mandatory parameters are chosen and only these links are shown. The generic links that do not require mandatory parameters or those that require additional mandatory parameters in addition to the selected dimensions are not shown.

When the user click on “Open In” button, they would get a popup with list of applications which they can navigate to (without parameters). Since, I have used the semantic object “IATestSuit”, the App looks up all applications configured with the Semantic object “IATestSuit” using the below OData call.


/sap/opu/odata/UI2/INTEROP/GetLinksForSemanticObject?semanticObject=’IATestSuit’

In my case, I have configured this semantic object to open a CRM Customer Report Analytic App. The input for this App is the evaluation ID which the Generic drill-down app will always pass.

Below is a screen capture of the “Customer Report” CRM App which lists out all Open opportunities.The user is taken to the below screen after they click on the link provided in “Open In”.


/wp-content/uploads/2015/08/17_761229.jpg

The second navigational aspect is around when the user clicks on data points within the chart/table. The user is provided with a small popover.


/wp-content/uploads/2015/08/18_761230.jpg


Again the same INTEROP OData service is called and this time the App queries with all the dimension names as the value for Sematic Object. Since the dimension on my view is Opportunity, the App queries for all Semantic objects (with the name Opportunity) which have a fiori app tied to it and lists them in the popover.In the above screen capture, you can see there are 3 standard Apps related to Opportunities and “Categorization Report” is another view which I have created for this Drill down configuration.


When the user clicks on the “My Opportunities” link, it launches the standard “My Opportunity” App passing the dimension as parameters. However, the Standard “My Opportunities” app doesn’t recognize these input parameters and open a Master/Detail list by default listing out all opportunities which belong to the user.


/wp-content/uploads/2015/08/19_761234.jpg



HINT: To manipulate the option provided for navigation, you could redefine the corresponding method in the ODATA service to alter the output of the function import – GetLinksForSemanticObject.


Hence, with a more elaborate deign we could use this concept to accordingly navigate to corresponding apps (passing parameters) which provide more contextual information.


Assigned Tags

      6 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Rajesh Ragupathy
      Rajesh Ragupathy

      iinformative blog on KPI Drilldown

      Author's profile photo Former Member
      Former Member

      Excellent blog Murali,

      Could you tell me how did you define the semantic object, Like I have a standard object customer, but I want to copy it and restrict it to a few dimensions only.

      Regards

      Rishab

      Author's profile photo Murali Shanmugham
      Murali Shanmugham
      Blog Post Author

      Thanks Customers can register their Semantic objects using Transaction /UI2/SEMOBJ

      Author's profile photo Murali Shanmugham
      Murali Shanmugham
      Blog Post Author

      Hi Abhishek, These apps dont support any extensions. You could modify the views, but thats not recommended.

      Author's profile photo Michael Appleby
      Michael Appleby

      Abhishek,

      Unless you are asking for clarification/correction of some part of the Document, please create a new Discussion marked as a Question.  The Comments section of a Blog (or Document) is not the right vehicle for asking questions as the results are not easily searchable.  Once your issue is solved, a Discussion with the solution (and marked with Correct Answer) makes the results visible to others experiencing a similar problem.  If a blog or document is related, put in a link.  Read the Getting Started documents (link at the top right) including the Rules of Engagement. 

      NOTE: Getting the link is easy enough for both the author and Blog.  Simply MouseOver the item, Right Click, and select Copy Shortcut.  Paste it into your Discussion.  You can also click on the url after pasting.  Click on the A to expand the options and select T (on the right) to Auto-Title the url.

      Thanks, Mike (Moderator)

      SAP Technology RIG

      PS, Murali already said it was not recommended to modify the views, so why do you persist in asking him to support a bad practice?

      Author's profile photo Artem Petrov
      Artem Petrov

      Hey everyone! what semantic object should i chose to use standart drill-down view? There is an error   "Could not open app. Please try again later." i am using  analyzeSBKPIDetails action, but i have no idea what semantic object should i use

      Regards, Artem