Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes! Register now.
Hi,
I'm trying to optimise a model that was created by someone else.
The model is complex but I need to convert some calculated columns to measures.
Please advise if calculations that contain EARLIER function can be converted to measures or not?
E.g.
Nperiod =
CALCULATE (
COUNT ( 'Budget'[YearMonth] ),
FILTER (
ALLEXCEPT ( 'Budget', 'Budget'[Budget Period] ),
'Budget'[YearMonth] <= EARLIER ( 'Budget'[YearMonth] )
)
) -1
This is also required because such calculations are used as part of other calculated columns which also need to be converted to measures.
Solved! Go to Solution.
@klehar So yes, they can but it all depends on context. For example, if adding a column to a table using ADDCOLUMNS you can use EARLIER in a measure. In the case you are describing, depending on context, this might work:
Nperiod =
VAR __CurrentBudget = MAX('Budget'[YearMonth])
RETURN
CALCULATE (
COUNT ( 'Budget'[YearMonth] ),
FILTER (
ALLEXCEPT ( 'Budget', 'Budget'[Budget Period] ),
'Budget'[YearMonth] <= __CurrentBudget )
)
) -1
@klehar So yes, they can but it all depends on context. For example, if adding a column to a table using ADDCOLUMNS you can use EARLIER in a measure. In the case you are describing, depending on context, this might work:
Nperiod =
VAR __CurrentBudget = MAX('Budget'[YearMonth])
RETURN
CALCULATE (
COUNT ( 'Budget'[YearMonth] ),
FILTER (
ALLEXCEPT ( 'Budget', 'Budget'[Budget Period] ),
'Budget'[YearMonth] <= __CurrentBudget )
)
) -1