Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code FABINSIDER for a $400 discount.
Register nowGet inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.
I have created several measures to calculate LTM sales, the result works perfectly well but my problem is that I only use the first measure to calculate the second, and the second to calculate the third:
Measure 1:
CombinedColumn = CALCULATE(
'Sales'[Sales Amount] + [Remaining Budget]
)
Measure 2:
Combined LTM = CALCULATE(
[CombinedColumn],
DATESINPERIOD( 'Date'[DateTime],MAX('Date'[DateTime]),-12,MONTH )
)
Measure 3:
Budget LTM =
VAR LastDateWithSales = CALCULATE( MAX ( Sales[PostingDate]), REMOVEFILTERS())
VAR RB_LTM = CALCULATE(
[Combined LTM],
KEEPFILTERS('Date'[DateTime] >= LastDateWithSales)
)
RETURN
RB_LTM
I would really like to combine these three measures into one, this is my attempt at it:
Budget LTM =
VAR LastDateWithSales = CALCULATE( MAX ( Sales[PostingDate]), REMOVEFILTERS())
VAR CombinedColumn = CALCULATE(
'Sales'[Sales Amount] + [Remaining Budget]
)
VAR CombinedLTM = CALCULATE(
CombinedColumn,
DATESINPERIOD( 'Date'[DateTime],MAX('Date'[DateTime]),-12,MONTH)
)
VAR BudgetLTM = CALCULATE(
CombinedLTM,
KEEPFILTERS('Date'[DateTime] >= LastDateWithSales)
)
RETURN
BudgetLTM
I'm fairly new to DAX, so I assume there is something relatively simple I'm missing.
VARiables in DAX are static. They are in fact constants so there's no point doing something like
var Variable = ...
return
calculate(
Variable,
...
)
This will always return the value of the Variable as it was calculated in the first line...
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code FABINSIDER for a $400 discount!
Check out the February 2025 Power BI update to learn about new features.
User | Count |
---|---|
23 | |
12 | |
10 | |
10 | |
10 |
User | Count |
---|---|
17 | |
14 | |
12 | |
11 | |
10 |