in my training sessions for Design Studio I often get the question if it is possible to make the “drill” navigation style like known in web Intelligence available in Design Studio.
If you do not know what I mean with the drill navigation here is a short description:
Lets say you have a pre defined navigation path like Country, Region, Customer and a crossable showing the Country.
The user wants to click on the Country he is interested in and automatically this table navigates down to the Regions of the selected Country.
Clicking on one of the Region it shows the Customers. It is like what BEx clients know as “Filter and drilldown” functionality in the context menu of tables.
To navigate back the path upwards you can think of having a back button or something like that. And to visualize the actual navigation status you will have a bread crump text information.
In the end this szenario might look like this:
If you like use these reproduction steps to adopt it to your applications.
1. Create your Datasource (DS_1) showing Country in the Rows
2. Add a Crossable showing DS_1 and a Text component with Text “You are here: Country”
3. Add a button with the label “Back to start”
4. Create a Global Script Variable called “level” and define the default value as “country”
5. In the properties of your Crossable enable the selection option
6. Now define the onSelect code. The logic is…
- depending on the actual level the filter for DS_1 has to be set,
- the level variable has to be set
- the actual dimension has to be removed from Axis,
- the next dimension as to be placed on the Axis,
- the Breadcrump Text has to be changed.
Find the detail code for the Crossable and the Button in the attached code.txt file
Of course there are adoptions to more levels possible or e.g. that you jump back to the start or the region when you select a customer, and so on…
General Remark: This scenario only make sense if you have a real predefined way to drill through your data. This is not suitable if you want to enable “free-style” navigation for your user.