Calculation groups
Calculation groups giải bài toán “bùng nổ measure”: thay vì tạo YTD, YoY, MTD… cho từng measure, bạn định nghĩa logic một lần và áp cho mọi measure.
Vấn đề
Phần tiêu đề “Vấn đề”Có 10 measure (Sales, Cost, Profit…) và cần mỗi cái ở dạng Current, YTD, YoY%, MoM → 40 measure. Bảo trì ác mộng.
Giải pháp: calculation group
Phần tiêu đề “Giải pháp: calculation group”Định nghĩa calculation items một lần:
-- Calculation item "YTD"CALCULATE ( SELECTEDMEASURE (), DATESYTD ( 'Date'[Date] ) )
-- Calculation item "YoY %"VAR _cur = SELECTEDMEASURE ()VAR _ly = CALCULATE ( SELECTEDMEASURE (), SAMEPERIODLASTYEAR ( 'Date'[Date] ) )RETURN DIVIDE ( _cur - _ly, _ly )SELECTEDMEASURE()là placeholder cho measure mà người dùng đang xem.- Một calculation group “Time Calc” với các item Current/YTD/YoY áp cho bất kỳ measure nào.
Cách dùng trong báo cáo
Phần tiêu đề “Cách dùng trong báo cáo”- Calculation group hiện như một slicer/field (vd “Time Calc”).
- Người dùng chọn “YTD” → mọi measure trên visual chuyển sang YTD.
Lợi ích
Phần tiêu đề “Lợi ích”| Không có calc group | Có calc group |
|---|---|
| 40 measure trùng logic | 10 measure + vài item |
| Sửa logic = sửa 10 nơi | Sửa một item |
| Field list rối | Gọn gàng |