sObject に挿入、更新、削除などのイベントが生じる前後で処理をコーディングすることができる。
例えば、請求書の宛先データができたときに、明細データを作成するなどの機能を開発することができる。
trigger myAccountTrigger on Account (before insert, before update) { if (Trigger.isInsert) { } if (Trigger.isUpdate) { for(Account a: Trigger.new) if (a.name == 'bad') a.name.addError('Bad name'); // prevent update } }
Trigger.new 変数は、挿入、更新対象へアクセスでき、Trigger.old 変数は、更新または削除にアクセスできます。