8 Replies Latest reply on Nov 18, 2016 1:27 AM by Simon Runc

    Action filter passing underlying row IDs from selection

    Tor Helge Huse

      Hi all,

       

      I have a problem with action filters that I feel there should be an easy solution to, but I can't quite figure it out. In the attached workbook I've made a mock-up using the super store data to hopefully illustrate my problem (my real data is something different, but the problem with the action filters is the same). When a user opens the dashboard he/she should see the timeline, and make a selection of a category. When the user then click on a point on the timeline the middle sheet will show the distribution on ship mode on all the orders for the selected category and point in time. This is easy and works as expected.

      The next step is that the user would like to investigate the users that for instance selected "First class" ship mode on the selected date and category, but now I would like to show all the orders for just that selected group of customers on the bottom sheet (regardless of selected date and category). How can I achieve this?

       

      Best regards,

      Tor Helge Huse

       

      TC - action filter woes.png

        • 1. Re: Action filter passing underlying row IDs from selection
          Simon Runc

          hi Tor,

           

          Firstly, many thanks for such a clear explanation of your problem, and for attaching an example workbook....make such a difference.

           

          So if you look at the attached I've amended the actions, to get the behaviour (I think) you are after....

           

          So on the first action is now

           

          So this passes the Category and Month to both Distribution and All Orders (with an exclude on deselection, so it collapses)

           

          I then created a second action as per the below

           

           

          So this one sends the Ship mode to the All Orders...but All Orders has also (from the 1st action) been sent the Month and Category....so we get the behaviour we want.

           

          Hopefully, I've understood what you need, and the attached does the trick (and makes sense), but let me know if not.

          1 of 1 people found this helpful
          • 2. Re: Action filter passing underlying row IDs from selection
            Tor Helge Huse

            Thanks for the super quick response Simon Runc!

            Unfortunately it wasn't quite the solution I was after (I did provide as clear an explanation that you thought ).

             

            But I did manage to solve it sort of (I don't know why i didn't manage this when first trying, I'm sure I tried the solution I have now before...). In the attached workbook I just brought in "Customer Name" on details on the left hand side "Distribution (Customer detail)" sheet, and then if I click the "Ship mode" header, e.g. "Second class" a new action filter will filter the "All orders #2" sheet to show all orders for the customers selected. It's a basic solution, and I don't know why it didn't work with my data yesterday (it just timed out when selecting a whole category and not a single customer). Ideally I would like to get the same using the right hand side "Distribution" sheet (i.e. without splitting the bars by customer name). That I haven't figured out, and that was also what I was trying to ask...

             

            Another question, I'm also trying to use the action filter values passed from the timeline sheet in the title of the "Distribution" sheets, but I just get Null values. Does it require "Category" and/or the time dimension to be in the "Distribution" sheet to work?

             

            Skjermbilde.PNG

            • 3. Re: Action filter passing underlying row IDs from selection
              Simon Runc

              hi Tor,

               

              So yes even with the best explanation, getting across the fine-tune detail of how you want an action to work is never an exact science...

               

              So can check my understanding...

               

              A user selects a month from the time-series (after choosing a single category from the category filter)? would they only ever select a single month?

               

              Once this is selected it brings up the Distribution Bar chart, which shows Ship-mode, just for the selected month/category

               

              By Clicking on a Ship Mode bar, they should then see all customer details, for the selected Month and Category and Shop-Mode

               

              Is that correct?...as your current one, seems to show all categories in the customer detail viz, but highlights the selected category? and shows all ship-modes? and has no filter on month

               

              btw whatever the response to the above, it should all be possible, without having customer in the detail of the distribution bar charts.

               

              Also the answers to above (mainly around if a user can select multiple months, ship-modes...etc.) will determine the best way of getting the chart titles to update dynamically.

              • 4. Re: Action filter passing underlying row IDs from selection
                Tor Helge Huse

                I guess it's conceivable that a user selects one or more months/weeks/points on the time line, but usually only one. The current one does exactly what I would like it to do (it makes a bit more sense with my real data), except that it doesn't have a single bar for each ship mode (now it's stacked by Customer name). The highlighting of the selected Category was also something I was trying out to see if it would work as a way to remember the context the user started out drilling down in the data.

                So basically I would like for the right hand side Distribution sheet to be able to do the same as the left hand side.

                 

                I managed to display the selected Category and Month by including those on rows and hiding the header for those two pills.

                • 5. Re: Action filter passing underlying row IDs from selection
                  Simon Runc

                  hi Tor,

                   

                  Yes totally get it now...however I'm going to need to have a play/think on how this can be done. As you've seen, Action filters act like "real" filters...so when we send, say, "First Class" ship-mode to the customer level, it's sending a filter on "First Class", so any subsequent Viz is filtered to only have the rows (of the data) included which have Ship-Mode = "First Class", and not the list of customers who have shipped, with "First Class", + all their other orders (regardless of the class they were sent). I've tired to solve this issue a few times before, and not been able to...but every day I learn new things in Tableau (and have ideas on how exsiting things I knew could be re-purposed)

                   

                  ...I've a couple of ideas I've not tried before, so I'll give these a go over the weekend, and let you know how I get on!

                  • 6. Re: Action filter passing underlying row IDs from selection
                    Yuriy Fal

                    Hi guys,

                     

                    Pardon for making noise here,

                    but I'd like to offer some.

                     

                    The trick is to use a self-join on Customer ID

                    to get all rows from the right (second) table.

                     

                    Please find the attached.

                     

                    Yours,

                    Yuri

                    2 of 2 people found this helpful
                    • 7. Re: Action filter passing underlying row IDs from selection
                      Tor Helge Huse

                      Thank you Yuri Fal! Great solution. Now I just have to see if it works with my data, which contains a couple of magnitudes more data than the super store data.

                      • 8. Re: Action filter passing underlying row IDs from selection
                        Simon Runc

                        hi Yuri,

                        Pardon for making noise here,

                        Always great to have your contribution to any thread...the only noise you bring is the "Noise of Reason"!!

                         

                        Yes very nice solution...I was thinking about trying to use conditional sets (on customer name) with the condition being

                         

                        MAX(IIF([Ship Mode]="First Class",1,0))=1

                         

                        And then try and create some dimension based on being in a set (creating versions for "Same Day", "Second Class"...)...which works quite nicely with parameters for this kind of selection.

                         

                        but alas no...I run into the same issue (which I suspect I would have!) of having the Ship Mode bars stacked (albeit by less things...so In/Out of set, and not each customer).

                         

                        Great work, as always