Forum Discussion
Validate Slicer Selection
Hello
I have a period column in a table that I am using as a slicer. It is of type date and I am using it as a Date Hierarchy.
I need to validate if the user selected the same number of months in the years, for example: if in 2020, January and February are selected and in 2021, January, February and March are selected, i need it to display "months missing from selection". If there is a match in the number of months selected in multiple years, i need it to display "months selected correctly".
I have no idea how to start this.
Any suggestion is appreciated.
Thank you
Anonymous here you go, add following measure
Month Selected = VAR __year = SUMMARIZE ( 'Calendar', [Year], "@Months", CONCATENATEX ( VALUES ( 'Calendar'[Month] ), [Month], "," ) ) VAR __status = IF ( COUNTROWS ( VALUES ( 'Calendar'[Year] ) ) = 1, -1, COUNTX ( SUMMARIZE ( __year, [@Months], "@Rowcount", COUNTROWS ( __year ) ), [@Rowcount] ) ) RETURN SWITCH ( __status, 1, "Valid Selection", -1, "Invalid Selecton - Only months selected in one year", "Invalid Selection - not same months selected" )Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
7 Replies
- Jihwan_KimSuper Usercount months : =COUNTROWS(VALUES('Calendar'[Month Name]))count years : =COUNTROWS(VALUES('Calendar'[Year]))Selection Validate Measure =VAR monthscount =COUNTROWS ( VALUES ( 'Calendar'[Month Name] ) )VAR yearscount =COUNTROWS ( VALUES ( 'Calendar'[Year] ) )VAR newtablemonth =ADDCOLUMNS ( ALLSELECTED ( 'Calendar'[Month] ), "@countyears", [count years :] )VAR newtableyear =ADDCOLUMNS (ALLSELECTED ( 'Calendar'[Year] ),"@countmonths", [count months :])RETURNIF (monthscount = MINX ( newtableyear, [@countmonths] )&& yearscount = MINX ( newtablemonth, [@countyears] ),"Months selected correctly","Months missing from selection")
- AnonymousNot applicable
thank you for your reply. your solution only works if i select something in both years. if i only select in one of the years, it is no longer working and this is a scenario that would happen often. i appreciate your suggestion
- parry2kSuper User
Anonymous one question. what happens if the user selects Jan/Feb in 2019 and Nov/Dec in 2020, still the user selected two months in both of the years but these are different months? Is this the right selection or month selection have to be the same for each year or just the count of month matter, not the actual months?
- AnonymousNot applicable
has to be the same months. basically i am trying to validate that a user compares the same periods, for some specific scenario. thank you
- parry2kSuper User
Anonymous here you go, add following measure
Month Selected = VAR __year = SUMMARIZE ( 'Calendar', [Year], "@Months", CONCATENATEX ( VALUES ( 'Calendar'[Month] ), [Month], "," ) ) VAR __status = IF ( COUNTROWS ( VALUES ( 'Calendar'[Year] ) ) = 1, -1, COUNTX ( SUMMARIZE ( __year, [@Months], "@Rowcount", COUNTROWS ( __year ) ), [@Rowcount] ) ) RETURN SWITCH ( __status, 1, "Valid Selection", -1, "Invalid Selecton - Only months selected in one year", "Invalid Selection - not same months selected" )Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
- parry2kSuper User
Anonymous here is a small video that shows the working of it
Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
- AnonymousNot applicable
I've tried your code and it seems to work for my scenario. Thank you for your support and also thank you to everyone that gave suggestions.