Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hi all,
At the moment i have a what if parameter so the users can select a month in a slicer, that parameter will be used in another dax formula.
I generate 12 month numbers and select the value from the slicer with the following DAX
MonthParValue = SELECTEDVALUE(MonthParameter[MonthPar])
After that i use that value in the following dax to select on a month basis.
EstimateCurrentMonth = calculate(sum('Sales'[Estimate]);FILTER(ALL('Sales'[MonthNumber]);[MonthNumber] = 'MonthParameter'[MonthParValue]))
this is working fine, but only if i select one month. I see that the selectedvalue returns only one value.
How can i change this so i can select multiple values from the slicer?
Thanks!
Solved! Go to Solution.
Hey,
I guess if you replace your estimation measure
EstimateCurrentMonth = calculate(sum('Sales'[Estimate]);FILTER(ALL('Sales'[MonthNumber]);[MonthNumber] = 'MonthParameter'[MonthParValue]))
with this
EstimateCurrentMonth = var selectedMonths = Values('MonthParameter'[MonthParValue]) return calculate( sum('Sales'[Estimate]) ;FILTER( ALL('Sales'[MonthNumber]) ;[MonthNumber] IN selectedMonths ) )
You are good to go.
Please be aware that the variable selectedMonths contains a table and no loger a scalar value. You also have to make sure that the slicer with the Month numbers has to be enabled for multi selection
Regards,
Tom
Hi @TomMartens
Thanks, but i think i fixed it fairly easily.
I created a measure
IsFiltered = ISCROSSFILTERED(MonthParameter[MonthPar])
In the other DAX a simple IF check seems to work fine..
IF(MonthNamesNumbersAsVar[IsFiltered] = TRUE;
calculate(..................
Hey,
I guess if you replace your estimation measure
EstimateCurrentMonth = calculate(sum('Sales'[Estimate]);FILTER(ALL('Sales'[MonthNumber]);[MonthNumber] = 'MonthParameter'[MonthParValue]))
with this
EstimateCurrentMonth = var selectedMonths = Values('MonthParameter'[MonthParValue]) return calculate( sum('Sales'[Estimate]) ;FILTER( ALL('Sales'[MonthNumber]) ;[MonthNumber] IN selectedMonths ) )
You are good to go.
Please be aware that the variable selectedMonths contains a table and no loger a scalar value. You also have to make sure that the slicer with the Month numbers has to be enabled for multi selection
Regards,
Tom
One other question, i see that the slicer returns all values as default, how can i set it so the slicer returns "nothing" as default?
Hi @TomMartens
Thanks, but i think i fixed it fairly easily.
I created a measure
IsFiltered = ISCROSSFILTERED(MonthParameter[MonthPar])
In the other DAX a simple IF check seems to work fine..
IF(MonthNamesNumbersAsVar[IsFiltered] = TRUE;
calculate(..................
Perfect!
Try with following
EstimateCurrentMonth = CALCULATE ( SUM ( 'Sales'[Estimate] ), FILTER ( ALL ( 'Sales'[MonthNumber] ), [MonthNumber] IN VALUES ( 'MonthParameter'[MonthParValue] ) ) )
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
User | Count |
---|---|
92 | |
87 | |
84 | |
65 | |
49 |
User | Count |
---|---|
140 | |
114 | |
110 | |
59 | |
59 |