Drilldown and Chaining

Visualization Interaction

For visualizations to interact with each other they need to have a defined relationship.
Visualizations can interact with each other through filter changes on the visualizations.

Filtering options available are Column Filters and Parameters:

Column Filters

Column Filters are Ad-hoc based filtering or loosely coupled filters on the visualisations. Column filters can be applied to any column in you dataset. Which operators that are available to your filtering criteria depends on the datatype of that column.
These filters can also be applied to:

  • DataCentral datatable columns
    These filters are also inherited by visualizations in dashboards
     
  • Visualization columns in editor
    Permanent filters set when users render the dashboard runtime
     
  • Visualization columns runtime
    Ordinary users can filter visualizations by adding column filters to any column
    These filters are not saved to the next session or dashboard reload
     
  • Visualization drilldowns or chaining can apply column filters
    These filters are not permanent either and can be overwritten on subsequent drilldowns or chainings

Parameters

Parameters are more rigidly defined at the DC datatable column level. All parameters defined at the datatable level are inherited by visualizations that use this very datatable.
Unless the designer deactivates this parameter at the visualization level, the parameter will be available for end users to filter their visualizations.

Parameters differ from column filters mainly in two ways: They are mor rigid and they also do not support freetext search values as filter criterias.
Parameters contains a predefined list of options available for the end user to select.
This list of options can be available in a searchable list, hierarchyal treeview or as a datepicker if the parameter is periodical.

 

When we do interactions between visualizations we can utilize both these features to create one of two different types of relationship between elements:

Chaining / Inheritance

Chaining can best describes as a parent-child relationship between visualizations. Whenever filter-changes are applied to a parent element, all children of this element absorbs the same filterings.

Chaining is set in the "Edit Dataelement" dialog of the child element.
Because of this structure a visualization can only have one or none parent element and several or none child elements
A child element of one element can have several child elements which will produce a chaining chain of elements.

Chain to element or container

As described in the Administration manual, all elements are placed inside a element container.

When you start of creating a chaining between two visualizations, you are presented with the option of creating a element-based or container-based chaining between the elements.

In most cases the best option is to select the container based chaining:

When you do a container based chaining the chaining between the elements are still working even after the parent element are swapped with an other one during drilldown for example.

If you have set an element based chainging and the parent element has a drilldown to its own element, the chaining is broken when the parent element has performed the drilldown.

 

Drilldown

The main difference between chaining and drilldown is that a drilldown has a trigger point. The user clicks on a value or a chart section which starts the interaction.

A drilldown consist of four main sections:

FROM
A drilldown must always have a triggerpoint: You must select which column you want to be able to drilldown from

Expression to the right of the dropdownlist accepts a expression that must evaluate to true to be able to create a drilldown point. If there is no expression in this area, it will have drilldown on all rows.
This feature is used to create conditional drilldowns.

TO
Next you need to decide which container you want the drilldown to be rendred in.

Select a container on your dashboard, own element or new window

WHAT
Third you need to tell which visualization you want to show as your drilldown level 

HOW
The last thing you need to set is how you want the filterings to be matched

If the datatable is properly defined, you should be able to select Automatic column filtering and leave all the other options at default settings

 

The big drilldown HOW

To understand the settings under the drilldown HOW, there is three concept you need to understand:

Automatic Column Filtering

Automatic column filtering are both extremely time saving but also the safest way of maintaining drilldown consitency and at the same time allow the end user to regroup your visualizations.

How does automatic column filtering work?
If you enable automatic column filtering on a drilldown defintion the drilldown filtering is performed the following way:
 
At the parent level, the system checks which columns that is currently grouped
 
For every grouped column, the system creates a column filter which it tries to apply to the drilldown element
The column filters that are sent down to the drilldown level are matched by column name (actual alias returned from the database query).
If both parent and child elements use the same datatable, automatic column filtering works right out of the box
If you drilldown from one datatable to the next the column names at parent level and child levels need to match up for the automatic filtering to be applied.
 
If they do not match, the designer have to create static column filter instead.
If the drilldown uses static column filters, the drilldown filters area applied statically even if the end user has regrouped the parent level
 
When using automatic column filtering and the end user changes the grouping at the parent level, the filters applied in the drilldown are changed accordingly on the fly!
 

Static column filtering

Why use static column filters?
  • The column names at parent level and child level do not match
  • You want a column filter to be applied to a static value during drilldown no matter which value was clicked
  • Add addtional filters in addition to the ones applied through the automatic column filtering feature

Parameter - Column/Custom match

Parameter - column matches are somewhat similar to static column filters. By default these matches are set to Parameter A => Parameter A during drilldown if Parameter A exist in both elements.

If the drilldown level contains parameters that do not exist at the parent level, you must set a value in this section or leave it out if you want the default option to be selected at the drilldown level.

If you want a static value to be set during drilldown, select Custom in the dropdown list at the right and input your custom value in the input field which shows up next to the dropdown list.

If you want the drilldown defintion to be based on parameters entirely you need to have a ID-column at the parent level which contains the parameter value you want to set during drilldown.

For example:
You want to do a drilldown from a visualization grouped by category. 
You do not want to apply column filters but have the category parameter set instead.
Find the category parameter. In the dropdown list to the right, select the category_id column from the parent level.
When a user drills down with this definition, the category parameter is set to the clicked category at the child level.

What's next?

Check out the below child pages on how to create different types of drilldowns.