Consuming SAP S/4HANA OData Service in SAP BusinessObjects Lumira 2.0 Discovery
Summary: SAP BusinessObjects Lumira 2.0 has been released recently. This blog shows how OData services from SAP S/4HANA CDS Views can be consumed by the Lumira 2.0 Discovery.
Software used:
1. SAP S/4HANA 1610 FP02 on-premise Edition.
2. SAP BusinessObjects Lumira 2.0 Discovery (SP02).
3. SAP HANA Studio 2.3.8
1. The OData Service
As you may know, S/4HANA CDS views can be exposed as OData services with the notation @Data.publish:true. OData services are generated automatically once the CDS views with this notation are activated.
Currently, Lumira 2.0 Discovery does not support parameters/prompts for OData services out-of-the-box. While calling OData services, parameters’ values cannot be set. This is a limitation at the moment.
Our demo CDS view is “ZXHDC_SDSLSANALYTICSQ_CDS”. It is a copy of the CDS view “ZC_SALESANALYTICSQRY_CDS” delivered with S/4HANA. The only difference is that its second parameter “P_DisplayCurrency” is set with a default value “USD” by the notation @Consumption.defaultValue in the definition. This is to bypass the above limitation.
Here is a part of the CDS view “ZXHDC_SDSLSANALYTICSQ_CDS” definition in the HANA Studio as it’s too long to show the entire definition here.
Let’s run the CDS view with the Exchange Rate Type “M”, Display Currency “USD” and a filter value of Material as “TG10”.
As a result, there is one entry returned from the S/4HANA system. The same set of the input data values will be used to test the OData service later.
Now, let’s look at the OData service of this CDS view in the HANA Studio. Mouse over the decorator next to the notation @OData.publish:true and click on the link “OData-Service” in the popup info screen.
Provide the login information in the authentication screen.
Here is the information of the OData service from the CDS view.
To query the OData service for Sales KPIs with the Exchange Rate Type “M”, Display Currency “USD” and Material “TG10”:
Obviously, the result is the same as the CDS view.
The OData service of the S/4HANA CDS views can be also viewed in SAPGUI. To look at the CDS view “ZXHDC_SDSLSANALYTICSQ_CDS” in the Service Catalog, click on the “Call Browser” button.
Provide the login information in the authentication screen.
Information of the OData service from the CDS view is displayed.
Of course, the OData service can be inspected with a Fiori tile as well.
Since we have verified the OData service, it’s time to consume this OData service in the Lumira 2.0 Discovery.
2. In Lumira 2.0 Discovery
Open the Lumira 2.0 Discovery. Click on the link “Query with SQL”.
Select the “Generic OData 2.0 – OData Connector” and click Next.
Fill in with the OData service root URI, login information and click Connect.
The Service Root URI of the OData service here is:
http://<serverName>:<portNumber>/sap/opu/odata/sap/ZXHDC_SDSLSANALYTICSQ_CDS/
Select the query and click on the “Preview” button to preview the data.
Click on the “Visualize” button to continue. Now, the data set from the OData service is imported into the Lumira 2.0 Discovery.
You can continue to create visualizations as desired.
That’s it 🙂
Hi,
Thanks for the post, which is really helpful. We are trying to consume CDS views with Lumira in our S/4HANA system and we are following this guide.
We get stuck in specifying the Service Root URI of the ODATA service. As per your post:
http://<serverName>:<portNumber>/sap/opu/odata/sap/ZXHDC_SDSLSANALYTICSQ_CDS/
Can you please indicate if serverName refers to S/4HANA server/Fiori server or any other? Also, we have doubts on the port as well. How to find this information?
Appreciate the help!