Tài liệu này tổng hợp các bài tập luyện tập Apex Trigger trong Salesforce với Object Account, từ cơ bản đến nâng cao. Mục tiêu: nắm vững cú pháp Trigger, xử lý Before/After, kiểm soát bulk, recursion, và các tình huống thực tế.
- Khi tạo mới Account, nếu field Industry để trống → tự động gán =
"Technology".
- Nếu AnnualRevenue < 0 → throw error
"Annual Revenue cannot be negative".
- Sau khi tạo Account → tự động tạo 1 Contact mặc định:
FirstName = "Default",LastName = "Contact".
- Khi update Phone của Account → tự động copy sang Fax.
- Khi Account.Name thay đổi → update tất cả Contact liên quan:
Contact.Description = "Updated because Account name changed".
- Không cho phép xóa Account nếu có Opportunities đang ở stage
"Prospecting".
- Khi insert nhiều Account cùng lúc → kiểm tra: Nếu trong DB đã có > 5 Account cùng Industry → chặn insert.
- Nếu
Account.Rating = "Hot"→ setAnnualRevenue = 1,000,000. - Nhưng trigger phải chống chạy lặp vô hạn (recursion).
- Khi khôi phục Account từ Recycle Bin → tạo Task với:
Subject = "Follow up restored account",Owner = Account.Owner.
- Khi Insert/Update/Delete Contact → tính lại tổng số Contact active của từng Account.
- Lưu kết quả vào field custom
Number_of_Contacts__ctrên Account. - Bài này kết hợp: SOQL, DML, Map, Set, Aggregate, Bulk Handling.
- Bắt đầu từ Level 1 để nắm rõ Before/After.
- Sang Level 2 để rèn kỹ năng bulk + liên kết dữ liệu.
- Cuối cùng luyện Level 3 để quen recursion, undelete, và rollup aggregate.