cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Frequent Visitor

## How to combine several measures into one

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.

Solution Sage

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...

Announcements

#### Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.