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 there,
This might be quite a simple one - sorry that I am new to DAX and learning. I have the following table (simplified)
Asset | Date | Value |
aaa | 24/07/2020 | 20 |
aaa | ||
aaa | 25/07/2022 | 30 |
aaa | 01/04/2019 | 50 |
aaa | 04/06/2019 | 40 |
bbb | 17/03/2021 | 70 |
bbb | 10/02/2019 | 50 |
bbb | ||
bbb | 14/03/2020 | 40 |
bbb | 11/02/2018 | 80 |
bbb | 10/02/2017 | 90 |
ccc | 02/02/2019 | 30 |
ccc | 02/02/2018 | 30 |
I am trying to create a table in my report that will reference this table to make it look like this:
Asset | Current Value | Previous Value | % Difference |
aaa | 30 | 20 | |
bbb | 70 | 40 | |
ccc | 30 | 30 |
Basically I would like the asset listed 'distinctly', and then for current value column:
- each decided by finding the most recent date, and returning the value
For previous value
- find the second to last most recent date and return the value
For % difference
- The % difference between the above two
Any help really appreciated.
Solved! Go to Solution.
It seems I forgot to include the SUM() function here.
Try ->
VAR ValueSecondLastDate = Calculate(SUM(Table1[Value]), Table1[Date] = SecondLastDate)
When writing measures, you need to use functions on the columns
Edit to Above Formula ->
Try the following ->
ValueLastDate = Calculate(SUM(Table1[Value]), LASTDATE(Table1[Date]))
Value Delta % =
VAR Delta = ValueLastDate - ValueSecondLastDatee
Return
Calculate(Divide(Delta, ValueSecondLastDate))
Hi @arichard19
Many thanks for this! I have split into two measures. Measure 1:
ValueLastDate = Calculate(SUM(Table1[Value]), LASTDATE(Table1[Date]))
This works fine.
But measure 2:
It seems I forgot to include the SUM() function here.
Try ->
VAR ValueSecondLastDate = Calculate(SUM(Table1[Value]), Table1[Date] = SecondLastDate)
When writing measures, you need to use functions on the columns
Thank you so much @arichard19 for you help. Works perfectly. I just added the square brackets for the references to other measures where needed in the DAX
Try the following ->
LastDate = Calculate(SUM(Table1[Value]), LASTDATE(Table1[Date]))
SecondLastDate =
VAR LastDate = LASTDATE(Table1[Date]))
RETURN
Calculate(SUM(Table1[Value]), MAX(Table1[Date]) < LastDate))
Delta % =
VAR Delta = LastDate - SecondLastDate
Return
Calculate(Divide(Delta, SecondLastDate))
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 |
---|---|
26 | |
20 | |
19 | |
14 | |
13 |
User | Count |
---|---|
43 | |
36 | |
24 | |
23 | |
21 |