Bỏ qua để đến nội dung

Measure

Measure là một phép tính có tên, như tổng doanh thu hay giá trung bình. Measure được tính lại cho từng visual, từng cột biểu đồ và từng dòng, theo các bộ lọc đang áp dụng ở đó. Measure nằm trong data model, nên mọi report dùng data model đó đều dùng được.

  • Bạn cần một data model có ít nhất một bảng. Xem Data model.
  • Muốn tạo hoặc sửa measure, bạn cần quyền Build trên data model. Không có quyền này, bạn chỉ xem được.
  1. Mở data model.
  2. Bấm tab Measure.
  3. Bấm Measure mới.
  4. Nhập Tên (tối đa 128 ký tự).
  5. Chọn Bảng chứa. Trong report, measure nằm dưới bảng này.
  6. Gõ Biểu thức. Ví dụ: SUM(Orders[Amount]).
  7. Tùy chọn: điền Thư mục hiển thị, Định dạng số và Mô tả.
  8. Tùy chọn: tích Ẩn khỏi người xem báo cáo.
  9. Bấm Kiểm tra (hoặc nhấn Ctrl+Enter, hay Cmd+Enter trên Mac).
  10. Bấm Lưu.

Lưu bản nháp và xuất bản data model để report dùng measure mới. Xem Data model.

Fresco BI kiểm tra biểu thức ngay sau khi bạn ngừng gõ:

  • Hợp lệ, kèm kiểu kết quả.
  • Hoặc số lỗi, kèm dòng và cột của từng lỗi. Lỗi được gạch chân trong biểu thức.

Định dạng số quyết định cách hiển thị giá trị. Dùng:

  • 0 cho chữ số luôn hiện,
  • # cho chữ số chỉ hiện khi cần,
  • , cho dấu phân cách hàng nghìn,
  • . cho phần thập phân,
  • % để hiện tỉ lệ thành phần trăm (0.41 hiện thành 41%),
  • chữ bất kỳ đặt trước hoặc sau số, ví dụ ký hiệu tiền tệ.
Định dạng 1234.5 hiện thành
#,##0 1.235
#,##0.00 1.234,50
#,##0 ₫ 1.235 ₫
Định dạng 0.415 hiện thành
0.0% 41,5%

Dấu phân cách hàng nghìn và thập phân theo ngôn ngữ hiển thị.

Tab Measure liệt kê mọi measure với Tên, Công thức, Thư mục hiển thị, Định dạng số và Bảng chứa.

  • Gõ vào ô tìm kiếm để tìm measure.
  • Dùng Thư mục hiển thị để lọc theo thư mục.
  • Bấm Sửa để thay đổi measure, hoặc Xóa để xóa.

Các nhãn trong danh sách:

  • Ẩn: measure bị ẩn khỏi người xem báo cáo.
  • Cần viết lại: measure được chuyển từ công cụ BI khác nhưng chưa dịch được. Nó trả về trống. Biểu thức gốc nằm trong phần mô tả.
Thành phần Cách viết
Một cột Orders[Amount]
Cột của bảng có dấu cách trong tên 'Order lines'[Quantity]
Một measure khác [Total sales]
Chuỗi "North"
Số 100, 0.5

Cột phải nằm trong một hàm gộp, ví dụ SUM(Orders[Amount]). Measure dùng được measure khác, nhưng các measure không được tham chiếu vòng tròn.

Toán tử Ý nghĩa
+ - * / Cộng, trừ, nhân, chia
= hoặc ==, <>, <, <=, >, >= So sánh
IN { ... } Giá trị nằm trong danh sách, ví dụ Orders[Region] IN { "North", "South" }. Tối đa 1.000 giá trị.
&& Và
|| Hoặc

Dùng VAR để đặt tên cho một phần biểu thức, rồi RETURN kết quả:

VAR Sales = SUM(Orders[Amount])
VAR Cost = SUM(Orders[Cost])
RETURN DIVIDE(Sales - Cost, Sales)

Thêm chú thích bằng //, -- hoặc /* ... */.

SUM(Orders[Amount])
COUNTROWS(Orders)
DIVIDE([Total sales], SUM(Orders[Quantity]))
CALCULATE([Total sales], Orders[Region] = "North")
CALCULATE([Total sales], ALL(Customers))
SUMX(Orders, Orders[Quantity] * RELATED(Products[Price]))

Đây là toàn bộ các hàm bạn dùng được trong measure.

Hàm Công dụng
SUM(column) Cộng các số.
AVERAGE(column) Trung bình các số.
MIN(column) Số hoặc ngày nhỏ nhất.
MAX(column) Số hoặc ngày lớn nhất.
COUNT(column) Số giá trị không trống.
COUNTROWS(table) Số dòng.
DISTINCTCOUNT(column) Số giá trị khác nhau, tính cả giá trị trống.
DISTINCTCOUNTNOBLANK(column) Số giá trị khác nhau, không tính giá trị trống.

Các hàm này duyệt một bảng theo từng dòng, tính biểu thức cho mỗi dòng, rồi gộp kết quả.

Hàm Công dụng
SUMX(table, expression) Tổng của biểu thức trên các dòng.
AVERAGEX(table, expression) Trung bình của biểu thức trên các dòng.
MINX(table, expression) Kết quả nhỏ nhất.
MAXX(table, expression) Kết quả lớn nhất.
COUNTX(table, expression) Số dòng có kết quả không trống.
RELATED(column) Giá trị từ bảng liên quan ở phía một. Dùng bên trong SUMX và các hàm X khác.
Hàm Công dụng
CALCULATE(expression, filter, ...) Tính biểu thức với các bộ lọc đã cho. Bộ lọc trên một cột thay bộ lọc đang có trên cột đó. Cần ít nhất một bộ lọc.
FILTER(table, condition) Các dòng thỏa một điều kiện trên một cột của bảng. Dùng bên trong CALCULATE.
ALL(table or column, ...) Bỏ các bộ lọc trên bảng hoặc trên các cột. Dùng bên trong CALCULATE.
REMOVEFILTERS(table or column, ...) Giống ALL. Dùng bên trong CALCULATE.
ALLEXCEPT(table, column, ...) Bỏ các bộ lọc trên bảng, trừ các cột được liệt kê. Dùng bên trong CALCULATE.
KEEPFILTERS(filter) Giữ bộ lọc đang có trên cột thay vì thay thế nó. Dùng bên trong CALCULATE.
VALUES(column) Các giá trị của cột. Dùng bên trong FILTER.
DISTINCT(column) Các giá trị khác nhau của cột. Dùng bên trong FILTER.
HASONEVALUE(column) Đúng khi cột còn đúng một giá trị theo các bộ lọc hiện tại.
SELECTEDVALUE(column[, alternate]) Giá trị khi chỉ còn đúng một giá trị, nếu không thì trống hoặc giá trị thay thế.
Hàm Công dụng
IF(condition, then[, else]) Trả về giá trị này hoặc giá trị kia theo điều kiện.
SWITCH(expression, value, result, ...[, else]) Kết quả của giá trị khớp đầu tiên.
AND(logical1, logical2) Đúng khi cả hai đều đúng. Nhận đúng hai giá trị; dùng && khi cần nhiều hơn.
OR(logical1, logical2) Đúng khi một trong hai đúng. Nhận đúng hai giá trị; dùng || khi cần nhiều hơn.
NOT(logical) Đổi đúng thành sai và sai thành đúng.
ISBLANK(value) Đúng khi giá trị trống.
COALESCE(value, value, ...) Giá trị đầu tiên không trống. Nhận hai giá trị trở lên.
BLANK() Giá trị trống.
TRUE() Đúng.
FALSE() Sai.
Hàm Công dụng
DIVIDE(numerator, denominator) Phép chia. Trả về trống khi mẫu số bằng 0 hoặc trống.
ABS(number) Giá trị tuyệt đối.
ROUND(number, digits) Làm tròn tới số chữ số đã cho (số nguyên từ -18 đến 18). Số ở giữa được làm tròn ra xa số 0.
DATE(year, month, day) Một ngày. Năm, tháng, ngày phải là số nguyên viết thẳng trong biểu thức, ví dụ DATE(2026, 1, 31).

Các hàm sau chưa được hỗ trợ. Nếu bạn dùng, bước kiểm tra sẽ báo lỗi.

RANKX, ALLSELECTED, USERELATIONSHIP, CROSSFILTER, RELATEDTABLE, ISFILTERED, TOTALYTD, TOTALQTD, TOTALMTD, DATESYTD, DATESQTD, DATESMTD, SAMEPERIODLASTYEAR, DATEADD, DATESINPERIOD, PREVIOUSMONTH, PREVIOUSQUARTER, PREVIOUSYEAR, FORMAT, CONCATENATE, COUNTA, COUNTBLANK, IFERROR, MEDIAN, TODAY, NOW, YEAR, MONTH, DAY.

Mục Giới hạn
Measure trong một data model 2.000
Độ dài biểu thức 8.000 ký tự
Tên 128 ký tự
Thư mục hiển thị và định dạng số Mỗi mục 256 ký tự
Mô tả 2.000 ký tự
Giá trị trong danh sách IN { ... } 1.000
Độ lồng nhau 64 cấp
Thông báo Cách xử lý
Cột phải nằm trong một hàm gộp Bọc cột trong hàm gộp, ví dụ SUM(Orders[Amount]).
Hàm này chỉ dùng được bên trong CALCULATE Đưa hàm vào trong CALCULATE.
Các measure tham chiếu vòng tròn Bỏ vòng lặp giữa các measure.
Không tìm thấy cột Kiểm tra tên bảng và tên cột.
Không tìm thấy hàm Kiểm tra chính tả, hoặc xem Chưa hỗ trợ.
Biểu thức lồng quá sâu Tách biểu thức thành nhiều measure.

Measure dùng được measure khác không? Được. Viết tên measure kia trong ngoặc vuông, ví dụ [Total sales]. Các measure không được tham chiếu vòng tròn.

Sao measure của tôi hiện trống? Kiểm tra data model đã xuất bản và các Data Table đã được làm mới. Measure có nhãn Cần viết lại luôn trả về trống cho tới khi bạn viết lại.