Forum Discussion
Slicer DAX
- 1 year ago
Solution implemented was using default functionality of the new slicer visual.
HI smileamile2
Please update your formula to this:
Filter =
VAR _VALUES =
UNION ( VALUES ( StatusOrState[Value] ), { BLANK () } )
VAR _VALUES2 =
VALUES ( StatusOrState[Value] )
RETURN
IF (
NOT ( ISFILTERED ( StatusOrState[Value] ) ),
CALCULATE (
COUNTROWS ( 'Table' ),
KEEPFILTERS ( 'Table'[Status] IN _VALUES || 'Table'[State] IN _VALUES )
),
CALCULATE (
COUNTROWS ( 'Table' ),
KEEPFILTERS ( 'Table'[Status] IN _VALUES2 || 'Table'[State] IN _VALUES2 )
)
)
Please see updated pbix.
x
- Anonymous1 year agoNot applicable
Thanks for danextian and Ashish_Mathur's concern about this issue.
Hi, smileamile2
Please try the following DAX:
Filter = VAR _VALUES = UNION ( VALUES ( StatusOrState[Value] ), { BLANK () } ) VAR _VALUES2 = VALUES ( StatusOrState[Value] ) RETURN IF ( NOT ( ISFILTERED ( StatusOrState[Value] ) ), CALCULATE ( COUNTROWS ( 'Table' ), KEEPFILTERS ( 'Table'[Status] IN _VALUES || 'Table'[State] IN _VALUES ) ), IF ( COUNTROWS ( _VALUES2 ) = 1, CALCULATE ( COUNTROWS ( 'Table' ), KEEPFILTERS ( 'Table'[Status] IN _VALUES2 || 'Table'[State] IN _VALUES2 ) ), CALCULATE ( COUNTROWS ( 'Table' ), KEEPFILTERS ( 'Table'[Status] IN _VALUES2 && 'Table'[State] IN _VALUES2 ) ) ) )Output:
I have attached the pbix file for that example below, I hope it helps!
I hope my suggestions give you good ideas, if you have any more questions, please clarify in a follow-up reply.
Best Regards,
Fen Ling,
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. - danextian1 year agoSuper User
hI smileamile2
Include an additional condition to check if the count of the selected values matches the total count when no selection is made. Try this:
Filter = VAR _VALUES = UNION ( VALUES ( StatusOrState[Value] ), { BLANK () } ) VAR _VALUES2 = VALUES ( StatusOrState[Value] ) VAR _ALL_SELECTED_TEST = COUNTROWS(ALL(StatusOrState)) = COUNTROWS(StatusOrState) RETURN IF ( NOT ( ISFILTERED ( StatusOrState[Value] ) ) || _ALL_SELECTED_TEST, CALCULATE ( COUNTROWS ( 'Table' ), KEEPFILTERS ( 'Table'[Status] IN _VALUES || 'Table'[State] IN _VALUES ) ), CALCULATE ( COUNTROWS ( 'Table' ), KEEPFILTERS ( 'Table'[Status] IN _VALUES2 || 'Table'[State] IN _VALUES2 ) ) )