SF - Difference Between Trigger.New and Trigger.old

Trigger.New: Trigger.new returns List of new records which are trying to insert into Database. This is available in Before Insert, Before Update, After Insert, After Update Triggers and undelete Triggers. This list of records can only modified in Before triggers.

Trigger.Old: Trigger.old returns List of old records which are updated with new values. These List of records already there in Database. Trigger.old available in Before update, after update, Before Delete and After Delete triggers.

Before Insert Trigger

Trigger.new- what are the records going to insert into Database [not commited yet, id=null]
Trigger.old- NULL
Trigger.newmap-null
Trigger.oldmap-Null

Afeter Insert

Trigger.new- New List of Records which are inserted
Trigger.old- null
Trigger.NewMap- New Map<ID, new Record>
Trigger.oldMap- Null

Before Update

Trigger.new- New List of Records which are going to be updated
Trigger.old- List of Records with old values.
Trigger.NewMap- New Map<ID, new Record>
Trigger.oldMap- Old Map<ID, old record>

After Update

Trigger.new- New List of Records which are updated
Trigger.old- List of Records with old values.
Trigger.NewMap- New Map<ID, new Record>
Trigger.oldMap- Old Map<ID, old record>

Example

I have a scenario like when Account Phone number is updated then Account Description value should be updated with old phone number+new phone number.

trigger NewVsOld on Account (before update) {
    for(integer i=0; i<trigger.new.size();i++){
        if(trigger.old[i].phone!=trigger.new[i].phone){
               trigger.new[i].description='old phone number is  ' + trigger.old[i].phone + ' and  New Phone number is ' +trigger.new[i].phone ;
   }
 }
} 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值