Chào các Thầy, em có một bài toán cần tính doanh thu tích lũy các tháng. Tháng bắt đầu là 10/2020 và tháng kết thúc là 9/2021, ngày cập nhật doanh thu sẽ được ghi cụ thể vào cột update. Trong quá trình có cập nhật dữ liệu và các dữ liệu mới sẽ không đè lên dữ liệu cũ mà được cập nhật một dòng mới. với trường hợp 1 tháng mà có 2 dòng doanh thu, mình sẽ chỉ tính doanh thu của dòng mà được cập nhật mới nhất.
Nhờ các thầy, các bạn hỗ trợ em chỗ này.
đây là link dữ liệu:
https://drive.google.com/drive/folder...
Em cảm ơn.
Hi bạn,
Bài toán của bạn khá phức tạp đó. Phải dùng các kiến thức nâng cao về DAX.
- Ở đây, đầu tiên mình phải dùng 1 DAX để tạo 1 cột Xếp hạng, nếu chỉ update 1 lần, các giá trị đều là 1. Nhưng nếu update 2 lần, thì xếp hàng gần nhất là 1.

- Sau khi có cột Rank này, mình sẽ dùng Calculate cơ bản là ra thôi: ActualSales = Calculate(sum(sales),Rank=1)
Sau đó bạn tạo Pivot, với ActualSales ở Value, Tháng ở Column là được nhé
Nhìn vào DAX của giảng viên là thấy phức tạp rồi, hy vọng mình sẽ làm được. Vì khóa học này ở cấp độ cơ bản, mà khi làm việc nó lại không cơ bản, nên gặp khó khăn liên tục. Hy vọng, giảng viên sẽ sớm ra những khóa học nâng cao để nhưng vấn đề này trở thanh cơ bản.
Cảm ơn giảng viên nhiều nha.
Giảng viên cho em hỏi chỗ DAX mà giảng viên ghi
calculate(rank,eq(b,data2[update],Desc),filter(all(data2),data2[date]=a))
Vì sao chỗ này mình cẫn phải filer data2[data]=a, nó có tác dụng gì vậy?
Phần đó nó giúp chúng ta xác định được phần Date lặp lại đó bạn. Chúng ta tạo ra 1 biến ảo là a, sau đó so sánh chính các giá trị trong cột với biến ảo đó và vòng lặp chạy liên tục, khi date = a thì nó dừng và tạo filter, hơi phức tạp xíu. Nếu bạn sử dụng được tiếng anh, bạn tham khảo thêm trang này, có rất nhiều hướng dẫn thêm về DAX gán với các case thực tế: https://dax