- Process Builder để điều phối trạng thái và checkpoint
- Roles/Permissions để kiểm soát quyền thao tác
- Views & UI để người duyệt thao tác nhanh và đúng
Dùng khi nào?
- Có điểm kiểm soát bắt buộc trước khi chuyển bước (ví dụ: duyệt chi phí)
- Cần audit: ai duyệt, duyệt lúc nào, duyệt với lý do gì
- Cần tách vai trò requester (tạo yêu cầu) và approver (phê duyệt)
Cấu phần tối thiểu của một bước phê duyệt
1) Ai là người duyệt (Approver)
Có thể chọn theo:- Field
Approver(User/People) trên record - Rule theo phòng ban/role (tuỳ thiết kế phân quyền)
- Nhóm người duyệt theo cấp (tuỳ bài toán)
2) Khi nào được duyệt
- Chỉ cho phép duyệt ở trạng thái phù hợp (ví dụ Pending approval)
- Chỉ cho phép duyệt khi dữ liệu bắt buộc đã đủ (validation)
3) Quyết định và lý do
- Quyết định: Approved / Rejected
- Lý do/ghi chú: để tránh “reject không rõ vì sao”
- Thời điểm: Approved at / Rejected at
Quy tắc thiết kế Approvals (decision rules)
1) Một bước duyệt = một mục tiêu kiểm soát
Ví dụ:- Duyệt ngân sách
- Duyệt tuân thủ chính sách
- Duyệt đặt hàng
2) Phê duyệt dựa trên dữ liệu chuẩn
- Tổng chi phí nên được tính nhất quán (Number/Currency + Formula/Rollup)
- Đính kèm chứng từ nên rõ ràng (Attachment)
3) Chặn sửa dữ liệu sau khi duyệt (nếu cần)
Nếu sau khi approved mà requester vẫn sửa nội dung chính, quy trình sẽ “mất ý nghĩa”. Giải pháp thường dùng:- Khoá một số field ở trạng thái Approved/Closed
- Nếu cần chỉnh sửa, tạo cơ chế “rework” (đưa về trạng thái cần chỉnh sửa)
Ví dụ: Purchase Request
Trạng thái gợi ý
- Draft → Pending approval → Approved / Rejected → Closed
Bước duyệt gợi ý
- Khi Pending approval:
- Approver xem: title, chi phí, need-by date, item list, chứng từ
- Approve → chuyển trạng thái Approved
- Reject → chuyển trạng thái Rejected + bắt buộc nhập lý do
View hỗ trợ người duyệt
- Grid view “Chờ duyệt”: filter Status = Pending approval
- Record layout cho Approver: tập trung vào thông tin cần quyết định + nút hành động
Cross-app: bàn giao sau khi duyệt
Khi bước duyệt hoàn tất và cần bàn giao sang app khác (ví dụ Procurement):- App nguồn publish các record đã Approved
- App đích kết nối Connected app (kết nối ứng dụng)
- App đích dùng Data Connection để liên kết record và dùng Lookup/Rollup để tham chiếu/tổng hợp
Checklist triển khai nhanh
- Approver được xác định rõ (field hoặc rule)
- Chỉ duyệt được ở trạng thái phù hợp
- Có lý do khi reject (để cải tiến)
- View “Chờ duyệt” và record layout cho Approver đã tối ưu
