Files
Demo1/force-app/main/default/triggers/DuplicateContact.trigger
2025-04-02 17:50:49 +05:30

25 lines
770 B
Plaintext

trigger DuplicateContact on Contact (before insert) {
Set<String> emailAddresses = new Set<String>();
for (Contact contact : Trigger.New) {
if (emailAddresses.contains(contact.Email)) {
contact.Email.addError('Email already exists!');
} else {
emailAddresses.add(contact.Email);
}
}
List<Contact> existingContacts = [
SELECT Id, Email
FROM Contact
WHERE Email IN :emailAddresses
];
for (Contact contact : Trigger.New) {
for (Contact existingContact : existingContacts) {
if (contact.Email == existingContact.Email && contact.Id != existingContact.Id) {
contact.Email.addError('Email already exists!');
}
}
}
}