You might have faced the need to merge/blend multiple HANA/BW data sources to build applications, but this is not explicitly achievable in stand-alone SAP Lumira Designer. Interoperability between Lumira Discovery, Lumira Designer (Composites) and Rich data source combination features in Lumira Discovery allow us to use merged/blended datasets from multiple sources in SAP Lumira Designer.
Although this has been available since SAP Lumira 2.0, the only catch was that any update to the data source will not get reflected in the SAP Lumira Designer application unless a manual refresh of the SAP Lumira Discovery storyboard or scheduling was done.
With the introduction of SAP Lumira Designer 2.2, SAP addresses this issue by adding a new component to their list – the “Documents” technical component. This new technical component allows application designers to refresh their Discovery-acquired data sources from SAP BW or SAP HANA using APIs or methods of the technical component. There are other use cases for the Documents technical component, which we will be looking at in other subsequent blogs, but this one focuses on the data refresh use case only.
Refreshing offline Data Sources
For this blog, we are going to create a very simple application with a simple enough data source that is acquired from an SAP HANA view. At a later point, we’ll add more data or update the HANA View data and then refresh the offline data source using SAP Lumira Designer to see if the changes are reflected.
As seen below, we are first creating a new SAP Lumira Discovery story with data acquired from a HANA Calculation View. Since we’re keeping things simple here, our story only has a couple of dimensions and one key figure. By principle, the same technique should work regardless of the volume or complexity of the data source used.
Again, we’re more interested in using the acquired data within SAP Lumira Designer and as a result, we’re not too bothered about creating multiple visualizations or even a complete storyboard using SAP Lumira Discovery. However, in the image below, you should be able to see that we’re going ahead and saving the SAP Lumira Discovery story that we’ve just created. We are saving the document locally here, but the same will work even on the BI platform.
One more important aspect to note here is that the SAP Lumira Discovery story is saved with all the data, i.e. the Save without data checkbox is NOT checked.
Now, when we head back into SAP Lumira Designer, to see the newly saved SAP Lumira Discovery story, we might have to refresh the documents. This can be done using by right-clicking on the Local Documents folder (or BI Platform Documents folder if you’ve saved your Discovery story on the platform) and selecting the menu option Refresh.
Once the Lumira Document is seen in the folder, we’re opening the document and creating a new application within the same document by right-clicking on the document and selecting the option Create Application. We’re going with a blank application for our purpose. The moment we do this, we’re adding the Documents technical component to the application.
As part of the next step, we’ll add the offline data source we acquired using SAP Lumira Discovery to the application. This can be done by right-clicking on the Data Sources folder within the Outline View of the application and selecting the menu option- Add Offline Data Source…. The data source that we used in the SAP Lumira Discovery story will be displayed and this is selected as the data source for the application as well.
Note: The feature of adding an offline data source will show up only when the Lumira discovery story has an imported data source. If the story is created on Live data, the option will not be displayed.
Again, since the agenda is to keep the application simple, we are merely using a Crosstab to consume the added data source and a button component to refresh the data source using the Documents Technical Component.
Now, within the On Click event of the button component, we are adding the required API that will allow end users to refresh the offline data source from the SAP Lumira Designer application itself. The script for this is pretty simple:
Finally, triggering a dataset refresh will only refresh the data source. It’s also imperative to refresh in order to actually reload the Data Source component to reflect the refreshed data. This can be done using the API shown in the screenshot below:
The best place to do this would be the event that is triggered AFTER the dataset has been refreshed, which is the On Dataset Refresh Complete event for the DOCUMENT technical component.
When the application is executed, it will show the data using which the story was created. Now, in our case, we are manually updating the data on the HANA view to check if the dataset refresh works in the SAP Lumira Designer application. Clicking on the refresh component will start the data refresh and latest data will be loaded to the table component. We’ve displayed the “Before” and “After screenshots for your reference below:
If the requirement is to see the latest data whenever the application is executed, the same script can be written on start up.
As mentioned earlier, the Documents technical component can be used for another use case when combined with the Authoring technical component. But in this blog, we have covered the biggest use case it has – refreshing datasets acquired in SAP Lumira Discovery. This new feature should address the concerns that a lot of customers have had with interoperability as a feature.
Stay tuned to our space for more updates!