Access the OData service exposed by your CDS view via Smart Business Tile in S4HANA system
- Approach1: consume OData service via Generic APF runtime application
- Approach2: Configure the tile navigation via Semantic object + action
In my previous blog Build Chart and Table representation via Analytics Path Framework
I introduced the step how to render the data coming from CDS view in various chart types via Analytics Path Framework, which are actually a set of Fiori application. In this blog, I will demonstrate the steps how to configure the modeled application into a Smart business KPI tile in S4/HANA system, so that customer can conveniently use the analytics application by clicking tile in Fiori launchpad.
The CDS views created in previous blog are reused here.
Approach1: consume OData service via Generic APF runtime application
With this approach, it is not necessary for you to create your own Fiori application. Instead, your modeled configuration is launched by APF generic runtime application.
1. Create a new KPI definition:
maintain the four mandatory attributes below. For Semantic Object/Action for KPI itself, keep them empty.
Trouble shooting guide updated on 2016-05-26
This chapter is added for SCN question Issue with “Create KPI” (Fiori App) on CDS Views (S/4HANA 1511).
In case you didn’t see any value in field “Entity Set”, you can do trouble shooting by yourself.
In my case, when I first select F4 value help for “Entity Set”, I can see a series of CDS views listed, which are retrieved by the batch request observed in Chrome development tool.
Since my CDS view “Z_C_PRODUCT” does not appear there, so I type it manually and click search icon. A second batch request is sent:
I can see my typed CDS view name is included as filter operator in this request:
Now I select the value help for OData service. The response for this request contains OData service metadata url.
When you now select value help for the third field “Entity Set”, the metadata of this OData service is requested via the url fetched from the previous request. After a successful metadata request, you should see the entity set. If not, usually there is something wrong in the metadata retrieve. You should see detailed error message in Chrome development tool.
==Trouble shooting end ==
Then create a new evaluation based on this KPI:
Don’t forget to activate your evaluation. Once done, you should have the following artifacts: one KPI and one evaluation:
2. Select evaluation and click button “Configure Tile”:
Here you can create a new Smart Business tile:
For three mandatory attributes, you must specify the hard coded values as highlighted below:
Assign this tile to a given catalog. And for Application Parameter, choose parameter name as sap-apf-configuration-id and value as convention <application guid>.<configuration guid>.
How to get application guid and configuration guid? Just open your application in APF Configuration modeller:
3. Once tile creation is done, add the tile to catalog group via personalization:
Save the change, now you should see the Smart business tile in launchpad.
Enter the tile, you can now see rendered chart as expected:
Approach2: Configure the tile navigation via Semantic object + action
For this approach, you should have a working UI5 application deployed on BSP repository. In my example it could be found in frontend system’s BSP repository with name DEMO_SD_SVA_S1 via tcode SE80.
1. Open Fiori launchpad design, create a new target Mapping for a given catalog:
2. Specify Semantic Object + action as below.
For url, the format is /sap/bc/ui5_ui5/sap/<bsp name>
For Parameter, the name is sap-apf-configuration-id and the value is <application guid>.<configuration guid>.
3. Create a new evaluation and click button “Configure Tile”:
Here in navigation property maintenance area, select Drill down as Others and specify Semantic object and action as the same value you have entered in step 2. Save this tile configuration.
4. Now you should be able to search the tile created in step3 and add it to your launchpad via personalization.
Nice Post. I have been trying this for a while; however I am not able to fetch my Entity Set for the CDS View which I have created. I have asked the same in the below thread.
Issue with "Create KPI" (Fiori App) on CDS Views (S/4HANA 1511)
Can you please provide info on what could be the issue? Also, Please share any document on how you have created your CDS View.
I have updated this blog to answer your question. Please kindly check if it helps.
In my case, the metadata is not being called when I try to fetch the entity set. When I manually write the entity set, on selecting the value measure I get the popup failed to load metadata. In console, I observe the following message:
Error Fetching All Measures : TypeError: Cannot read property 'getAllMeasures' of undefined .
The problem stands unresolved
I am also facing the same issue. Custom CDS and respective Odata Service is getting fetched while creating KPI, but when I try to fetch corresponding EntitySet its shows "No Data".Then I manually write the entity set, on selecting the value measure I get the popup failed to load metadata, same as yours. Could you please suggest how to fetch entityset.
Can you please let me know how was the No Data issue resolved.
as mentioned by Jerry i have checked and i am able to see the metadata and the entity type.But in the KPI configuration i am not getting any value in entityset. Do we have to do perform any activity in SEGW for the service created based on the CDS view. I have seen standard KPI apps created from CDS views but they donot have any configuration in SEGW.
Can you please provide your insights.
Thanks for the Help.
I was able to progress in this using another server. However, On my APF Tile I am getting the error, Could not open App. Please refer to the below screenshots for the error, console log and tile configuration. Please let me know if you can share any insight on what could be the issue.
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
I have created a discussion for my query.
Unfortunately when I try to fetch Odata Servie the metadata uri has no extention "/EntitySets" because of which I think it is not fetching entity sets. Could you please advice how to rectify.
Hi Yogendra - please don't put issues as comments to blogs. Instead raise a discussion. That way you get the attention and potential assistance of everyone in the Fiori space rather than relying on the blog author to notice your post.
I think Yogendra posted his problem here: https://archive.sap.com/discussions/thread/3948850
Any suggestions? (We are having the same issue.)
Unfortunately can't edit archived threads to respond. Try transaction SACM - sometimes it's just the DCL grant authorizations for CDS views need to be generated. Otherwise you need to get into ABAP in Eclipse and use the data preview to check the underlying view and it's dependencies.
If you have further questions please ask them as a question and not on the blog.
Again if you ask them here you are relying on only the author seeing them... that's not going to get you a quick answer.