How do prevent to delete the Records only Owner or Creater of the Record in Salesforce?

If object model is public and delete button is enabled to pagelayout, but Owner or Contact only to delete the contacts records.
not possible with the help of validation rules so its achievable with the help of Apex Trigger not allow to delete the contacts records otherthan from Users who are not Owner or Creater of the Record.

Apex Trigger in Contact Object:
trigger ContactTrigger on Contact (before delete) {
if(trigger.isBefore){
if(trigger.isDelete){
for(Contact C : trigger.old){
if(!(C.OwnerID == UserInfo.getUserId() || C.CreatedById == UserInfo.getUserId())){
C.adderror(‘You can only delete the record which is Owned or Created by you.’);
}
}
}
}
}

(1178)

Written by 

I am Sakthivel Madesh, a certified Salesforce Developer & Administrator working on Salesforce Technology since 2011. I am currently working in IBM Austraila as Sr. Salesforce Developer. I have worked on multiple technologies Like PHP, Java, Salesforce, I am very passionate about Salesforce and to earn 10 Salesforce Certification. I love Trailhead for learning Salesforce Skill and Become a Trailhead Ranger too. I Love to Learn & Share my Salesforce knowledge to Salesforce Learners/Beginner using My Blog and Salesforce Community.

Leave a Reply