Hi colleagues,
As explained in a previous blog, we have worked with students on the implementation of a solution for HR organization using BW and Design Studio 1.1 and 1.2.
You can find below the general workflow with a main page with different tiles and each tile allows a navigation on a detailed page with mainly one graph and one table.
In the current version of Design Studio (1.0 and 1.1), one component has to be implemented on top of one data source and one data source cannot be consumned by multiple components.
To deliver the first version of our solution, we created more than 20 Data sources and the initial refresh time was around 45 seconds.
2 data sources for the graphics in the tiles
18 data sources for the dtailed pages (one per component - graph or tables)
The purpose of this article is to explain how we reduce the number of the data sources from 20 to 8 by leveraging 2 data sources for mainly all the detailed pages.
You can see below that in the initial implementation we had one data source per element and in the optimized solution we leverage the same data source for multiple elements. How is it possible to acheave this?
Everytime the end-user select a tile to access the detailed view, Design studio calls a javascript function with a parameter to make adjustements on the data source.The first step is to remove the previous filters applied on and to remove the potential dimensions available. In the second step we design the data source as expected for the new view. It is quite complex to manage this with javascript and with the data model expectially the filters on the Kpis, but it is much more faster than loading a new data source.
With Design Studio 1.2, we have leveraging a new feature named background processing to allow the solution to free idle reources between the multiple actions (refresh, visibility management, …). With this feature we are able to reduce the end-user waiting perception and the display of components when data is available. This give the priority for the user interaction.
The background processing is accessible via the properties section of the design studio project and is a javascript function. This javascript can be called multiple times and allows an idle time before beeing executed.
It has to be combined with global variables to be well used. Instead of refreshing multiple data sources in one call and have an update of the display at the end of the function, we can split the refresh in multiple loops and have an update of the display after each loop. For a user perception, the waiting time is reduced with intermediate updates.
I hope this short blog gives you some tips and tricks to be implemented in your dashboards. Don't hesitate to contact me if you have questions.
Regards,
Thomas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
27 | |
25 | |
19 | |
14 | |
14 | |
11 | |
10 | |
9 | |
7 | |
7 |