DB
Si applica a:colonna calcolatatabella calcolataMeasurecalcolo visivo
Restituisce l'ammortamento di un cespite per un periodo specificato utilizzando il metodo di saldo fixedin diminuzione.
Sintassi
DB(<cost>, <salvage>, <life>, <period>[, <month>])
Parametri
Termine | Definizione |
---|---|
cost |
Costo iniziale dell'asset. |
salvage |
Il value alla fine dell'ammortamento (talvolta chiamato recupero value del bene). Questo value può essere 0. |
life |
Numero di periodi in cui viene deprecato l'asset (talvolta chiamato vita utile dell'asset). |
period |
Periodo per il quale si desidera calculate l'ammortamento. Il periodo deve utilizzare le stesse unità di vita. Deve essere compreso tra 1 and vita (inclusiva). |
month |
(Facoltativo) Numero di mesi nel firstyear. If month viene omesso, si presuppone che sia 12. |
Restituisce Value
Ammortamento nel periodo specificato.
Osservazioni
Il metodo fixed-declining balance calcola l'ammortamento in un fixedrate. DB utilizza le formule seguenti per calculate ammortamento per un periodo:
$$(\text{cost} - \text{ammortamento totale dei periodi precedenti}) \times \text{rate}$$
dove:
- $\text{rate} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, arrotondato a tre posizioni decimali}$
L'ammortamento per i periodi di firstandlast è un caso speciale.
Per il periodo di first, DB usa questa formula:
$$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$
Per il periodo di last, DB usa questa formula:
$$\frac{(\text{cost} - \text{ammortamento totale dai periodi precedenti}) \times \text{rate} \times (12 - \text{month})}{12}$$
il periodo andmonth viene arrotondato all'intero più vicino.
Viene restituito un errorif:
- costo < 0.
- salvare < 0.
- vita < 1.
- periodo < 1 or periodo > vita.
- month < 1 ormonth> 12.
Questa funzione è not supportata per l'uso in modalità DirectQuery quando viene usata nelle colonne calcolate or regole di sicurezza a livello di riga.
Esempi
Esempio 1
La query di DAX seguente:
EVALUATE
{
DB(1000000, 0, 6, 1, 2)
}
Restituisce l'ammortamento di un cespite nell'last due mesi del firstyear, presupponendo che valga il valore di \$0 dopo 6 anni.
[Value] |
---|
166666.666666667 |
Esempio 2
Di seguito viene calcolato l'ammortamento totale delle attività all in anni diversi nel corso della loro vita. In questo caso, il firstyear include solo 7 mesi di ammortamento, and il lastyear include solo 5 mesi.
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)
)
)