Quy Trình Thiết Lập Workflow Phê Duyệt Trên D365 BC — Từ Lý Thuyết Đến Thực Tế Dự Án
🧠 Phần 1 — Hiểu Mô Hình Event → Condition → Response
Toàn bộ logic của Workflow trong D365 BC xoay quanh 3 thành phần cốt lõi:
| Thành phần | Ý nghĩa | Ví dụ thực tế |
|---|---|---|
| Event | Sự kiện xảy ra trong hệ thống kích hoạt Workflow | Người dùng click "Request Approval" trên Purchase Invoice |
| Condition | Bộ lọc để quyết định Workflow có áp dụng không | Chỉ áp dụng khi Amount > 10.000.000 VNĐ |
| Response | Hành động hệ thống thực hiện khi điều kiện thỏa mãn | Tạo yêu cầu phê duyệt và gửi thông báo cho Manager |
🔧 Phần 2 — Quy Trình Thiết Lập Chuẩn (6 bước)
Tạo Workflow User Group (nếu cần duyệt nhiều người)
Tìm kiếm Workflow User Groups → tạo group và gán thứ tự Sequence No. cho từng approver. Sequence No. thấp hơn sẽ duyệt trước. Nếu gán cùng Sequence No. → duyệt song song (parallel approval).
Thiết lập Approval User Setup
Tìm kiếm Approval User Setup → điền cho từng user:
| Trường | Nội dung cần điền |
|---|---|
| User ID | Tài khoản người dùng trong hệ thống |
| Approver ID | Tài khoản người duyệt cấp trên |
| Substitute | Người thay thế khi approver vắng mặt |
| Purchase Amount Approval Limit | Hạn mức tối đa người này được duyệt |
| Sales Amount Approval Limit | Hạn mức phê duyệt cho Sales |
| Approval Administrator | ✓ nếu là quản trị viên workflow (1 người duy nhất) |
| Email nhận thông báo phê duyệt |
Cấu hình Email / SMTP
Tìm kiếm Email Accounts → thiết lập hộp thư dùng để gửi thông báo. Không có SMTP → người duyệt chỉ nhận thông báo trong BC (Notification Inbox), không nhận qua email.
Tạo Workflow từ Template
Tìm kiếm Workflows → chọn "New Workflow from Template" → chọn template phù hợp (Purchase Invoice Approval, Sales Order Approval, v.v.). BC có sẵn hàng chục template chuẩn, chỉ cần điều chỉnh Condition và Response.
Thiết lập Notification Schedule
Tìm kiếm Workflow Notification Setup → định nghĩa khi nào gửi thông báo: ngay lập tức (Instantly) hay theo lịch (mỗi ngày lúc 8h sáng). Cũng cấu hình Overdue Approval Notifications để nhắc nhở khi phê duyệt quá hạn.
Bật Enabled và Test
Toggle Enabled = ON → tạo một chứng từ test → click "Request Approval" → kiểm tra approver có nhận thông báo không → approve thử → kiểm tra chứng từ chuyển sang trạng thái đúng.
⚡ Phần 3 — Các Tình Huống Phức Tạp Hay Gặp Trong Thực Tế
Yêu cầu thực tế: Hóa đơn mua dưới 20 triệu → Trưởng phòng duyệt. Từ 20–100 triệu → Giám đốc tài chính. Trên 100 triệu → Tổng giám đốc.
Cách thiết lập: Trong Approval User Setup, điền hạn mức (Purchase Amount Approval Limit) cho từng cấp. Trong Workflow, chọn Approver Type = Approver và Approver Limit Type = Approver Chain — hệ thống sẽ tự leo thang lên cấp đủ hạn mức.
Yêu cầu thực tế: Purchase Order trên 500 triệu phải được cả Giám đốc tài chính lẫn Giám đốc kỹ thuật cùng phê duyệt.
Cách thiết lập: Tạo Workflow User Group gồm cả hai người, gán cùng Sequence No. = 1 (duyệt song song) hoặc Sequence No. khác nhau nếu cần tuần tự. Trong Workflow, chọn Approver Type = Workflow User Group.
Yêu cầu thực tế: Giám đốc đi công tác, cần có người thay thế duyệt các chứng từ đang chờ.
Có 2 cách xử lý:
- Cài sẵn Substitute trong Approval User Setup: Điền trường Substitute → khi approver gốc không duyệt, người được ủy quyền có thể vào
Requests to Approve→ chọn Delegate → hệ thống tự chuyển yêu cầu sang Substitute và gửi thông báo. - Xử lý thủ công khi phát sinh: Approval Administrator vào
Overdue Approval Requests→ chạy "Send Overdue Approval Notifications" → delegate sang người phù hợp.
Yêu cầu thực tế: Doanh nghiệp dùng Teams làm công cụ giao tiếp chính, muốn nhận thông báo duyệt ngay trong Teams thay vì email.
Cách thiết lập: D365 BC tích hợp sẵn với Microsoft Teams qua Power Automate. Bạn tạo Flow từ template "Request approval for Business Central" trên Power Automate → kết nối BC + Teams → khi có yêu cầu phê duyệt, bot sẽ gửi tin nhắn adaptive card vào Teams cho approver. Approver có thể Approve / Reject ngay trong Teams mà không cần mở BC.
🏢 Phần 4 — Responsibility Centers: Lọc Dữ Liệu Theo Phòng Ban / Chi Nhánh
Responsibility Centers là gì và liên quan đến Workflow thế nào?
Responsibility Center (Trung tâm trách nhiệm) là tính năng cho phép bạn gán mỗi user chỉ nhìn thấy chứng từ thuộc phạm vi của mình — ví dụ: nhân viên chi nhánh Hà Nội chỉ thấy Sales Order của Hà Nội, không thấy của TP.HCM.
Trong bối cảnh Workflow, điều này rất quan trọng: nếu không có Responsibility Center, approver có thể nhận yêu cầu duyệt từ tất cả chi nhánh — gây nhầm lẫn và mất kiểm soát phân quyền theo địa lý/phòng ban.
Cách thiết lập Responsibility Centers
Bước 1 — Tạo danh mục Responsibility Centers: Tìm kiếm Responsibility Centers → tạo code cho từng đơn vị.
| Code | Name | Ý nghĩa |
|---|---|---|
| HCM | Chi nhánh TP.HCM | Bộ phận kinh doanh phía Nam |
| HAN | Chi nhánh Hà Nội | Bộ phận kinh doanh phía Bắc |
| HO | Văn phòng chính | Ban lãnh đạo, kế toán tổng hợp |
Bước 2 — Gán Responsibility Center cho từng User: Tìm kiếm User Setup → chọn user → điền vào 3 trường filter:
| Trường | Tác dụng |
|---|---|
| Sales Resp. Ctr. Filter | Lọc chứng từ Sales (Order, Invoice, Credit Memo...) |
| Purchase Resp. Ctr. Filter | Lọc chứng từ Purchase (Order, Invoice...) |
| Service Resp. Ctr. Filter | Lọc chứng từ Service Management |
Responsibility Center và Workflow — kết hợp thực tế
Sau khi gán Responsibility Center, bạn có thể dùng trường Responsibility Center làm Condition trong Workflow:
| Condition trong Workflow | Tác dụng |
|---|---|
| Responsibility Center = HCM | Chỉ áp dụng Workflow cho chứng từ của chi nhánh HCM |
| Responsibility Center = HAN | Chứng từ Hà Nội đi qua Workflow riêng với approver riêng |
Nhờ đó, bạn có thể tạo 2 Workflow riêng biệt cho 2 chi nhánh, mỗi Workflow có approver và hạn mức phê duyệt khác nhau — rất phù hợp cho doanh nghiệp có nhiều địa điểm hoặc phòng ban hoạt động độc lập.
📖 Phần 5 — Bài Học Từ Thực Tế Dự Án
✅ Checklist Thiết Lập Workflow Trước Go-Live
- Workflow User Group đã tạo đúng Sequence No. (tuần tự hay song song)
- Approval User Setup đầy đủ: Approver ID, Substitute, Amount Limit, Email
- Không có user vừa là requestor vừa là approver trong cùng group
- Đã chạy "Approval User Setup Test" — không có lỗi/xung đột
- Email / SMTP đã cấu hình và gửi test thành công
- Notification Schedule đã thiết lập (Instantly hoặc theo lịch)
- Workflow Enabled và đã test bằng tài khoản user thực tế (không phải admin)
- Approver chain không bị đứt giữa chừng
- Responsibility Centers đã gán đúng cho từng user trong User Setup
- Workflow Condition đã dùng Responsibility Center để phân luồng (nếu có nhiều chi nhánh)
- Job Queue đã được Start — đảm bảo thông báo được gửi đúng lịch
- Đã test kịch bản Delegate (ủy quyền khi người duyệt vắng mặt)
🎯 Kết Luận
Workflow phê duyệt trong D365 BC không khó nếu bạn hiểu đúng mô hình Event → Condition → Response và thiết lập đúng thứ tự: User Group → Approval User Setup → Email → Workflow → Test. Phần thường bị bỏ qua nhất chính là Responsibility Centers — nhưng đây lại là nền tảng để phân luồng phê duyệt đúng theo chi nhánh hoặc phòng ban, tránh tình trạng approver nhận nhầm yêu cầu không thuộc phạm vi của mình.
Đầu tư thời gian thiết lập và test kỹ trước Go-Live sẽ giúp quy trình phê duyệt của doanh nghiệp chạy mượt mà — và người dùng sẽ cảm nhận được ngay sự khác biệt so với quy trình thủ công trước đây.
Bạn đã gặp tình huống workflow nào phức tạp trong dự án của mình chưa? Chia sẻ bên dưới nhé! 👇
0 Comments