DB
gjelder:beregnet kolonneberegnet tabellmålevisualobjektberegning
Returnerer avskrivningen for et aktivum for en angitt periode ved hjelp av metoden fast degressiv avskrivning.
Syntaks
DB(<cost>, <salvage>, <life>, <period>[, <month>])
Parametere
Vilkår | Definisjon |
---|---|
cost |
Den opprinnelige kostnaden for aktivumet. |
salvage |
Verdien på slutten av avskrivningen (noen ganger kalt restverdi for aktivumet). Denne verdien kan være 0. |
life |
Antall perioder aktivumet avskrives over (noen ganger kalt aktivumets levetid). |
period |
Perioden du vil beregne avskrivningen for. Perioden må bruke de samme enhetene som levetid. Må være mellom 1 og livet (inklusive). |
month |
(Valgfritt) Antall måneder i det første året. Hvis måned utelates, antas det å være 12. |
Returverdi
Avskrivningen over den angitte perioden.
Merknader
Metoden fast degressiv avskrivning beregner avskrivning til en fast rente. DB bruker følgende formler til å beregne avskrivning for en periode:
$$(\text{cost} - \text{total depreciation from prior periods}) \times \text{rate}$$
hvor:
- $\text{rate} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, avrundet til tre desimaler}$
Avskrivning for første og siste perioder er et spesielt tilfelle.
For den første perioden bruker DB denne formelen:
$$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$
For den siste perioden bruker DB denne formelen:
$$\frac{(\text{cost} – \text{total depreciation from prior periods}) \times \text{rate} \times (12 - \text{month})}{12}$$
perioden og måneden avrundes til nærmeste heltall.
En feil returneres hvis:
- kostnad < 0.
- berging < 0.
- livet < 1.
- periode < 1 eller periode > levetid.
- måned < 1 eller måned > 12.
Denne funksjonen støttes ikke for bruk i DirectQuery-modus når den brukes i beregnede kolonner eller regler for sikkerhet på radnivå (RLS).
Eksempler
Eksempel 1
Følgende DAX spørring:
EVALUATE
{
DB(1000000, 0, 6, 1, 2)
}
Returnerer et aktivums avskrivning de siste to månedene av det første året, forutsatt at det vil være verdt \$0 etter 6 år.
[Verdi] |
---|
166666.666666667 |
Eksempel 2
Nedenfor beregner den totale avskrivningen for alle aktiva i ulike år i løpet av levetiden. Her inkluderer det første året bare 7 måneder med avskrivning, og det siste året inkluderer bare 5 måneder.
DEFINE
VAR NumDepreciationPeriods = MAX(Asset[LifeTimeYears])+1
VAR DepreciationPeriods = GENERATESERIES(1, NumDepreciationPeriods)
EVALUATE
ADDCOLUMNS (
DepreciationPeriods,
"Current Period Total Depreciation",
SUMX (
FILTER (
Asset,
[Value] <= [LifetimeYears]+1
),
DB([InitialCost], [SalvageValue], [LifetimeYears], [Value], 7)
)
)