Compartilhar via


DB

aplica-se a:coluna calculadatabela calculadaMeasurecálculo visual

Retorna a depreciação de um ativo por um período especificado usando o método de saldo fixed-declining.

Sintaxe

DB(<cost>, <salvage>, <life>, <period>[, <month>])

Parâmetros

Prazo Definição
cost O custo inicial do ativo.
salvage O value no final da depreciação (às vezes chamado de value de resgate do ativo). Esse value pode ser 0.
life O número de períodos em que 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. O período deve usar as mesmas unidades que a vida útil. Deve estar entre 1 and vida (inclusive).
month (Opcional) O número de meses no firstyear. If month é omitido, presume-se que seja 12.

Retornar Value

A depreciação durante o período especificado.

Observações

  • O método fixed-declining balance calcula a depreciação em um fixedrate. DB usa as seguintes fórmulas para calculate depreciação por um período:

    $$(\text{cost} - \text{depreciação total de períodos anteriores}) \times \text{rate}$$

    onde:

    • $\text{rate} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, arredondado para três casas decimais}$
  • Depreciação para os períodos de firstandlast é um caso especial.

    • Para o período first, DB usa esta fórmula:

      $$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$

    • Para o período last, DB usa esta fórmula:

      $$\frac{(\text{cost} - \text{depreciação total de períodos anteriores}) \times \text{rate} \times (12 - \text{month})}{12}$$

  • os andmonth de período são arredondados para o inteiro mais próximo.

  • Um error é retornado if:

    • custo < 0.
    • salvamento < 0.
    • vida < 1.
    • período < 1 or período > vida.
    • month < 1 ormonth> 12.
  • Essa função not tem suporte para uso no modo DirectQuery quando usada em colunas calculadas or regras de RLS (segurança em nível de linha).

Exemplos

Exemplo 1

A seguinte consulta DAX:

EVALUATE
{
  DB(1000000, 0, 6, 1, 2)
}

Retorna a depreciação de um ativo no last dois meses do firstyear, supondo que ele valerá \$0 após 6 anos.

[Value]
166666.666666667

Exemplo 2

O seguinte calcula a depreciação total de all ativos em anos diferentes 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)
  )
)