Stopping the creation of duplicate contacts

Does anyone have any suggestions on how to stop the creation of a new contact record when a duplicate Email Address is used? I’m thinking of trying to use either a Method or Data Directive, but not totally sure the best way to get there. I’m thinking Data Directive on the PerCon table when a new record is being created to validate against other email addresses in the table. I’m just not sure if that will stop the creation of the record on items such as the CustCnt table. I’m trying to do some testing in between projects and other day-to-day needs, which is not going very quickly but I was hoping someone else might have already run into this and possibly have some suggestions.

Eric, I’ll be following this one closely.

In general I get confused about contacts. You can end up with a million duplicates.

I feel like there is a built in way to avoid this already, is there not?

There is the built-in Partial Match function, but it is counter-intuitive. You have to make a selection and then click “CANCEL” in order to use the already existing contact. It is completely opposite for everything else in the system…select the record you want to use and click “OK”…A major mistake on Epicor’s part IMHO!

3 Likes

OKAY THANK YOU!!! I was so confused about how that screen worked!!! That’s why I never understood it.

select an existing row you would like to use + Cancel = contact not created, existing contact used.

is that right?

As far as I understand it and my testing has been confirmed. You can confirm on your end, but that’s what I found to be true.

you are right. Wow, never noticed that.

That Partial Match Contact screen is hopelessly confusing. Users freeze up when they see it and end up making an absolute mess out of contact data.

2 Likes

I’m finishing up tackling this. Most of our duplicates come from quote entry. Took forever to clean up as the duplicates had links to all kinds of places; wasn’t DMTable AFAIK. Things I put in place to avoid future duplicates:

  1. With a BPM, blank the ShipTo field on new Quote Contact. May not be for everyone.

  2. Added BPM that checks for duplicate emails, duplicate names, and name formatting issues.

  3. Added BPM to delete contacts from CustCnt and PerCon tables, when deleted from a quote (if the contact is not on any other quotes or orders). Attached as this should be built-in functionality IMO.
    DeleteOrphanedCustomerContact.bpm (93.1 KB)

  4. Enabled Customer Contact Entry for relevant people. See this post: Updateable Dashboard - Customer Contact Entry - #10 by Nancy_Hoyt

  5. Customized Quote Entry Contacts page a little bit

  6. Sent out an email telling everyone how they can now edit contacts, and how the Partial Match dialog works. In our installation/version, on Quote Entry, OK uses an existing contact, Cancel creates a new contact…

Above is all for Quote contacts. One day I may implement something similar for Supplier Contacts.



image

5 Likes

Terry, thanks for documenting your approach and linking those BPMs and threads.