Designing Client Portfolio Reports with Power BI for Wealth Management

To Share 2026 - Content Fb + Web (11)

Đây là bài số 36 trong chuỗi series của Triều Đặng — bài viết chuyên môn về Power BI dành cho Financial Analytics và Wealth Management.

#MCNA #TrieuDang #Sharing36 #PowerBI #WealthManagement


Designing client portfolio reports Power BI Wealth Management là bước hoàn thiện cuối cùng của toàn bộ hệ thống analytics. Nếu report không được thiết kế đúng cho từng nhóm người dùng — data model tốt, DAX measures chính xác, visualization đẹp vẫn chưa đủ.

Bài viết hướng dẫn toàn bộ quy trình thiết kế report chuyên nghiệp — từ layout, RBAC, RLS đến drill-through và export PDF.

Tham khảo thêm tại Microsoft Power BI Report Design Guide.

📌 Đây là bài số 36 trong series Power BI Financial Analytics tại MCNA:


Mục Lục

  1. Hiểu người dùng trước khi thiết kế
  2. Designing Client Portfolio Reports — Layout chuẩn Wealth Management
  3. Phân quyền RBAC — Role-Based Access Control
  4. Row Level Security (RLS) trong Power BI
  5. Drill-through và Navigation
  6. Bookmarks và Toggle Views
  7. DAX Display Measures cho Report
  8. Tooltip Pages nâng cao
  9. Export và Scheduled Delivery
  10. Kết luận

1. Hiểu Người Dùng Trước Khi Thiết Kế

Ba nhóm người dùng chính khi designing client portfolio reports Power BI Wealth Management

Mỗi nhóm người dùng cần một góc nhìn khác nhau về cùng một dữ liệu.

Thiết kế một report duy nhất cho tất cả là sai lầm phổ biến nhất. Kết quả là report quá phức tạp — không ai dùng được hiệu quả.

Nhóm người dùng Cần thấy gì? Tần suất xem
Portfolio Manager Toàn bộ danh mục, risk metrics, alpha vs benchmark Hàng ngày
Relationship Manager (RM) Danh mục của khách hàng mình phụ trách, YTD return, next action Hàng tuần
Client (Khách hàng) AUM của mình, lợi suất, phân bổ tài sản — đơn giản, trực quan Hàng tháng
Management / C-level Tổng AUM toàn công ty, top clients, P&L tổng hợp Hàng tháng / Quý
Compliance / Risk Breach alerts, VaR, concentration risk, regulatory metrics Real-time

User Story trước khi thiết kế

Mỗi report page phải xuất phát từ một User Story cụ thể.

Ví dụ: “Là Portfolio Manager, tôi cần thấy ngay khi mở report: tổng AUM, return hôm nay, và bất kỳ alert nào vượt ngưỡng risk.”

Từ User Story này mới xác định được layout, KPI cards, và drill-through path phù hợp.

💡 Nguyên tắc: Mỗi report page = một User Story. Không thiết kế page trước rồi mới nghĩ user cần gì.


2. Designing Client Portfolio Reports Power BI — Layout Chuẩn Wealth Management

Cấu trúc 4 tầng chuẩn

Khi designing client portfolio reports Power BI Wealth Management, cấu trúc 4 tầng page là tiêu chuẩn được áp dụng rộng rãi nhất:

  • Tầng 1 — Executive Summary: Tổng quan cho C-level. Tối đa 5 KPI cards + 2 chart. Load nhanh.
  • Tầng 2 — Portfolio Overview: Portfolio Manager view. AUM, return, allocation, benchmark.
  • Tầng 3 — Client Detail: Drill-through từ Overview. Từng client cụ thể.
  • Tầng 4 — Risk & Compliance: Risk metrics, VaR, drawdown, breach alerts.

Grid layout chuẩn cho mỗi page

-- Power BI Canvas: 1920 × 1080px (Full HD)
-- Hoặc 1280 × 720px cho màn hình nhỏ hơn

-- Layout grid gợi ý:
-- Header bar:   Full width, height 60px  → Logo + Title + Date filter
-- KPI row:      Full width, height 120px → 4-5 KPI cards ngang
-- Main area:    Chia 2 hoặc 3 cột, height 500px
-- Footer bar:   Full width, height 40px  → Data freshness + Contact

-- Margin: 16px tất cả các phía
-- Spacing giữa visual: 8px
-- Card padding: 12px

Typography và màu sắc nhất quán

-- Font: Segoe UI (mặc định Power BI) — không thay đổi
-- Title:    16px Bold  | Color: #1A2744
-- Subtitle: 13px Regular | Color: #4A5568
-- Body:     12px Regular | Color: #2D3748
-- KPI big:  28-36px Bold | Color theo màu brand

-- Palette Wealth Management (gợi ý):
Primary:     #0A1628  (navy)
Accent:      #00C896  (emerald green — growth)
Alert:       #FF4455  (red — loss/risk)
Neutral:     #4285F4  (blue — benchmark)
Gold:        #FFB800  (amber — caution)
Background:  #F7F9FC  (light gray)

✅ Best practice: Tạo một trang “Theme Settings” ẩn trong report. Liệt kê tất cả màu sắc và font đang dùng. Giúp maintain consistency khi có người mới join team.


3. Phân Quyền RBAC — Role-Based Access Control

RBAC trong Power BI hoạt động thế nào?

RBAC quyết định ai được phép xem report nào. Đây là yêu cầu bắt buộc trong Wealth Management.

Relationship Manager chỉ được xem danh mục của khách hàng mình phụ trách. Không được xem của RM khác.

Thiết lập Workspace Roles

-- Power BI Workspace có 4 role mặc định:
-- Admin   → full control (IT/BI team)
-- Member  → publish, edit reports
-- Contributor → create content, không publish
-- Viewer  → chỉ xem (dùng cho Clients, C-level)

-- Cấu hình:
-- Portfolio Manager → Member role
-- Relationship Manager → Viewer role + RLS
-- Client → Viewer role + RLS (filtered to own data)
-- C-level → Viewer role (no RLS — thấy tất cả)
-- Compliance → Member role (thấy tất cả, không edit)

App Permissions — phân quyền theo App

-- Power BI App là cách tốt nhất để phân phối report
-- Mỗi audience group dùng một App khác nhau:

-- App 1: "WM Internal Dashboard"
--   → Portfolio Manager, RM, Risk team
--   → Full data với RLS filter theo user

-- App 2: "Client Portal Report"
--   → Chỉ client xem data của mình
--   → Simplified layout, ẩn technical metrics

-- App 3: "Executive Summary"
--   → C-level, Board members
--   → Aggregated view, no client PII visible

4. Row Level Security (RLS) Trong Power BI

RLS là gì và tại sao quan trọng?

RLS lọc dữ liệu ở tầng model — mỗi user chỉ thấy đúng rows họ được phép.

Đây là layer bảo mật quan trọng nhất trong Wealth Management reporting. Client A không thể nhìn thấy dữ liệu của Client B — dù dùng chung một report.

Thiết lập RLS cho Wealth Management

-- Bước 1: Tạo bảng DimUserAccess
UserEmail       VARCHAR(100)  -- Email đăng nhập Power BI
ClientID        INT           -- Client được phép xem
RMCode          VARCHAR(20)   -- Mã RM phụ trách
AccessLevel     VARCHAR(20)   -- 'Client', 'RM', 'PM', 'Admin'

-- Bước 2: Tạo Role trong Power BI Desktop
-- Model → Manage Roles → New Role

-- Role: RM_Access
-- DimUserAccess[UserEmail] = USERPRINCIPALNAME()

-- Bước 3: DAX filter tự động theo role
-- Power BI tự apply filter: chỉ show rows match email

-- Bước 4: Test với "View as Role"
-- Modeling → View as → chọn Role → kiểm tra data

Dynamic RLS — linh hoạt hơn Static RLS

-- Dynamic RLS dùng USERPRINCIPALNAME() để filter
-- Không cần tạo role riêng cho mỗi user

-- Relationship: DimUserAccess → FactPortfolio (via ClientID)

-- DAX: Kiểm tra access level
User Access Level =
LOOKUPVALUE(
    DimUserAccess[AccessLevel],
    DimUserAccess[UserEmail],
    USERPRINCIPALNAME()
)

-- Admin bypass RLS:
Is Admin =
IF(
    LOOKUPVALUE(DimUserAccess[AccessLevel],
        DimUserAccess[UserEmail], USERPRINCIPALNAME())
            = "Admin",
    TRUE(), FALSE()
)

⚠️ Lưu ý: RLS chỉ hoạt động khi report được publish lên Power BI Service. Khi test trong Desktop, RLS không apply tự động. Phải dùng “View as Role” để kiểm tra.


5. Drill-through Và Navigation

Tại sao Drill-through không thể thiếu khi designing client portfolio reports Power BI Wealth Management?

Drill-through cho phép người dùng click vào một điểm dữ liệu để xem chi tiết ở một page khác — đây là tính năng cốt lõi khi designing client portfolio reports Power BI Wealth Management.

Ví dụ: Click vào tên khách hàng trên Executive Summary → tự động mở trang Client Detail, đã filter sẵn cho khách hàng đó.

Thiết lập Drill-through chuẩn

-- Bước 1: Tạo Detail Page (ví dụ: "Client Detail")
-- Bước 2: Kéo field dùng làm drill key vào "Drill-through" well
--   → DimClient[ClientName] hoặc DimClient[ClientID]
-- Bước 3: Power BI tự tạo nút "Back" trên detail page

-- Bước 4: Cấu hình cross-report drill-through
-- Cho phép drill từ report khác sang report này
-- File → Options → Current File → Report settings
--   → Allow visuals in this report to use drill-through
--      targets from other reports

-- Drill-through path trong Wealth Management:
-- Executive Summary
--   → (click Client Segment) → Segment Overview
--       → (click Client Name)  → Client Detail
--           → (click Asset)     → Asset Detail
--               → (click Trade) → Trade History

Page Navigation Buttons

-- Thêm navigation bar nhất quán trên mọi page
-- Insert → Buttons → Navigator → Page navigator

-- Hoặc tự tạo bằng Blank Button:
-- Button → Action → Type: Page navigation
-- → Destination: chọn page

-- Navigation design:
-- Left sidebar: Report sections (Summary, Portfolio, Risk, Client)
-- Top bar: Filter context hiện tại (Client name, Date range)
-- Bottom: Breadcrumb trail (trang đang ở đâu trong hierarchy)

6. Bookmarks Và Toggle Views

Bookmarks dùng làm gì?

Bookmarks lưu trạng thái của report — filter, slicer, visuals đang hiển thị.

Kết hợp với Buttons, bookmarks tạo ra toggle views — chuyển đổi giữa các góc nhìn khác nhau mà không cần nhiều pages.

Toggle View patterns phổ biến

-- Pattern 1: Chart / Table toggle
-- Một area hiển thị chart HOẶC table
-- Người dùng click button để chuyển đổi

-- Bước 1: Tạo hai visual (Line Chart + Table) chồng lên nhau
-- Bước 2: Tạo 2 Bookmarks:
--   Bookmark A: Chart visible, Table hidden
--   Bookmark B: Table visible, Chart hidden
-- Bước 3: Gán bookmark vào 2 buttons tương ứng

-- Pattern 2: YTD / MTD / QTD toggle
-- 3 buttons → 3 bookmarks → đổi measure hiển thị
-- Dùng Field Parameters (Power BI 2022+)

-- Pattern 3: Show/Hide filters pane
-- Button "Bộ lọc" → toggle advanced filter panel
-- Giúp giao diện clean hơn khi không dùng filter

Field Parameters — toggle linh hoạt hơn

-- Field Parameters (Modeling → New Parameter → Fields)
-- Cho phép user chọn metric muốn xem trong visual

-- Ví dụ: Parameter "Return Period"
-- Option 1: [Return YTD %]
-- Option 2: [Return MTD %]
-- Option 3: [Rolling 12M Return %]

-- Kết hợp với Slicer → visual tự cập nhật theo lựa chọn
-- Không cần bookmark cho pattern này

💡 Nguyên tắc: Dùng Field Parameters khi toggle thay đổi metric. Dùng Bookmarks khi toggle thay đổi layout hoặc visual type.


7. DAX Display Measures Cho Report

Tại sao cần Display Measures riêng?

Display Measures là các measures đã được format sẵn — chỉ dùng để hiển thị trên visual.

Không dùng Display Measures trong calculation khác. Chúng chứa text formatting — không thể dùng trong math.

DAX Display Measures chuẩn cho Portfolio Report

-- AUM Display (tự đổi đơn vị theo quy mô)
Disp AUM =
VAR V = [Total Market Value]
RETURN
SWITCH(TRUE(),
    V >= 1000000000000, FORMAT(V/1000000000000, "₫#,##0.0") & " nghìn tỷ",
    V >= 1000000000,    FORMAT(V/1000000000, "₫#,##0.0") & " tỷ",
    V >= 1000000,       FORMAT(V/1000000, "₫#,##0.0") & " triệu",
                        FORMAT(V, "₫#,##0")
)

-- Return Display với màu sắc
Disp Return =
VAR R = [HPR YTD %]
RETURN
IF(R >= 0,
    "▲ " & FORMAT(R, "0.00%"),
    "▼ " & FORMAT(ABS(R), "0.00%")
)

-- PnL Display
Disp PnL =
VAR P = [Total PnL]
RETURN
IF(P >= 0,
    "+" & FORMAT(P/1000000, "₫#,##0.0M"),
    "-" & FORMAT(ABS(P)/1000000, "₫#,##0.0M")
)

-- Risk Level Display
Disp Risk Level =
SWITCH(TRUE(),
    [Portfolio Volatility %] < 0.08,  "🟢 Thấp",
    [Portfolio Volatility %] < 0.15,  "🟡 Trung bình",
    [Portfolio Volatility %] < 0.25,  "🟠 Cao",
                                      "🔴 Rất cao"
)

-- Last Updated Display
Disp Last Updated =
"Cập nhật lúc: " & FORMAT(NOW(), "DD/MM/YYYY HH:MM")

Conditional Formatting qua DAX

-- Color measure cho KPI card background
Return Color Hex =
IF([HPR YTD %] >= 0, "#E8F5E9", "#FFEBEE")

-- Color measure cho font
Return Font Color =
IF([HPR YTD %] >= 0, "#1B5E20", "#B71C1C")

-- Gán vào visual:
-- Format → Conditional formatting → Background color
-- → Field value → chọn [Return Color Hex]

8. Tooltip Pages Nâng Cao

Tooltip Page là gì?

Tooltip Page là một page đặc biệt. Khi hover chuột vào visual, nó hiện lên như một popup mini-report.

Đây là cách thêm context mà không làm phức tạp giao diện chính.

Thiết lập Tooltip Page chuẩn

-- Bước 1: Tạo page mới → Page information
-- Bật "Allow use as tooltip"
-- Set canvas size: 320 × 240px (Tooltip size)

-- Bước 2: Thiết kế nội dung tooltip
-- Ví dụ: Hover vào tên Client
-- Tooltip hiện: AUM, Return YTD, Top Asset, RM phụ trách

-- Bước 3: Gán tooltip page vào visual
-- Visual → Format → Tooltip → Type: Report page
-- → Page: chọn Tooltip page vừa tạo

-- Bước 4: Tooltip tự động filter theo context
-- Hover vào Client A → tooltip chỉ show data của A

Ví dụ Tooltip cho Client List table

-- Tooltip page "Client Quick View" chứa:

-- Row 1: Client Name (large, bold)
-- Row 2: AUM + Return YTD side by side
-- Row 3: Mini donut chart — allocation
-- Row 4: Top 3 holdings (table)
-- Row 5: RM Name + Last contact date

-- Cách đặt tên tooltip page: "TT_ClientDetail"
-- Prefix "TT_" giúp dễ phân biệt với normal pages

⚠️ Lưu ý: Tooltip pages không hiển thị trong navigation. Đặt chúng ở cuối danh sách pages và ẩn trong View settings nếu cần.


9. Export Và Scheduled Delivery

Export PDF — Bước cuối khi designing client portfolio reports Power BI Wealth Management

Một quy trình designing client portfolio reports Power BI Wealth Management hoàn chỉnh phải bao gồm export. Client không phải lúc nào cũng muốn vào Power BI Service — họ cần PDF hàng tháng.

Power BI hỗ trợ export PDF từ Service — nhưng cần cấu hình đúng để output đẹp.

Chuẩn bị report để export đẹp

-- Thiết lập trước khi export PDF:
-- 1. Dùng canvas 1240 × 1754px (A4 Portrait)
--    Hoặc 1754 × 1240px (A4 Landscape)
-- 2. Tắt tất cả slicer không cần thiết trước khi export
-- 3. Dùng Print Layout view để preview trước
-- 4. Font size tối thiểu 11px (nhỏ hơn sẽ mờ khi in)

-- Sau khi export PDF:
-- File → Export → Export to PDF
-- Chọn: Export current values (áp dụng filter hiện tại)

-- Cách export theo từng client:
-- Dùng Paginated Reports (Power BI Premium)
-- Hoặc script Python qua Power BI REST API

Scheduled Email Delivery

-- Power BI Service → Report → Subscribe
-- Cấu hình:
-- Recipients: email list của clients
-- Frequency: Monthly (1st of month)
-- Time: 8:00 AM
-- Format: PDF attachment hoặc PNG preview

-- Power Automate integration cho advanced delivery:
-- Trigger: Schedule (monthly)
-- Action 1: Export report via Power BI API
-- Action 2: Send email với attachment
-- Action 3: Log delivery status vào SharePoint

-- Hoặc dùng Power BI Paginated Reports
-- Hỗ trợ mail merge — gửi report riêng cho từng client
-- Mỗi client nhận PDF chỉ có data của họ

10. Kết Luận

Designing client portfolio reports Power BI Wealth Management — Điểm chạm cuối cùng với người dùng

Designing client portfolio reports Power BI Wealth Management không phải là bước cuối cùng về mặt kỹ thuật — nhưng đây là điểm chạm cuối cùng với người dùng. Report tốt biến data thành quyết định. Report kém khiến data tốt bị lãng phí.

Khi layout, RBAC, RLS, drill-through và export được cấu hình đúng — toàn bộ hệ thống Power BI mới thực sự vận hành trơn tru.

Ba nguyên tắc cốt lõi cần nhớ

  1. Thiết kế từ User Story, không phải từ data. Mỗi page phải trả lời một câu hỏi cụ thể của một nhóm người dùng cụ thể.
  2. RLS là bắt buộc trong Wealth Management. Không có RLS = rủi ro data breach nghiêm trọng. Không có ngoại lệ.
  3. Display Measures riêng, không format trong visual settings. Formatting nhúng vào measures giúp maintain nhất quán khi model thay đổi.

Tài liệu tham khảo

Bài viết liên quan tại MCNA


Về tác giả

Triều Đặng — Middle Data Analyst tại MCNA Technology School. Chuyên về financial data analytics, Power BI và automated reporting trong Wealth Management.

Chuỗi series Power BI Financial Analytics ghi lại toàn bộ hành trình xây dựng hệ thống analytics cho Wealth Management. Từ data model đến report delivery — từng bước thực chiến.

MCNA Technology School là đơn vị tiên phong đào tạo AI, Big Data, Business Intelligence tại Việt Nam.

Đối tác đào tạo của 300+ doanh nghiệp: Viettel Global, Masan Group, Techcombank, VPBank, Daikin.

Mục Lục

Chỉ mục