Wednesday, June 10, 2015

2 Common issues in the account merge in SAP CRM on-premise

The account merge, or data cleansing, in SAP CRM allows you to compare and merge duplicate business partner records in data cleansing cases. When the data cleansing process has been completed, you can remove the redundant data records from the system using archiving.

When you have setup the account merge in SAP CRM you have 2 options for identifying duplicate records and creating a cleansing case.

  • From the search result list for accounts/employees. When you select two (or more) accounts/employees that you want to merge, the account merge button becomes active and you can create a cleansing case.

  • If the duplicate check is activated for accounts a dialog box appears when you create or edit an
    account and a potentially duplicate account is identified. The similarity of the duplicate is shown in percent.
In this Blog we will not describe the complete setup of the account merge functionality but we will focus on 2 common issues.

For a complete description of the account merge functionality and the setup check out the following documentation:

One of the steps for setting up the account merge is the customizing in transactions BUSWU01 and BUSWU02 in the SAP GUI and that is where our first issue comes in.

The account merge is not working correctly after a system upgrade

In the transaction BUSWU02 you can customize which objects can be selected on the cleansing case page in the Web UI and which objects are merged automatically in the background. This is done via the following view variants:

  • CLEARING: The dependent objects appear on the UI.
  • CLEAR_REP: Nodes which can be merged via a background job. Usually, it is recommended to configure nodes which have the possibility of high data volumes in this variant.

You can make additional objects available as dependent objects. You do this in the SAP GUI transaction BUSWU01. If you add additional objects, you also have to make corresponding adjustments in the transaction BUSWU02
After  a system upgrade or the import of support packs, you run into the issue that the account merge is not working correct. When you check the customizing transactions BUSWU01 and BUSWU02 you will probably see that the data structure in BUSWU01 is corrupted. This is caused by missing entries in tableTBZ5.

How can we fix this?

In “older” CRM versions you had the possibility to import files with the standard SAP entries for the TBZ5* tables from OSS note 1512517. The note provides you with the program to upload the files (report TBZ5_RECORD_CREATE) and the files with the customizing for tables TBZ5, TBZ5T, TBZ5F.

With CRM 7.0 EhP1 SP09, CRM 7.0 EhP2 SP04 and CRM 7.0 EhP3 life has become even simpler, a new solution is available: report CRM_BUPA_TBZ5_UPDATE.
You can run this report via transaction SE38 and it will reset the customizing in transaction BUSWU01 and BUSWU02 (view variant CLEARING and CLEAR_REP) to the standard structure delivered by SAP.

This report overwrites the customizing for the nodes in the SAP name space with the default customizing. So if you created or changed nodes in SAP name space, these changes will be overwritten by the report.
Nodes created in customer name space (Y* or Z*) are not removed, but these nodes will be moved to the end of the tree in transaction BUSWU01 and BUSWU02. These nodes will be processed in the Business Partner Merge as usual.

For more information check out OSS notes:
1702041 - BP Merge: Entries in BUSWU01 lost after Upgrade
1512517 - BUSWU01 Structure Corrupted After System Upgrade

Older business transactions are not taken into account during account merge

When you create a cleansing case you may run into the issue that older business transactions are not moved from the source account to the target account. In standard SAP the business transactions older than 400 days are not retrieved during the data cleansing case of a business partner. The 400 days restriction is a fixed value in the coding.

How can we fix this?

Since 400 is a fixed value, you need to redefine the method  IF_EX_CRM_BUPA_ORDER_CLEAR~READ_ORDER_OBJECTS in Badi CRM_BUPA_ORDER_CLEAR.

Check out following OSS note for more details:
2127903 - business transactions cannot be merged if it is more than 400 days