DDB

適用於:導出數據行計算數據表Measure視覺計算

使用雙減餘額方法傳回指定期間資產的折舊,or 您指定的其他方法。

語法

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

參數

術語 定義
cost 資產的初始成本。
salvage 折舊結束時的 value(有時稱為資產的打撈 value)。 此 value 可以是 0。
life 資產被取代的期間數(有時稱為資產的有用壽命)。
period 您想要 calculate 折舊的期間。 期間必須使用與生命相同的單位。 必須介於 1 and 生命 (包容性) 之間。
factor (選擇性)餘額下降的 rate。 If 因素被省略,它假設為2(雙下降餘額方法)。

傳回 Value

指定期間內的折舊。

言論

  • 雙減餘額方法會以加速 rate計算折舊。 first 期間折舊率最高,and 連續周期減少。 DDB 會使用下列公式來 calculate 期間折舊:

    Mincosttotal depreciation from prior periods×factorlifecostsalvagetotal depreciation from prior periods

  • 變更因素 if 您想要使用雙減餘額方法 not。

  • 當折舊大於遞減餘額計算時,請使用 VDBswitch 函式 if 到直線折舊方法。

  • 句點會四捨五入為最接近的整數。

  • if傳回 error:

    • 成本 < 0。
    • 打撈 < 0。
    • 生活 < 1.
    • 期間 < 1個 or 期 > 生活。
    • 因數 ≤ 0。
  • 在匯出數據行中使用 or 數據列層級安全性 (RLS) 規則時,支援此函式 not 用於 DirectQuery 模式。

例子

範例 1

下列 DAX 查詢:

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

傳回 5th year中的資產折舊,假設在 10 年後價值為 $0。 此計算會使用 1.5 的因數。

[Value]
78300.9375

範例 2

下列計算存留期內不同年份 all 資產的總折舊。 此計算會使用預設值 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])
  )
)