Compare value to last year in Power BI (SAMEPERIODLASTYEAR dax)


18/06/2021- duocnt    1006 Views    

MỤC ĐÍCH

Hướng dẫn sử dụng function DAX tính số liệu để so sánh với năm trước của năm được chọn trong Power BI.

HÌNH DEMO.


DỮ LIỆU

  • Trong ví dụ này, dữ liệu được lấy từ table SalesOrderHeader của database sample AdventureWorks2014.
  • Store procedure
create proc SalesOrderHeader
as
begin
SELECT [SalesOrderNumber]
      ,[OrderDate]     
      ,[SubTotal] as 'ThisYearSales'
  FROM [AdventureWorks2014].[Sales].[SalesOrderHeader] a
 
end




THỰC HIỆN

  • Sau khi kết nối tới Database và gọi store procedure ở trên, chúng to sẽ có table trong Power BI với những field:

        -    Order date.

        -    SalesOrderNumber.

        -    ThisYearSales.


Tiến hành thực hiện tạo report Power BI Compare to last year.

Step 1: Tạo "New measure" với name "MThisYearSales".

  • Right-click vào table "CompareToLastYear".
  • Chọn "New measure".


  • Nhập vào thanh công thức như sau
    MThisYearSales = SUM(CompareToLastYear[ThisYearSales]).




Step 2: Tạo "New measure" với name "LastYearSales".

  • Right-click vào table "CompareToLastYear".
  • Chọn "New measure".



  • Nhập vào thanh công thức đoạn lệnh DAX như sau.

    LastYearSales = CALCULATE([MThisYearSales],SAMEPERIODLASTYEAR(CompareToLastYear[OrderDate].[Date]))





Step 3: Tạo Chart.

  • Chọn "Clustered Column Chart" trong "Visualizations".



  • Kéo field "OrderDate" thả vào "Axis" của column chart.


  • Click vào  của Axis "OrderDate" và chọn "Date Hierachy".


  • Xóa "Year", "Quarter", "Day", để lại "Month".


  • Lần lượt kéo "LastYearSales" và "ThisYearSales" thả vào "Values".


  • Chart sẽ như sau


Step 4: Format Chart.

  • Chọn chart và click .


  • Chọn "ON" cho "Data labels".
  • Chọn "Millions" cho "Display units".


  • Chọn màu trong "Data colors" như hình.


  • Set "Off" cho "Title" .


  • Chọn "Top Center" cho "Position" trong section "Legend".


  • Chart sau khi được format những bước trên.


Step 5: Tạo slider với "OrderDate" để filter theo năm.

    -    Chúng ta cần tạo thêm 1 slider với dữ liệu là "OrderDate" để có thể filter dữ liệu theo từng năm để có thể theo dõi cụ thể hơn.

  • Chọn "Slider trong Visualizations.


  • Kéo "OrderDate" từ table và thả vào "Field" của "Slider".


  • Click vào  của "OderDate" trong "Field" và chọn "Date Hierachy".


  • Xóa "Quarter", "Month" và "Day", chỉ để lại "Year".


  • Chọn  và chọn "Horizontal" cho "Orientation" trong section "General".


  • Sau khi format "Slider" và "Table", Power BI sẽ như sau:


    -    Mỗi tháng trong Chart sẽ có 2 cột, 1 cột là dữ liệu năm được chọn, 1 cột là dữ liệu của năm trước đó.

    -    Như vậy, chúng ta đã hoàn thành 1 report Power BI để có thể so sánh giá trị nào đó của từng tháng trong năm hiện tại với từng tháng của năm trước.

    -    Chúc các bạn thành công.

Góp ý kiến

;
;