Product Feedback Forum
Help us make Sisense better by posting your product feedback here.
cancel
Showing results for 
Search instead for 
Did you mean: 

The number of source of frustration and confusion amongst our users, when building Dashboards, is conflicts/inconsistencies between Dashboard and Widget filters. I have separately suggested that Sisense introduce a visual indicator of widget-level filters and it sounds like that is planned for the future, which is great.

Another related feature that a user suggested was a "reset all widget filters" button which would be a single place at the Dashboard level. If the user clicks it, it forces all Widget filters to (a) be deleted (or maybe disabled?), and (b) puts the widget filter settings back in-sync with the dashboard (meaning if the user has selectively toggled off Dashboard filter inheritance at the widget level, that will revert back to the defaults).

This is a really quick and easy method to put users back to square one if they have painted themselves into a corner, so to speak.

5 Comments

Hello @bminehart,

Thank you for submitting your idea!

Can you look at this document and let me know if would work for you? I know it's not exactly an easy-to-use UI implementation, but it might be a decent workaround. https://community.sisense.com/t5/knowledge/reset-to-default-filters-button-using-blox/ta-p/786

I would like to investigate this further also. There can be major performance impacts from turning off all the filters on all the widgets on the entire Dashboard. Some filters may be hidden from the viewer also, and trying to sync those between the Widget and Dashboard could cause all kinds of issues. 

Another solution you can look at is resetting the filters to default on reload, as mentioned here: https://community.sisense.com/t5/embed-analytics/how-to-reset-to-default-filters-after-refreshing-th...

Status changed to: Needs Votes & Comments
 

Thanks. I'm not proposing a button that entirely turns off Widget filters.

Instead, I'm proposing a button that "resets" the widgets to match the Dashboard filters. So it would actually have performance impacts by simplifying filtering complexity as I see it.

The point of this button is to make t-shooting Dashboard behaviors easier for Designers. We find that our users often back themselves into a corner where they've inadvertently (and unnecessarily) created filters at the widget level that should really be at the Dashboard level. Or maybe they were meant to be temporary filters for the purposes of troubleshooting an issue.

Hi@bminehart ,

As @DRay mentioned - not as convenient as having a solution OOTB - but at least a workaround you can try?

You could use a BloX control to do this, with a editor json as follows:

{
    "style": "",
    "script": "",
    "title": "",
    "showCarousel": true,
    "body": [
        {
            "type": "Container",
            "items": [
                {
                    "type": "TextBlock",
                    "text": "<button id='reset_filters_button'> RESET ALL WIDGET FILTERS </button>",
                    "style": {
                        "text-align": "center",
                        "font-weight": "bold",
                        "font-size": "24px",
                        "margin": "100px"
                    }
                }
            ]
        }
    ],
    "actions": []
}

and a dashboard script like this:

dashboard.on('domready', () => {
    $('#reset_filters_button').on('click', () => {
		debugger
        let widgetCount = prism.activeDashboard.widgets.$$widgets.length
		for (let i = 0; i < widgetCount; i++) {
		  let widget = prism.activeDashboard.widgets.$$widgets[i]
		  widget.metadata.panels.find((p) => { return p.name === 'filters' }).items.splice(0,widget.metadata.panels.find((p) => { return p.name === 'filters' }).items.length)
		  widget.metadata.ignore.ids = []
		  widget.changesMade('widget', 'filters')
		  widget.refresh()
		}
    })
})

Let me know how you go?

Thanks,

Daniel

RAPID BI

[email protected]

RAPID BI - Sisense Professional Services | Implementations | Custom Add-ons