Về mặt kỹ thuật, bạn không cần các Calendar Table (bảng lịch) trong Power BI. Bởi vì phần mềm này được đi kèm với khả năng ghi lịch có sẵn được gọi là “Auto Time Intelligence”. Nhưng tính năng sẵn có thì rất cơ bản, nó còn có một số tác dụng phụ tiêu cực. Trong bài viết này, chúng ta sẽ cùng tìm hiểu cách để xây dựng bảng lịch trong tối ưu hơn trong Power BI.
1. Auto Time Intelligence
Tính năng Auto Time Intelligence là cách Microsoft dễ dàng “tổng hợp” ngày tháng thành các khái niệm Months, Quarters và Years. Tính năng này được khởi động mặc định. Bạn có thể tìm (và thay đổi) cài đặt này trong Power BI Desktop bằng cách chọn File\Options và Settings\Options như ảnh bên dưới. Trong phần Global\Data Load bạn có thể bật/tắt tính năng này.
Bạn cũng có thể đến Current File\Data Load và bật hoặc tắt nó chỉ cho workbook đang hoạt động như ảnh dưới.
Có thể nói, Auto Time Intelligence rất cơ bản trong khả năng của nó và nó có một số vấn đề như:
- Nó chỉ hoạt động theo năm dương lịch (không có năm tài chính, trừ khi bạn may mắn có năm tài chính là năm dương lịch).
- Nó luôn ở mức độ chi tiết trong ngày.
- Nó chỉ cuộn lên từ ngày đến tháng, quý và năm. Không có việc xử lý tuần hoặc chu kỳ ba tháng hay lịch ISO (445) hoặc bất kỳ khoảng thời gian nào khác.
- Nó sẽ tạo ra một bảng lịch ẩn cho mỗi cột ngày trong báo cáo của bạn. Thực tế này có thể làm cho kích thước workbook lớn hơn rất nhiều.
- Mỗi bảng lịch là độc lập, không có cách nào để lập mô hình một slicer đơn để lọc nhiều cột ngày tháng dù điều này có thể thực hiện trong UI bằng cách nhóm các slicer.
Tính năng tự động này thực sự hướng đến những người mới bắt đầu và không muốn học cách mô hình hóa dữ liệu của họ. Vì thế, bạn nên tắt tính năng này và thay vào đó là xây dựng bảng lịch của riêng mình.
2. Những nguyên nhân nên sử dụng Calendar Table trong Power BI
Có rất nhiều lý do mà bạn nên tạo bảng lịch của riêng mình, dưới đây là một vài trong số đó:
- Dùng sức mạnh bộ lọc của Power BI để làm cho báo cáo của bạn nhanh và linh hoạt bằng cách truy cập các cột dữ liệu có liên quan tạo thành một phần của bảng lịch.
- Lọc báo cáo theo thuộc tính như Year (năm), Month (tháng), Quarter (quý) trên nhiều bảng dữ liệu bạn cần (ví dụ Actual Sales, Budget Sales, Stock on Hand) cũng như bất kỳ tổng hợp nào bạn cần cho doanh nghiệp của mình.
- Tạo view tùy chỉnh về thời gian khác với lịch tiêu chuẩn hoặc tạo ra định nghĩa của riêng bạn về năm tài chính.
- Tạo bảng lịch cho các khoảng thời gian không cấp độ “ngày”, ví dụ Month, Year, Minute,….
- Xây dựng các khái niệm như bảng lịch thông minh về thời gian. Những thứ này có thể sử dụng để cho phép người dùng chọn khoảng thời gian từ một slicer (ví dụ Today, Yesterday, This Week, Last Year) và báo cáo tự động cập nhật để phản ánh khoảng thời gian đó.
Trong một vài trường hợp, bạn chỉ cần một bảng lịch:
- Nếu bạn muốn dùng một số chức năng thời gian thông minh sẵn có nâng cao hơn trong DAX (như doanh số bán hàng 13 tuần liên tiếp).
- Tải và báo cáo về dữ liệu không ở cấp độ chi tiết trong ngày.
- Nếu bạn tải bảng lịch chuẩn trong Power BI, bạn có thể sử dụng các chức năng thời gian thông minh sẵn có. Có nhiều cách khác nhau để tạo ra các công thức thời gian thông minh ngoài các hàm có sẵn nhưng nhìn chung DAX phức tạp hơn một chút.
3. Quy tắc cho Standard Power BI Calendar Table
Dưới đây là các quy tắc để xây dựng một Standard Calendar Table (bảng lịch chuẩn). Bạn phải tuân theo các quy tắc này nếu bạn muốn dùng các chức năng thời gian thông minh. Bạn không cần tuân thủ các quy tắc này nếu không cần hoặc không muốn sử dụng các chức năng thời gian thông minh có sẵn (nhưng nó vẫn là một phương pháp hay, đặc biệt nếu dữ liệu của bạn ở mức độ chi tiết trong ngày).
Bạn phải có một cột ngày tháng trong bảng lịch.
Các ngày trong cột này phải nằm trong một phạm vi liền kề bao gồm toàn bộ khoảng thời gian dữ liệu của bạn từ ngày đầu tiên của năm đầu tiên dữ liệu của bạn đến ngày cuối cùng của năm cuối cùng của dữ liệu của bạn:
Không thiếu ngày, không thành vấn đề nếu bạn không làm việc vào ngày cuối tuần, bạn phải đưa tất cả các ngày vào bảng lịch kể cả ngày cuối tuần.
Không có ngày trùng lặp.
- Bảng lịch có thể được đánh dấu là “bảng ngày” (chỉ định cột ngày khi được nhắc).
Bạn phải sử dụng bước này nếu bảng lịch được join với bảng dữ liệu bằng khóa thay thế (ví dụ nếu kết nối của bạn nằm trên cột DDMMYYYY, về mặt kỹ thuật là văn bản, không phải ngày).
Bạn phải dùng bước này nếu bạn muốn sử dụng các measure nhanh để giúp bạn viết các hàm thông minh bằng cách dùng bảng lịch riêng của bạn.
Ngoài 2 trường hợp trên, bước này không bắt buộc để bảng lịch hoạt động.
Qua phần đầu tiên của bài viết, BAC đã giới thiệu cho bạn về tính năng Auto Time Intelligence và quy tắc cho Standard Power BI Calendar Table. Trong phần tiếp theo, chúng ta sẽ tiếp tục với cách kết nối và tạo Calendar Table, đừng quên đón xem.
Tham khảo: Cách tạo Calendar Table trong Power BI (Phần 2)
Nguồn tham khảo:
Nhu cầu đào tạo doanh nghiệp
BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển.
Các bài viết liên quan Power BI:
- Power BI cơ bản cho người mới bắt đầu
- Chỉnh sửa và định hình dữ liệu trong Power BI Desktop
- Kết hợp dữ liệu trong Power BI Desktop
- Hướng dẫn kết nối dữ liệu trong Power BI Desktop
- Hướng dẫn tải & cài đặt Power BI trên máy tính
- Khóa học Phân tích và trực quan hóa dữ liệu với Power BI
- Power BI là gì?
Các bài viết liên quan:
- TABLEAU – Giải pháp BUSINESS INTELLIGENCE (BI) – click vào đây
- Hướng dẫn cài đặt và Sử dụng TABLEAU – click vào đây
- Tính năng mới trên tableau – verion 2019.1 – click vào đây
BAC – Biên soạn và tổng hợp nội dung