Forum Discussion
Filter the contents inside MATRIX visual
Dear All
I have a matric that contains the following information:
- Rows: Warehouse names: A, B and C
- Columns: Years
- Values: Profits
and I have a multiselection slicer that contains the Warehouse names.
I want to be able to compare the chosen values in the slicer and see the result in the Matrix in a way that the MATRIX will only show comparison if they are different, but if they are identical it will show blank, this is an example
Thanks in advance
Regards
Actually, thinking about it, the average method could potentially not achieve what you are looking for.
If you have a set of values for a year like {30, 29, 30, 31}, the average method will hide both 30 values.
The following method however will work: compare the minimum value in a set to the maximum value. If they are the same, all values are the same...
So...
No duplicate profits = VAR _Min = MINX ( ALL ( 'Warehouse table'[Warehouse] ), [Your measure] ) VAR _MAX = MAXX ( ALL ( 'Warehouse table'[Warehouse] ), [Your measure] ) RETURN IF ( AND ( ISINSCOPE ( 'Warehouse table'[Warehouse] ), ISINSCOPE ( 'Year Table'[Year] ) ), IF ( _Min = _Max, BLANK (), [Your measure] ) )PS. I tried deleting the previous message but the forum won't let me for that particular post for some reason....
10 Replies
- pi_eyeResolver IV
Hi Thor
Can you elaborate on the example? So for example if the column values for year #2 are 5,6 and 7, it shows but if it is 3,3, and 3 it is blank?
See example below:
Try this expresion in DAX:
Show diff Values = If(Calculate(DISTINCTCOUNT(WareHouse[Value]),ALLSELECTED(WareHouse[WareHouse]))=1,"", Sum(WareHouse[Value]))What it is doing:
Calculate(DISTINCTCOUNT(WareHouse[Value]),ALLSELECTED(WareHouse[WareHouse])) --> Gives you the total of distinct values per warehouse
If(....... =1,"",...) ---> tests for the distinct values =1, thie means they are all the same. Returns blank if that is the case, and the sum if they are different.
Thanks,
Pi
- Thor2022Frequent Visitor
Hi Pi
Thanks a lot, I will try it on Monday.
Until then, I just need to add that the profit value is a measure, not a column .. so I am not sure if this DAX can be applied?
Thanks a gain
Regards
- PaulDBrownCommunity Champion
Here is one way. Basically you compare the sum (profit) of each warehouse with the average for all warehouses in a year.
First the model:
The calculation (without totals)
No duplicate profits = VAR _Profit = SUM ( fTable[Profit] ) VAR _Average = CALCULATE ( AVERAGE ( fTable[Profit] ), ALL ( 'Warehouse table'[Warehouse] ) ) RETURN IF ( AND ( ISINSCOPE ( 'Warehouse table'[Warehouse] ), ISINSCOPE ( 'Year Table'[Year] ) ), IF ( _Profit = _Average, BLANK (), _Profit ) )and if you need totals:
No Dups with totals = SUMX(SUMMARIZE(fTable, 'Warehouse table'[Warehouse], 'Year Table'[Year]), [No duplicate profits])Sample PBIX attached