DB
นําไปใช้กับ: คอลัมน์จากการคํานวณตารางจากการคํานวณMeasureการคํานวณวิชวล
ส่งกลับค่าเสื่อมราคาของสินทรัพย์สําหรับรอบระยะเวลาที่ระบุ โดยใช้วิธีการคิดค่าเสื่อมราคาแบบลดลง fixed
วากยสัมพันธ์
DB(<cost>, <salvage>, <life>, <period>[, <month>])
พารามิเตอร์
เทอม | นิยาม |
---|---|
cost |
ค่าใช้จ่ายเริ่มต้นของสินทรัพย์ |
salvage |
value ในตอนท้ายของค่าเสื่อมราคา (บางครั้งเรียกว่ามูลค่าซาก value ของสินทรัพย์) value นี้สามารถเป็น 0 ได้ |
life |
จํานวนของรอบระยะเวลาที่มีการคิดค่าเสื่อมราคาสินทรัพย์ (บางครั้งเรียกว่าอายุการใช้งานของสินทรัพย์) |
period |
รอบระยะเวลาที่คุณต้องการ calculate ค่าเสื่อมราคา รอบระยะเวลาต้องใช้หน่วยเดียวกับอายุการใช้งาน ต้องอยู่ระหว่าง 1 and ชีวิต (รวม) |
month |
(ไม่บังคับ) จํานวนเดือนใน firstyear If month ถูกเว้นไว้ ระบบจะสันนิษฐานว่าเป็น 12 |
Value ผลลัพธ์
ค่าเสื่อมราคาในช่วงเวลาที่ระบุ
หมาย เหตุ
วิธีการคิดค่าเสื่อมราคาแบบลดลง fixedจะคํานวณค่าเสื่อมราคาที่ fixedrate DB ใช้สูตรต่อไปนี้เพื่อ calculate ค่าเสื่อมราคาสําหรับรอบระยะเวลา:
$$(\text{cost} - \text{total depreciation from prior periods}) \times \text{rate}$$
ที่ไหน:
- $\text{rate} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, rounded to three decimal places}$
ค่าเสื่อมราคาสําหรับรอบระยะเวลา firstandlast เป็นกรณีพิเศษ
สําหรับรอบระยะเวลา firstDB ใช้สูตรนี้:
$$\frac{\text{cost} \times \text{rate} \times \text{month}}{12}$$
สําหรับรอบระยะเวลา lastDB ใช้สูตรนี้:
$$\frac{(\text{cost} - \text{total depreciation from prior periods}) \times \text{rate} \times (12 - \text{month})}{12}$$
and month รอบระยะเวลาถูกปัดเศษเป็นจํานวนเต็มที่ใกล้ที่สุด
ifแสดง error :
- ราคา < 0
- < ซาก 0
- อายุการใช้งาน < 1
- รอบระยะเวลา < อายุ > รอบระยะเวลา or 1
- month < 1 ormonth> 12
ฟังก์ชันนี้ not ได้รับการสนับสนุนสําหรับการใช้งานในโหมด DirectQuery เมื่อใช้ในคอลัมน์จากการคํานวณ or กฎการรักษาความปลอดภัยระดับแถว (RLS)
ตัว อย่าง เช่น
ตัวอย่างที่ 1
คิวรี DAX ต่อไปนี้:
EVALUATE
{
DB(1000000, 0, 6, 1, 2)
}
ส่งกลับค่าเสื่อมราคาของสินทรัพย์ใน last สองเดือนของ firstyearโดยสมมติว่าจะมีมูลค่า \$0 หลังจาก 6 ปี
[Value] |
---|
166666.666666667 |
ตัวอย่างที่ 2
ต่อไปนี้จะคํานวณค่าเสื่อมราคารวมของสินทรัพย์ all ในปีต่างๆ ตลอดอายุการใช้งาน ที่นี่ firstyear รวมค่าเสื่อมราคาเพียง 7 เดือน andlastyear รวมเพียง 5 เดือนเท่านั้น
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)
)
)