DDB

Применяется к:вычисляемой таблице вычисляемой таблицы Вычисление визуального элемента измерениявычисляемой таблицы

Возвращает амортизацию актива в течение указанного периода с помощью метода двойного снижения баланса или другого метода, который вы указали.

Синтаксис

DDB(<cost>, <salvage>, <life>, <period>[, <factor>])

Параметры

Термин Определение
стоимость Начальная стоимость актива.
Спасти Значение в конце амортизации (иногда называется значением спасения ресурса). Может иметь значение 0.
Жизнь Количество периодов, в течение которых ресурс не рекомендуется (иногда называется полезной жизнью актива).
Период Период, для которого требуется вычислить амортизацию. Период должен использовать те же единицы, что и время жизни. Должно быть от 1 до жизни (включительно).
Фактор (Необязательно) Скорость снижения баланса. Если фактор опущен, предполагается, что значение равно 2 (метод двойного уменьшения баланса).

Возвращаемое значение

Амортизация за указанный период.

Замечания

  • Метод двойного снижения баланса вычисляет амортизацию с ускоренной скоростью. Амортизация является самой высокой за первый период и уменьшается в последующие периоды. DDB использует следующую формулу для вычисления амортизации за период:

    $$\text{Min}(\text{cost} - \text{total амортизация от предыдущих периодов}) \times (\frac{\text{{factor}}{text{life}}),(\text{cost} - \text{salvage} - \text{total амортизация с предыдущих периодов})$$

  • Коэффициент изменения, если вы не хотите использовать метод двойного уменьшения баланса.

  • Используйте функцию VDB, если вы хотите переключиться на метод амортизации прямой линии, если амортизация больше, чем вычисление уменьшения баланса.

  • период округляется до ближайшего целого числа.

  • Если возвращается ошибка:

    • cost < 0.
    • salvage < 0.
    • life < 1.
    • period < 1 или period > life.
    • фактор ≤ 0.
  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Примеры

Пример 1

Следующий запрос DAX:

EVALUATE
{
  DDB(1000000, 0, 10, 5, 1.5)
}

Возвращает значение амортизации актива за 5$^{th}$ лет. Предполагается, что он будет стоить 0 долл. США через 10 лет. Этот расчет использует коэффициент 1,5.

[значение]
78300.9375

Пример 2

Ниже вычислится общая амортизация всех активов в разных годах за их время существования. Этот расчет использует коэффициент по умолчанию 2 (метод двойного уменьшения баланса).

DEFINE
VAR NumDepreciationPeriods = MAX(Asset[LifeTimeYears])
VAR DepreciationPeriods = GENERATESERIES(1, NumDepreciationPeriods)
EVALUATE
  ADDCOLUMNS (
  DepreciationPeriods,
  "Current Period Total Depreciation",
  SUMX (
    FILTER (
      Asset,
      [Value] <= [LifetimeYears]
    ),
    DDB([InitialCost], [SalvageValue], [LifetimeYears], [Value])
  )
)