Forum Discussion
DAX to show Value changes
- 5 years ago
Anonymous This worked for me with your data:
Column = VAR __Current = RIGHT([Priority],1) * 1 VAR __PreviousDate = MAXX(FILTER('Table3','Table3'[Date of Inspection] < EARLIER('Table3'[Date of Inspection]) && [Panel No]=EARLIER('Table3'[Panel No])),[Date of Inspection]) VAR __Previous = RIGHT(MAXX(FILTER('Table3',[Date of Inspection]=__PreviousDate),[Priority]),1) * 1 RETURN IF(ISBLANK(__PreviousDate),0,__Current - __Previous) * -1
Anonymous You are going to want something along the lines of MTBF to compare rows:
See my article on Mean Time Between Failure (MTBF) which uses EARLIER: http://community.powerbi.com/t5/Community-Blog/Mean-Time-Between-Failure-MTBF-and-Power-BI/ba-p/339586.
The basic pattern is:
Column =
VAR __Current = [Value]
VAR __PreviousDate = MAXX(FILTER('Table','Table'[Date] < EARLIER('Table'[Date])),[Date])
VAR __Previous = MAXX(FILTER('Table',[Date]=__PreviousDate),[Value])
RETURN
__Current - __Previous
Greg_Deckler Thanks for this, unfortunately it is not producing the solution I am looking for/expecting.
I will give an example of what I was hoping to see.
| Panel No | Priority | Date Created | Date of Inspection | Priority change |
| 1289 | P3 | 04/11/2020 | 04/11/2020 | 0 |
| 1345 | P2 | 04/11/2020 | 05/05/2021 | 0 |
| 1289 | P1 | 04/11/2020 | 06/07/2021 | 2 |
| 5000 | P2 | 12/10/2020 | 01/02/2021 | -1 |
| 5000 | P1 | 12/10/2020 | 12/12/2020 | 1 |
| 5000 | P2 | 12/10/2020 | 12/04/2020 | 0 |
I don't if that makes sense? The formula above is showing me the difference from the previous panel in the the row above...not the difference JUST for that panel.
- Greg_Deckler5 years ago
Community Champion
Anonymous This worked for me with your data:
Column = VAR __Current = RIGHT([Priority],1) * 1 VAR __PreviousDate = MAXX(FILTER('Table3','Table3'[Date of Inspection] < EARLIER('Table3'[Date of Inspection]) && [Panel No]=EARLIER('Table3'[Panel No])),[Date of Inspection]) VAR __Previous = RIGHT(MAXX(FILTER('Table3',[Date of Inspection]=__PreviousDate),[Priority]),1) * 1 RETURN IF(ISBLANK(__PreviousDate),0,__Current - __Previous) * -1