Totally agree. Ends up creating too many workbooks because of desire to manage global filters.
Yes. A local dashboard filter would be a very helpful feature. Actually surprised me when I specified a global filter on a Dashboard that it changed all the workbooks. In the back of my mind thought the more prevalent use case would be a filter applied to a specific dashboard.
I think I requested this a while back as well....this would be supremely useful. We've got a number of workbooks that are organized into a few distinct dashboard tabs, and it becomes increasingly challenging to keep the filters synchronized. Filters that are useful on one dashboard but not another still need to be included on all of the tabs so that users always know which filters have been applied. While this is technically no problem (just expose all of the global filters on each dashboard tab), it becomes a practical problem, in that the unnecessary filters take up space and introduce unnecessary visual complexity. I know I could create separate data connections for each dashboard, but when the data volume is large, this leads to very fat files.
I believe I have figured out a way around this constraint, at least partially. You can use a combination of a parameter and a calculated field to create "dashboard global" filters that only effect views on a particular dashboard tab.
Here's what I do:
1. Create a parameter that mimics the field I want to filter on (e.g. customer type, product segment, region etc.). You can use the "Add from Field" feature in the Edit Parameter dialog to pull in the values you want.
2. Create a calculated field with the following logic: "If Dimension = Parameter Then 'Show' Else 'Hide' End". For example, if I want a dashboard-global filter on Customer Type, I would have "If Customer Type = Customer Type Parameter Then 'Show' Else 'Hide' End".
3. Add the new calculated field as a local filter to each sheet you want to effect, and set the filter to "Show".
Now, when a user selects a value from the parameter filter, all of the views on a dashboard tab will filter to show that value only, as if they were responding to a global filter. The only constraint, obviously, is that you can only use parameter filters as single select filters, not multi-select. But I find this to be a very useful workaround for many of my workbooks.
Let me know if you have any questions.
Inspired by Mike's 'workaround', I find a solution to eliminate the impact of Global filter on other dashboard and the constraint of multi-select.
1. Create a set in the worksheet that is going to be in the secondary dashboard. For example, if my primary dashboard is about the sales of all regions in US and my secondary dashboard is one of the region (Northeast as an example), I would create a set named Northeast and select the value of Northeast from Regions under Dimentions.
2. Drag the set (Northeast) to Filters in the sheets that would be in the second, third.....dashboard.
In these ways, the set at the local filters defines the Region which you want in the specific sheet and won't be impacted by the global filter even though it's still in the filters shelf.
Hope it helps.
Don't be hesitate if you have any question.
Folks, I just realized that I spend a lot of time working around this shortcoming, so it is my top feature request for Tableau. See http://www.datarevelations.com/top-one-feature-request-for-tableau.html.
I'm trying to implement the Calc Field + Parameter approach that Mike demonstrated, and am getting hung up on the syntax.
This is what I'm currently doing:
IF [Dimension] = [Parameter] THEN 'Value1' ELSEIF [Dimension] = [Parameter] THEN 'Value2' ... ELSE 'Hide' End
There are some additional Dimensions I need to code for.
This is returning Value1, but not Value2. How is the syntax supposed to work when coding in all the Dimensions that will need to be available for filtering?
It appears you are trying to combine multiple dimensions and parameters into a single statement. I don't think you want to do that. What I do is create a separate field for each pseudo-global filter I want to create. So, let's say I want a Customer filter and a Product filter. I would create a Customer parameter (with the names of all the customers as choice values), and then create a calculated field that compares the 'native' Customer dimension to the Customer parameter. If the value is the same, then "Show", else "Hide". Then I'd do the same thing for Product (i.e. create a Product parameter and a Product show/hide calculated field).
I can't open your file (as I don't have 6.1), but quick filters always have 'All'. And the calculated field wouldn't be a quick filter anyway, but would be placed on the filter shelf with the value of 'Show' selected. The filter the user would interact with would be the parameter. So, say they choose Customer A from the parameter drop-down. The show/hide filter, set to 'Show', would only display values in your view where the Customer Dimension equals the selected customer value from the parameter drop-down.
Thanks for responding.
Yes, I initially tried to do a calculated field that compared the actual Dimension to the Parameter like this:
IF [Dimension] = [Parameter] then 'show' else 'hide' END
What results in the quick filter is: All, hide, show.
I'm assuming I don't have the syntax correct. Let me know what you think.
I've attached a twbx. I'll need to take it off once you have it.
I actually had this going on another thread:
I think I got it to work, although I'm not completely sure why it's working the way it is given Calculated Field syntax.