Apex Triggerトリガコンテキスト変数の使い方のサンプル
環境
Salesforce Apex
概要
Trigger.isBefore
Before triggerの場合に、trueを返します。
Trigger.isAfter
After triggerの場合に、trueを返します。
Trigger.isInsert
レコードの新規作成処理によるApexトリガの場合に、Trueを返します。
Trigger.isUpdate
レコードの更新処理によるApexトリガの場合に、Trueを返します。
Trigger.isDelete
レコードの削除処理によるApexトリガの場合に、Trueを返します。
Trigger.isUndelete
レコードの復元処理によるApexトリガの場合に、Trueを返します。
使用例
trigger TriggerTest on Account (before insert,before update,before delete,after insert,after update,after delete,after undelete) { //コンテキスト変数isBefore if(Trigger.isBefore){ system.debug('BeforeTrigger処理start---------------------------------------------------'); system.debug('コンテキスト変数isBefore: '+ Trigger.isBefore); //AccountHandleクラスの呼び出し AccountHandler.AccountHandler(); system.debug('BeforeTrigger処理完了---------------------------------------------------'); } //コンテキスト変数isAfter確認 if(Trigger.isAfter){ system.debug('AfterTrigger処理start---------------------------------------------------'); //AccountHandleクラスの呼び出し AccountHandler.AccountHandler(); system.debug('AfterTrigger処理完了---------------------------------------------------'); } //-------------------------------------------------------------------------------------------------- // insertトリガ 確認 // afterInsertの場合 if(Trigger.isAfter && Trigger.isInsert){ AccountHandler.AccountHandlerAfterInsert(); } //-------------------------------------------------------------------------------------------------- // updateトリガ 確認 // afterUpdateの場合 if(Trigger.isAfter && Trigger.isUpdate){ AccountHandler.AccountHandlerAfterUpdate(Trigger.newMap,Trigger.oldMap); } //-------------------------------------------------------------------------------------------------- //Deleteトリガ 確認 //Before Delete if(Trigger.isBefore && Trigger.isDelete){ AccountHandler.AccountHandlerAfterDelete(); } //-------------------------------------------------------------------------------------------------- //UnDeleteトリガ 確認 //After UnDelete if(Trigger.isAfter && Trigger.isUndelete){ AccountHandler.AccountHandlerAfterUnDelete(); } }