When an account or contact has a duplicate account or contact in Enterprise, it is possible to merge the two accounts or contacts to become one. For more information about merging accounts or contacts, see Manage Duplicate Accounts and Contacts.
The purpose of this article is to explain the technical process that happens in the application, when a user clicks OK on the Merge Accounts window.
In this article:
Data and Access Privilege Validation
When merging two accounts or contacts, the account/contact data and access privileges will first be validated to ensure:
- The organization code and account code of the Merge From and Merge To accounts are different.
- Both account records exist in the EV870_ACCT_MASTER table.
- A Master Synch account is not merged into a Subordinate Synch account.
- The Merge From account is not being used as a resource.
- The user’s Allow Merging of Accounts with Accounts Receivable Information privilege is checked. If this access privilege is absent and the accounts have records in the AR020_TRANSACTIONS or ER200_PAYMENT_PLAN tables, the process will abort.
- The user’s Allow Merging of Accounts with Accounts Payable Information privilege is checked. If this access privilege is absent and the accounts have records in the AP100_VOUCHER table, the process will abort.
Processing of Data Tables
The following changes will be made to the data tables when merging the accounts/contacts:
- Account Code: The account code of the Merge From account will be overwritten with the account code of the Merge Into account. In most tables, the change in the account code field is the only thing needed. See the Data Table Updates document attached to this article, for the full list of modified columns across all relevant tables.
- Events: Any events list on the Merge From account/contact will be moved to the Merge Into account/contact. See EV200_EVENT_MASTER information on the document attached to this article.
- Orders: Any orders and order details listed on the Merge From account/contact will be moved to the Merge Into account/contact. See ER100_ACCT_ORDER and ER101_ACCT_ORDER_DTL in the document attached to this article, or more information.
- All other fields on the EV870_ACCT_MASTER account record will be updated as per the document attached to this article.
Synchronization Data and Multi-Organization Updates
Depending on if the accounts/contacts being merged are Master, Subordinate or Stand-Alone accounts/contacts, the following Synchronization Data and Multi-Organization rules will apply when merging:
- If the Merge From account/contact is a Master record and the Merge Into account/contact is a Stand-Alone record, the Merge Into account/contact will become the Master synchronization record. The Merge From account/contact's synchronization data will be cleared.
- If the Merge From account/contact is a Master record and the Merge Into account/contact is also a Master record, the Merge Into account/contact will become the Master synchronization record for all of the Merge From account/contact's subordinate accounts or contacts. The Merge From account's synchronization data will be cleared.
- If the Merge From account/contact is a Subordinate record and the Merge Into account/contact is a Stand-Alone record, the Merge Into account will become a subordinate synchronization record and all of its related multi-organization data will be updated. The Merge From account/contact's synchronization data and related multi-organization will be cleared.
- If the Merge From account/contact is a Subordinate record and the Merge Into account/contact is a Subordinate or Master record:
- All of the Merge Into account/contact's related multi-organization data will be updated, and the Merge From account/contact's synchronization and related multi-organization data will be cleared.
- The application will also check if the Merge From account/contact's master is still a master account to another subordinate account. If not, the synchronization and related multi-organization data will be cleared.
- If the Merge From account/contact is a Stand-Alone record and the Merge Into account/contact is a Subordinate or a Master, the synchronization and related multi-organization data of the Merge Into account/contact will remain.
- If the Merge From account/contact is a Stand-Alone record and the Merge Into account/contact is also a Stand Alone record, the Merge Into account/contact's multi-organization data will remain.
Other types of Accounts and Contacts
Other rules apply when merge accounts or contacts meet the following criteria:
- Property Accounts: If the Merge From account is a property and the Merge Into account is not, the property related data is moved to the Merge Into account and the data is cleared from the Merge From record.
- Membership Accounts/Contacts: Any membership billing information contained in EV885_MEMBER_INFO table will be moved to the Merge To account/contact. Billing, paid dates and amounts are also moved.
- Accounts linked to a User: Any User record (MM405_USER_MASTER_EXT) related to an archived Merge From account or contact is retired.
Contacts Relationship Links
When a contact is merged, the following rules apply when processing their relationship links (EV875_ACCT_LINKS):
- Relationships links are checked individually to prevent the creation of duplicate records. Those links that will not create duplicates are moved to the Merge Into contact and, if the Merge Into contact does not already have a primary account relationship, the Merge To contact's primary account field (EV870_PRIMARY_ACCT) will be updated with the primary account of the Merge From contact's relationship.
- Relationship links can be downward links (from master to subordinate) or upward links (from subordinate to master). These are types of links are processed as follows:
- If the Merge From contact's relationship link is not unique and is not mandatory, the link is deleted from the Merge From account and is added to the Merge Into contact. If the Merge Into contact already has an identical relationship link there will no change on the Merge Into contact and the Merge From contact's relationship link will be made inactive.
- If the Merge From contact's relationship link is not unique and is mandatory, the Merge From contact’s link is kept and a copy is added to the Merge Into contact.
- If the Merge From contact's relationship link is unique and is mandatory, the application will check if the Merge Into contact already has this type of link. If so, the Merge From contact's relationship link will be made inactive. If not, a unique downward relationship link will be added to the Merge Into contact.
- If the Merge From contact's relationship link is for a Parent (link class = P), no changes will be made to either contact.
- If the Merge From contact's relationship link is not unique, the Merge Into contact's relationship link will be updated.
- If the Merge From contact's relationship link is unique and is not mandatory, the link is deleted from the Merge From contact and added to the Merge Into contact.
- If the Merge From contact's relationship link is unique and is mandatory, the application will check if the Merge Into contact already has this type of link. If so, the Merge From account's relationship link will be made inactive. If not, a unique upward relationship link will be added to the Merge Into account.
Comments
10 comments
0 upvotes
Lee, what I have been told so far is this: For EV870 (Hotel Flag, Hotel Capacity, Hotel Rating, Check in Time, Check out Time, Pay Location, Method of Money): If the merge account is a property and the merge into account is not, move over all the EV870 attribute data. Blank out all the merge account's attribute data.
For EV870_REP_CODE fields: A merge from account might have been set as the account representative of other accounts. The account rep fields of those represented accounts are changed to the merge into account code.
For ADDRESS fields: Address change to merge accounts: The address on subordinate accounts (for the 'merge account') will update to the address of the 'Merge into account' if the subordinate address matches the address for the merge account.
If the address of the subordinate is different from its master(the 'merge account') then no changes will happen.
For COMPANY: When merging account A into B, if the company name of the secondary accounts attached to account A is same as the company name of Account A then the company name of the secondary accounts attached to account A would be updated to the company name of account B.
--Carrie
0 upvotes
Is there any way to add custom fields to the Merge Process? In the event of custom integrations, additional tables of data for accounts may exist. It would be great to be able to specify somewhere your own Table and Column values that should also be processed with the Merge.
1 upvotes
Sean, please submit this as an enhancement request.
Thank you!
--Carrie
0 upvotes
A few questions I have related to this topic that hopefully can be answered either through this conversation or a phone call would work as well.
1) Do you lose any notes/activities/documents on the "Merge from" account after you merge master accounts?
2) Do any previously closed/invoiced orders move into the "Merge to" account from the "Merge from" account?
3) What if you have open A/R or A/P balances on the "Merge from" account? Will these be lost or do they need to be at a zero balance?
4) If you have contacts in a subordinate "Merge from" account, what happens to these if you merge them into the "Merge to" master account?
I may have other questions depending on the answers but any help someone can provide would be great.
Thank you
Trevor
1 upvotes
Hi Trevor!
To answer your questions in order:
1 – No notes, activities, or documents are lost. They are moved to the “merge to“ account.
2 – Closed invoices are moved to the “merge to” account.
3 – Open balances are moved to the “merge to” account.
4 – The contacts are moved to the “merge to” account.
Thank you!
--Carrie
0 upvotes
Hi, I am wondering about the Contacts during the merge. It looks to me that when there are contacts on a merge-from account, the address on the contact gets lost and takes on the address of the destination account. Has anyone figured out a way to keep the original address on the contact and just have it (the contact) move to the new account for association purposes but keep its original data (address) ? thanks very much, Eileen
0 upvotes
Hi Eileen,
I see you opened a ticket for this question, and a USI team member answered you. Just in case anyone else would be looking for this information, I wanted to repost his answer here:
I tested this in current code and the contact does indeed pick up on the address from account into which it was merged. I also edited the layout of the merge window and there is no setting to disable this behavior.
However, I remembered you could break this link. If you edit the contact before merging, and change their address info in some way the contact is no longer synced. Then when you merge the accounts, the contact still has their own/old address.
--Carrie
0 upvotes
We have multiple accounts that have been created using our online service ordering module with different contacts. We are open to merging the accounts to 1 and having multiple contacts. After the accounts are merged, how will this effect the online ordering process when a contact logins in to order services at a later show?
They currently enter their email address and password to pull up their account. With the merge does that information transfer to the newly merged account? Or, is that link broken when the old account is lost?
0 upvotes
The contact will be linked to the surviving account.
0 upvotes
Please sign in to leave a comment.