DB
Aplica-se a:Coluna calculadaTabela calculadaMeasureCálculo visual
Devolve a depreciação de um ativo durante um período especificado utilizando o método fixed-decrescente do saldo.
Sintaxe
DB(<cost>, <salvage>, <life>, <period>[, <month>])
Parâmetros
Vigência | Definição |
---|---|
cost |
O custo inicial do ativo. |
salvage |
O value no final da depreciação (às vezes chamado de value de salvamento do ativo). Este value pode ser 0. |
life |
O número de períodos durante os quais o ativo está sendo depreciado (às vezes chamado de vida útil do ativo). |
period |
O período para o qual você deseja calculate a depreciação. Período deve usar as mesmas unidades que a vida. Deve ter entre 1 and vida (inclusive). |
month |
(Opcional) O número de meses no firstyear. If month é omitido, presume-se que seja 12. |
Regresso Value
A depreciação durante o período especificado.
Comentários
O método do saldo decrescente fixedcalcula a depreciação a um fixedrate. DB usa as seguintes fórmulas para calculate a depreciação por um período:
$$(\text{cost} - \text{Depreciação total de períodos anteriores}) \times \text{rate}$$
em que:
- $\text{rate} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, arredondado para três casas decimais}$
A depreciação para os períodos firstandlast é um caso especial.
Para o first período, DB usa esta fórmula:
$$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$
Para o last período, DB usa esta fórmula:
$$\frac{(\text{cost} - \text{Depreciação total de períodos anteriores}) \times \text{rate} \times (12 - \text{month})}{12}$$
período andmonth são arredondados para o número inteiro mais próximo.
Uma error é devolvida if:
- custo < 0.
- salvamento < 0.
- vida < 1.
- período < 1 or período > vida.
- month < 1 ormonth> 12.
Esta função not é suportada para uso no modo DirectQuery quando usada em colunas calculadas or regras de segurança em nível de linha (RLS).
Exemplos
Exemplo 1
O seguinte DAX consulta:
EVALUATE
{
DB(1000000, 0, 6, 1, 2)
}
Devolve a depreciação de um ativo nos last dois meses do firstyear, assumindo que valerá \$0 após 6 anos.
[Value] |
---|
166666.666666667 |
Exemplo 2
Calcula-se a seguir a depreciação total de all ativos em diferentes anos ao longo de suas vidas. Aqui, o firstyear inclui apenas 7 meses de depreciação, and o lastyear inclui apenas 5 meses.
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)
)
)