Forum Discussion

Raymo3u99's avatar
Raymo3u99
Icon for Helper I rankHelper I
5 years ago
Solved

Dependent date slicers

I have a requirement to display data on two tabs base on dates selected. However the date slicer on the first should determine the selected values in the second slicer.

 

My date slicer has a list of first of the month dates eg 1/1/2020, 2/1/2020, 3/1/2020, 4/1/2020, 5/1/2020 etc.

When the user selects any month on this slicer, the date slicer on the second tab should select all the dates upto the date selected on the first slicer.

 

Example if 3/1/2020 is selected on the first slicer, then 1/1/2020, 2/1/2020 and 3/1/2020 should get selected on the second slicer on the second tab. 

 

Thanks in advance for your help.

Raymond

  • Hi Raymo3u99 

     

    Per my understanding, to realize your expectation, the selected date value on tab A should be passed to tab B, and these two date slicers on the two tabs have different date ranges selected. I think up with a solution to realize this with two calendar tables as well as sync slicer function but I'm not sure whether this is applicable in your data model. You may take a try. Steps are as below.

     

    1. Create two calendar tables: Calendar A and Calendar B.

    2. On page 1, create a date slicer with 'Calendar A'[Start of Month] as field. Copy the date slicer to page 2 and sync these two slicers as below. Hide the slicer on page 2.

    3. Create measures:

    Selected Date = SELECTEDVALUE('Calendar A'[Start Of Month])
    Measure = IF(MAX('Calendar B'[Start Of Month])<=[Selected Date],1,0)

    4. On page 2, create a new date slicer with 'Calendar B'[Start of Month] as field. Add Measure into this slicer's visual filter and set value is 1. 

    5. The values may not be selected automatically, so I show "Select all" option in the slicer for user to select all the dates before the date selected on page 1. 

     

    You can download the PBIX, hope this helps.

     

    Best Regards,

    Community Support Team _ Jing Zhang

    If this post helps, please consider Accept it as the solution to help other members find it.

     

8 Replies

  • v-jingzhang's avatar
    v-jingzhang
    Icon for Community Support rankCommunity Support

    Hi Raymo3u99 

     

    Per my understanding, to realize your expectation, the selected date value on tab A should be passed to tab B, and these two date slicers on the two tabs have different date ranges selected. I think up with a solution to realize this with two calendar tables as well as sync slicer function but I'm not sure whether this is applicable in your data model. You may take a try. Steps are as below.

     

    1. Create two calendar tables: Calendar A and Calendar B.

    2. On page 1, create a date slicer with 'Calendar A'[Start of Month] as field. Copy the date slicer to page 2 and sync these two slicers as below. Hide the slicer on page 2.

    3. Create measures:

    Selected Date = SELECTEDVALUE('Calendar A'[Start Of Month])
    Measure = IF(MAX('Calendar B'[Start Of Month])<=[Selected Date],1,0)

    4. On page 2, create a new date slicer with 'Calendar B'[Start of Month] as field. Add Measure into this slicer's visual filter and set value is 1. 

    5. The values may not be selected automatically, so I show "Select all" option in the slicer for user to select all the dates before the date selected on page 1. 

     

    You can download the PBIX, hope this helps.

     

    Best Regards,

    Community Support Team _ Jing Zhang

    If this post helps, please consider Accept it as the solution to help other members find it.

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      This is an awesome solution.  I am a newbie in Power BI as having worked with Tableau for the last 9 years.  One question I have is the measure:

       

      Measure = IF(MAX('Calendar B'[Start Of Month])<=[Selected Date],1,0)
       
      I can't quite get how it is acting like a row level calculation in the way it is being used.  One part of me thinks if Dec is selected on Calendar A only then would values show for Calendar B since the Max of Calendar B is Dec.  Is there a way to explain this to help me understand why it is acting as a row level calc?
    • skashifz's avatar
      skashifz
      Frequent Visitor

      v-jingzhang The pbix you attached here is no more there. I have same issue, and need to implement a similar thing. Do you still have the pbix handy with you ?

      • v-jingzhang's avatar
        v-jingzhang
        Icon for Community Support rankCommunity Support

        skashifz Sorry I didn't store it in the local storage so I don't have a copy of it now. You can follow the steps in my first reply to try it. If it doesn't work, you can leave your question here and I will look into it. Or you can also create a new topic then more people will discuss on it. There may be some better ideas and solutions.

  • Raymo3u99 , I doubt that is possible, You can show the date of that month, but might be able to show more than what you have selected in the other slicer