Forum Discussion
nankerp
8 years agoHelper III
Linear Depreciation - DAX
Im looking for a formula that can calculate linear depreciation (Capex divided years). Are there any who have tips about making formula in DAX that can manage this?
- 8 years ago
based on the originals tables you posted this should work, I'm assuming second table is named Parameter
Depreciation = VAR License = Inputtabel[License] VAR CurrentYear = Inputtabel[Year] VAR NrOfDeprYears = RELATED ( Parameter[Year depreciation] ) VAR CapexToDate = ADDCOLUMNS ( FILTER ( Inputtabel, Inputtabel[License] = License && Inputtabel[Year] <= CurrentYear && NOT ( ISBLANK ( Inputtabel[Capex] ) ) ), "NrOfYearsDepr", RELATED ( Parameter[Year depreciation] ) ) VAR FullCapexPerYear = FILTER ( GENERATE ( CapexToDate, GENERATESERIES ( [Year], [Year] + RELATED ( Parameter[Year depreciation] ) - 1, 1 ) ), [Value] = CurrentYear ) RETURN SUMX ( FullCapexPerYear, [Capex] / [NrOfYearsDepr] )
nankerp
8 years agoHelper III
Thank you very much. I have to spend some time to learn this formula but it look very interesting.
Stachu
8 years agoCommunity Champion
based on the originals tables you posted this should work, I'm assuming second table is named Parameter
Depreciation =
VAR License = Inputtabel[License]
VAR CurrentYear = Inputtabel[Year]
VAR NrOfDeprYears =
RELATED ( Parameter[Year depreciation] )
VAR CapexToDate =
ADDCOLUMNS (
FILTER (
Inputtabel,
Inputtabel[License] = License
&& Inputtabel[Year] <= CurrentYear
&& NOT ( ISBLANK ( Inputtabel[Capex] ) )
),
"NrOfYearsDepr", RELATED ( Parameter[Year depreciation] )
)
VAR FullCapexPerYear =
FILTER (
GENERATE (
CapexToDate,
GENERATESERIES (
[Year],
[Year] + RELATED ( Parameter[Year depreciation] )
- 1,
1
)
),
[Value] = CurrentYear
)
RETURN
SUMX ( FullCapexPerYear, [Capex] / [NrOfYearsDepr] )- nankerp8 years agoHelper III
Thank you so much. I understand the formula and it will work.