cancel
Showing results for 
Search instead for 
Did you mean: 
taras
Sisense Team Member
Sisense Team Member

Exploring the Potential of Sisense Jump to Dashboard Filter Configurations

Introduction:

Sisense Jump to Dashboard offers a powerful way to enhance the user experience and streamline data exploration with the help of different filter configurations. By default, all the filters from the parent dashboard, measured values, and widget filters are passed and replaced in the drill dashboard. This guide explains and provides examples of how you can customize the way filters impact the drill dashboard. We'll delve into multiple filter configuration options and provide a step-by-step guide on how to implement them effectively.

The Default Behaviour & Description:

The default settings of the Jump to Dashboard add-on do not require any JavaScript configuration. You can use the plugin with the default configuration right after it’s enabled. The default filter behavior configuration is the following:

  • displayFilterPane: true
    • This parameter determines if to display a filter pane in the target dashboard window. The default value is true which means that the filters pane shall be displayed.
  • excludeFilterDims: []
    • Dimensions to exclude from the drilled dashboard filter. An empty array means that no dimensions are excluded.
  • includeFilterDims: []
    • Dimensions to include in the drilled dashboard filter. An empty array means that all dimensions are included.
  • resetDashFilterAfterJTD: false
    • Resets the filters of a target dashboard. Combine this with mergeTargetDashboardFilters if you want your dashboard filters to be displayed in the target dashboard.
  • mergeTargetDashboardFilters: false
    • Determines if you want your dashboard filters to be displayed in the target dashboard (usually combined with resetDashFilterAfterJTD)

Configuration Methods:

A detailed explanation can be found here: https://community.sisense.com/t5/knowledge/jumptodashboard-plugin-how-to-use-and-customize/ta-p/1737...

config.js method:

  • it’s a system-wide configuration and takes effect for the entire Sisense installation.
  • To edit the default system-wide JTD filters configuration set in the config.js navigate with the help of File Manager to plugins -> jumpToDashboard -> js -> config.js
  • Adjust the configuration required by modifying the file and saving the changes - the changes will take effect after the plugin rebuild process which is initiated right after the config changes are saved. Once the user refreshes the dashboard and obtains the last build of the plugins, the new configuration will be in place across all the dashboards.

Widget script method:

  • It’s used to override the default system-wide config and can change the behavior of a particular widget
  • Not all configuration parameters are supported for this method - check the “Configured In” field of the specification table located on the Technical Details tab of the JTD Marketplace Page: Jump to Dashboard - Sisense
  • Configuration can be applied by adding the Widget JavaScript Extension to the particular widget
  • The changes take effect right after the script is saved and the dashboard containing the widget is reloaded.

Configurable Filters Behavior + Script Examples:

displayFilterPane

The filter panel is visible by default:

taras_0-1716378184294.png

If you want to hide it in the drill dashboard, just change row 4 in config.js like:

 

displayFilterPane : false

 


OR add the following script to configure it for the particular JTD widget

 

prism.jumpToDashboard(widget, { displayFilterPane: false});​

 


The result will look like this:

taras_1-1716378320850.png


excludeFilterDims

By default, all the filters from the parent dashboard, measured values, and widget filters are passed to the drill dashboard, but you can exclude particular dimensions from being passed. In Sisense, a "dimension" is a qualitative attribute used to categorize and filter quantitative data (measures). In most cases, it will be represented as the table_name.column_name identifying the data location in the elasticube or live model.

A few things to note:

  • excludeFilterDims is an array so even when the single filter dimension is used, it should be enclosed in square brackets [].
  • This configuration can be modified both on a system-wide level via config.js, or via the widget script
  • When excluding the date dimension using the parameter excludeFilterDims, (Calendar) must be used or the exclusion will not work.  Example: [Table.Dimension(Calendar)]

An example if you use excludeFilterDims with Dimension B:


Parent Dash FIlters

Drill Dash Filters

Resulting Filters

Dimension A - Value A1

Dimension A - Value A2

Dimension A - Value A1

Dimension B - Value B1

Dimension B - Value B2

No

Dimension C - Value C1

Dimension C - Value C2

Dimension C - Value C1

Widget script Example:

 

prism.jumpToDashboard(widget, {
    excludeFilterDims: ["[divisions.Divison_name]",
        "[Admissions.Admission_Time (Calendar)]",
        "[doctors.Specialty]"
    ]
});

 


includeFilterDims

It’s the opposite of the excludeFilterDims described above. includeFilterDims is intended to explicitly set the filter's dimensions you want to pass to the drill dashboard. All other filter dims will be ignored. The same usage notes apply here as for the excludeFilterDims.

Example if you use includeFilterDims with Dimension B:

Parent Dash FIlters

Drill Dash Filters

Resulting Filters

Dimension A - Value A1

Dimension A - Value A2

No

Dimension B - Value B1

Dimension B - Value B2

Dimension B - Value B1

Dimension C - Value C1

Dimension C - Value C2

No


Widget script Example:

 

prism.jumpToDashboard(widget, {
    includeFilterDims: ["[country.Country]",
        "[brand.Brand]"
    ]
});

 


resetDashFilterAfterJTD

Note: Configurable in config,js file only

By default, after we open the dashboard with the help of JTD, the filters passed to this drill dashboard by JTD are saved for the user. This behavior can be changed with the help of resetDashFilterAfterJTD config. Once set to true, the filters of the drill dashboard will be preserved (in the temporary storage inside the dashboard object ​​prism.activeDashboard.filtersToRestore) and restored during the next dashboard opening.

config.js example:

 

resetDashFilterAfterJTD: true

 


mergeTargetDashboardFilters

By default, when the drill dashboard is opened with the help of JTD, the filters of the drill dashboard are replaced with the filters from the parent dashboard. If you’d like to compliment the dashboard filters with the original ones from the drill dashboard, you can enable this parameter.

Usage Example:

Parent Dash FIlters

Drill Dash Filters

mergeTargetDashboardFilters: false

mergeTargetDashboardFilters: true

No

Dimension A - Value A2

No

Dimension A - Value A2

Dimension B - Value B1

Dimension B - Value B2

Dimension B - Value B1

Dimension B - Value B1

No

Dimension C - Value C2

No

Dimension C - Value C2


Widget Script Example:

 

prism.jumpToDashboard(widget, {
    mergeTargetDashboardFilters: true
});

 


Locating the correct dimension for the config:

There is a simple way of finding out the correct filter dims for the configuration scripts. When the source dashboard is open, open the Browser Development Console.

Here are the common shortcuts to open the browser developer console:

  • Chrome: Ctrl + Shift + J (Windows/Linux) or Cmd + Option + J (Mac)
  • Firefox: Ctrl + Shift + K (Windows/Linux) or Cmd + Option + K (Mac)
  • Edge: Ctrl + Shift + I (Windows/Linux) or Cmd + Option + I (Mac)
  • Safari: Cmd + Option + C (Mac) (Enable "Show Develop menu in menu bar" in Preferences first)
  • Opera: Ctrl + Shift + I (Windows/Linux) or Cmd + Option + I (Mac)

In the console type in the following to list the active dashboard filters’ dimensions:

 

prism.activeDashboard.filters.$$items.forEach((item)=>console.log(JSON.stringify(item.jaql.dim)));

 


The list of active dashboard filter dimensions should be returned like below, so you can use them in your configurations:

taras_2-1716379172824.png


Hope the above helps you understand the Jump to Dashboard filter settings better and I wish you good luck with setting up your JTD customizations!

Rate this article:
Comments
jacobd
7 - Data Storage
7 - Data Storage

Here is what I'm trying to do:
1. I want to create a list of buttons associated with tableName.columnName.rowName. I can get this in a BloX with the panel:columnName.

2.When I click on one of the buttons I want to include the tableName.columnName filter from the parent to the drilled dashboard. But I also want that filter to automatically filter down to that row.  

Is there a way of doing this?

Version history
Last update:
‎05-22-2024 08:41 AM
Updated by:
Contributors