Sticky Filters

Summary

Allows user-selected filter values to remain persistent across  dashboard pages, elements, and portal pages.  

Configuration is enabled in the user record.  

Filters are defined in element editors for External Reports and Dataet Reports.  Filters can be defined as visible/invisible, contain defined and specific values, map values to users, and used for purposes of distribution.

Filters displayed in element viewers allow users to set one or more bookmarks for purposes of catalog display and report subscription (daily, weekly, monthly reports).

Power BI (only) - in v6.4.0 filters do not need to be defined.  When a user enables Sticky Filter functionality, filter and slicer selection values are remembered within both iFrame and Portal Page  content without further configuration from user settings (no action is required on element editors).

PBI Filter behavior videos:

 

Use Case Examples

Use Case Global Filters: Users should be allowed to set filter values on elements that use a filter for Country to a value (in example Country = Canada) and have the carry across to all other elements that also have a Country filter.  This creates persistent intelligent navigation experience - we assume that if a user is looking at information related to Canada in one element they will like be interested in seeing information for the same country across other Dashboard Pages, Elements, and Portal Pages.

Variation 1 (example): Retain that persistence.  If a user set the value to Canada in one session, we presume they're primarily interested in the same country value each session.

Variation 2 (example): Establish commonality across various platfroms and/or platform data sources.  Connect content from one Power BI dashboard with a filter named Country to intelligently remember filter values on another dashboard that uses Countries and a Tableau dashboard that uses dimCountry filter names.

Variation 3 (example): Users should be allowed to set personal values in PBI editors, but burst should be user mapped.

 

How to Enable Sticky Filters

Name Menu > My Settings

1. Remember my filter selections across tiles: Stores user filter value selections only during the active session.  If user logs out that persistence is lost.

2. Remember my filter selections after I log out: Stores user filter value selection in dashboard.user_global_filter table.

mysql> select * from user_global_filter\G
user_global_filter_id: 26
              user_id: 3
           filter_key: factpass.qbpos
                value: ["Shotgun"]
             metadata: {"filters":[{"$schema":"http:\/\/powerbi.com\/product\/schema#basic","target":{"table":"FactPass","column":"QBPos"},"filterType":1,"operator":"In","values":["Shotgun"],"requireSingleSelection":false}],"targets":[{"table":"FactPass","column":"QBPos"}]}

 

Filter-Matching Algorithm

Requests within Metric Insights and to External Report platforms incorporate filter name and filter values by user.  This means that if the Name of the filter key matches across elements or pages, the stored value is retrieved.

Filters defined in Metric Insights incorporate the platform filter syntax (e.g. [data source].[filter name]) as default filter key names.  These are overridden when a Name value for a defined filter is used.

The overridden values can be used to create a common key for disperate data source, or platforms, or filter names.

mysql> select * from user_global_filter\G
user_global_filter_id: 53
              user_id: 3
           filter_key: qb position
                value: ["Under Center"]
             metadata: NULL

In this example, all filters which have been defined with a value of qb position would stick to the selected value.

Reasons to define filters in Metric Insights for PBI content include:

  • Burst defaults
  • Bookmarks
  • Default element values (prior to user selection)
  • Commonality across elements where keys are different

Known Issues

Slicers that have had filters configured in the element editor display ONLY the slicer selected value.  If the slices is also displayed in the iFrame content this can appear misleading as no other slicer values are available until All Values is set using the Filter bar.