Forum Discussion
Looking for difference between two values by filters
- Anonymous5 years ago
Hi Naveen_SV ,
I created a sample pbix file (see attachment) for you, please check whether that is what you want.
1. Create a calculated table: Table 2
Table 2 = UNION(VALUES('Table'[Cycle]),ROW("Cycle","XDifference"))2. Create measures to get the sum amount and difference
Measure = VAR _sAmountofQ1=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q1")) VAR _sAmountofQ2=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q2")) VAR _sAmountofQ3=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q3")) VAR _sAmountofQ4=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q4")) return SWITCH ( SELECTEDVALUE ( 'Table 2'[Cycle] ), "XDifference",_sAmountofQ4-_sAmountofQ3-_sAmountofQ2-_sAmountofQ1, CALCULATE ( SUM ( 'Table'[Amount] ), FILTER ( 'Table', 'Table'[ID] = MAX ( 'Table'[ID] )&&'Table'[Cycle]=MAX('Table 2'[Cycle]) ) ) )Difference = SUMX(VALUES('Table'[ID]),[Measure])3. Create a matrix visual (Rows: ID Column: field Cycle of Table 2 Values: [Difference] )
Best Regards
Rena
Community Support Team _ Rena Ruan
If this post helps, then please consider Accept it as the solution to help the other members find it more.
Anonymous Thanks for your reply, where here the scenrio is q1, q2, q3 is dynamic
Hi Naveen_SV ,
I created a sample pbix file (see attachment) for you, please check whether that is what you want.
1. Create a calculated table: Table 2
Table 2 = UNION(VALUES('Table'[Cycle]),ROW("Cycle","XDifference"))
2. Create measures to get the sum amount and difference
Measure =
VAR _sAmountofQ1=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q1"))
VAR _sAmountofQ2=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q2"))
VAR _sAmountofQ3=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q3"))
VAR _sAmountofQ4=CALCULATE(SUM('Table'[Amount]),FILTER('Table','Table'[ID] = MAX ( 'Table'[ID] ) &&'Table'[Cycle]="Q4"))
return SWITCH (
SELECTEDVALUE ( 'Table 2'[Cycle] ),
"XDifference",_sAmountofQ4-_sAmountofQ3-_sAmountofQ2-_sAmountofQ1,
CALCULATE (
SUM ( 'Table'[Amount] ),
FILTER ( 'Table', 'Table'[ID] = MAX ( 'Table'[ID] )&&'Table'[Cycle]=MAX('Table 2'[Cycle]) )
)
) Difference = SUMX(VALUES('Table'[ID]),[Measure])
3. Create a matrix visual (Rows: ID Column: field Cycle of Table 2 Values: [Difference] )
Best Regards
Rena
Community Support Team _ Rena Ruan
If this post helps, then please consider Accept it as the solution to help the other members find it more.
- Naveen_SV5 years ago
Helper IV
Anonymous thanks it worked
- sarath_chandra3 years ago
Helper III
Hi , Great answer. I have different query regarding this.
you are doing Q4 as base (q4-q3-q2-q1). If I'm selecting the filter Q3 & Q2 ,it should take Q3 is base (I need answer like Q3 - Q2 ) not like (-q3-q2).
same way for ,if I'm selecting q2 and q1 in filter , it should show q2-q1 (not like -q2-q1).
How to do this ?please help me out guys🙏