DB
A következőkre vonatkozik:Számított oszlop
Számított tábla
Mérték
Vizualizációszámítási
Egy eszköz értékcsökkenését adja vissza egy meghatározott időszakra a rögzített degresszív egyenleg módszerével.
Szintaxis
DB(<cost>, <salvage>, <life>, <period>[, <month>])
Paraméterek
Kifejezés | Definíció |
---|---|
cost |
Az eszköz kezdeti költsége. |
salvage |
Az értékcsökkenés végén lévő érték (más néven az eszköz maradványértéke). Ez az érték lehet 0. |
life |
Azoknak az időszakoknak a száma, amelyek során az eszköz értékcsökkenése elértéktelenedik (más néven az eszköz hasznos élettartama). |
period |
Az az időszak, amelyre ki szeretné számítani az értékcsökkenést. Az időszaknak ugyanazokat az egységeket kell használnia, mint az élet. Az 1 és az élet közötti értéknek kell lennie (a befogadót is beleértve). |
month |
(Nem kötelező) Az első év hónapjainak száma. Ha a hónap nincs megadva, akkor a rendszer 12-et feltételez. |
Visszaadott érték
A megadott időszak értékcsökkenése.
Megjegyzések
A rögzített degresszív egyenleg módszer rögzített árfolyamon számítja ki az értékcsökkenést. DB az alábbi képletekkel számítja ki az értékcsökkenést egy adott időszakra vonatkozóan:
$$(\text{cost} – \text{total depreciation from prior periods}) \times \text{rate}$$
hol:
- $\text{rate} = 1 – ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, három tizedesjegyre kerekítve}$
Az első és az utolsó időszak értékcsökkenése különleges eset.
Az első időszakban DB a következő képletet használja:
$$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$
Az utolsó időszakban DB a következő képletet használja:
$$\frac{(\text{cost} – \text{total depreciation from prior periods}) \times \text{rate} \times (12 – \text{month})}{12}$$
az időszak és a hónap a legközelebbi egész számra van kerekítve.
Hiba jelenik meg, ha:
- költség < 0.
- mentés < 0.
- élet < 1.
- < 1 vagy > élet.
- hónap < 1 vagy > 12.
Ez a függvény nem támogatott DirectQuery módban, ha számított oszlopokban vagy sorszintű biztonsági (RLS) szabályokban használják.
Példák
1. példa
A következő DAX lekérdezés:
EVALUATE
{
DB(1000000, 0, 6, 1, 2)
}
Egy eszköz értékcsökkenését adja vissza az első év utolsó két hónapjában, feltéve, hogy 6 év után \0 usd értékű lesz.
[Érték] |
---|
166666.666666667 |
2. példa
Az alábbiakban az összes eszköz teljes értékcsökkenését számítjuk ki különböző években az élettartamuk során. Itt az első év csak 7 hónap értékcsökkenést tartalmaz, az utolsó év pedig csak 5 hónapot tartalmaz.
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)
)
)