Business Context
To avoid the creation of duplicate business partner / customer data and to increase the quality of master data in an existing environment it is necessary to check the address data during create / update and in batch mode.
The business function “Business Partner Quality” contains the following components to ensure a high-quality business partner base:
Process Integration: Fuzzy based search and duplicate check of BP´s / customer’s
Clearing Cockpit: It helps to identify and to clear already existing duplicate BP´s / customer’s
Search Engine: Implementation for SAP HANA Search
Solution Overview
Solution overview
1.The business partner / customer search can be executed from the user on each place in the system (F4-Help). The search attributes are collected from the screen and extended with search parameters. This search query is processed through the search engine. The result from the search engine is displayed in an ALV list with additional information e.g. license plate of vehicle.
2. After creating or updating of a business partner / customer the system checks automatically for possible duplicates. In this case the system takes all relevant address fields and creates a search query with the same search parameters like in the search scenario. The result is displayed in the same list as it is in the search scenario. The user can decide if he want to proceed with the creation / changing or take the existing business partner / customer from list.
3. To identify already existing duplicate business partners / customers, the user can schedule a batch job. This job allows to select all relevant business partner / customer with certain selection criteria e.g. creation date. For all selected business partner /customer, the system collects the address field and add search parameters. This search query is processed through the search engine and fills a table with the possible duplicate groups. The clearing cockpit selects this duplicate groups from the own table and display the business partners / customers in a split screen mode. The cockpit displays all relevant information for the duplicate decision. Additionally, the user can jump into several transactions to directly perform changes to the business partners / customers.
Process
The business process in Vehicle Sales and Service includes these functions:
...
Search for and display customer (proaxia VSS)
...
Create and edit customer (proaxia VSS)
...
Duplicate check and address data check to improve data quality (proaxia VSS)
...
View and edit customer details (proaxia VSS)
...
View and edit credit limit (SAP S/4)
...
View customer fact sheet (proaxia VSS)
...
Here we describe the following main functionalities:
- Search help for Business Partner and Customer
- Duplicate check during creation and change of Business Partner and Customer
- Duplicate clearing with search report and cockpit for analyse
Search help
DBM|E Business Partner and Customer Search Help was designed to help end-users in their everyday work with Customer/Business Partner data. As it is based on HANA Fuzzy Search it is an error-tolerant search.
Selection fields for search
On the Search Help selection screen, the most important fields for Customer/Business Partner restrictions can be viewed.
Search help fields
Result screen
On results screen popup, we are receiving a table with results of searching with our selection criteria. On the bottom of the popup we have two buttons, one for selecting the customer for further processing and one for going back to the selection screen for a new search.
Column | Description |
---|---|
Deletion | If Customer/Business Partner is marked for deletion in this table cell the icon will be shown and cell will be marked red. Additionally the table cell with Customer or Business Partner ID will be marked depending on what the deletion mark was set. |
Blocks | If Customer/Business Partner is blocked in this table cell the icon will be shown and the cell will be marked red. Additionally the table cell Customer or Business Partner ID will be marked depending on which of them was blocked. |
Customer | Customer ID |
Business Partner | Business Partner ID |
Similarity of Duplicate in % | Score of similarity of found Customer/Business Partner to selection fields |
Name | Name |
Name 2 | Name 2 |
Postal Code | Postal Code |
City | City |
Street with House Number | Street with House Number |
License Plate Number | Merged text of License Plate Numbers of vehicles assigned to Customer |
Sales Organization | Merged text of Sales Organizations to which Customer is assigned |
Date of Birth | Business Partner’s date of birth |
Telephone | Telephone |
Mobile Telephone | Mobile Telephone |
Search help result columns
Search help result screen
Duplicate check
During creation or changing Customer/Business Partner data the duplicate check is executed, which compares the data which was entered on the screen with other data from Customer/Business Partner which exists in the system. The comparison is based on HANA Fuzzy Search. If possible duplicates are found they are shown in a popup. Additionally, please be aware that the duplicate check is only executed for transactions which are permitted in the customizing settings.
Trigger for check
The Duplicate check is executed always with the first <ENTER> during the modification of Customer/Business Partner data or before saving. After every execution of the search engine (which compares actual Customer/Business Partner data to Customers/Business Partners which is stored in the system) the search fields which were used for data comparison are saved temporarily. When hitting the <ENTER> key or while saving the data after the first <ENTER> the system checks whether the search fields after the last modifications differ from the temporary stored last search fields. Only if they are different the duplicate check will be executed again.
Result screen
If any Customer/Business Partner is found that has similar data to the currently modified one a popup is shown with a table and the found results. On the bottom, we have two buttons: one button with check mark which ignores found duplicates and second button Select Duplicate which allows to continue with that Customer/Business Partner.
The columns of table on results screen are the same as in search help.
Duplicate check result screen
Duplicate clearing
Besides Search Help which is based on the fuzzy search engine and the Duplicate Check which helps to spot that Customer/Business Partner there is a selection report which helps to identify already existing duplicates. To identify already stored data a tool was prepared which searches for duplicates of Customer/Business Partner on system. Next to the selection report for duplicates, there is also a cockpit where found duplicates can be compared on many levels and which helps to decide whether the found duplicate was a duplicate of data.
Report for duplicate identification
For finding duplicates of Customer/Business Partner there is a prepared report in the system: /DBME/BMA_DUPLICATE_SEARCH which is available with transaction code: /DBME/BMA_DUPSEARCH.
Selection screen:
On the selection screen, we can specify in which areas we want to search for duplicates.
Selection screen search for duplicates
Selection criteria are separated into few groups of fields:
- Customer data – data related to basic Customer information
Selection field | Description |
---|---|
Account group | Range for Customer Account Group |
Customer | Range for Customer IDs |
Country | Range for Country Key |
Postal Code | Range for Postal Code |
Created on | Range for date on which the Customer was created |
Created by | Range for name of Person/User who created Customer |
Selection fields – Customer data
2.Order data – data related to basic VSS Order information
Selection field | Description |
---|---|
VSS Order | Range for VSS Order Number |
Document Date | Range for VSS Order Document Date (Date Received/Sent) |
Sales Organization | Range for VSS Order Sales Organizations |
Distribution Channel | Range for VSS Order Distribution Channel |
Division | Range for VSS Order Division |
Plant | Range for VSS Order Plant |
Order Status | Range for VSS Order Status |
Selection fields – Order data
3.Select OR Groups
Selection field | Description |
---|---|
OR group for search | Range which allows to make restrictions for search engine and decide which OR Group should be used during duplicate search. |
Selection fields – OR Groups
Program settings
Selection field | Description |
---|---|
Test Mode (without saving) | If this option is checked the report searches for duplicates, but does not save any results – in this case there is only a log shown with messages from the execution |
Selection fields – Program settings
Result of execution:
After pressing the Execution button / F8, the report searches for customers which are identical regarding the specific selection criteria and it checks for duplicates for every of them separately. After the execution in the application log a message is shown which informs how many duplicates were found for every customer and how many duplicate groups were created in the end. Duplicate group means a set of at least two customers.
Application log after execution
For viewing the application logs of the Duplicate searches from the past the transaction SLG1 can be used. The application logs should be searched for Object: /DBME//BPA and subobject: DUPLICATE_SEARCH.
Select Application log
To view the detailed results of the duplicate, search the Duplicate cockpit report should be used.
Cockpit for duplicate clearing
To view the found Duplicate Groups the following report was prepared: /DBME/BMA_DUPLICATE_COCKPIT which is available on transaction code: /DBME/BMA_DUPCOCKPIT.
Duplicate Cockpit Overview
On the Duplicate Cockpit screen, we have several areas
A. Buttons with actions
Action | Description |
---|---|
Execute | search for Duplicate Groups based on selection criteria |
Finish | changes status of selected row (Duplicate group) as finished/processed |
Reset | changes status of selected row (Duplicate group) as reset |
Action Buttons
B. Selection screen
Selection field | Description |
---|---|
Run indicator | allows to select the Run ID of the Search Duplicate report |
Duplicate group status | allows to decide which status of Duplicate group we would like to see (open/finished/reset). By default, the groups are shown which are not finished |
Created on | allows to restrict the result list by date on which the Duplicate Search was carried out. |
Created by | allows to restrict results list by the user who performed the Duplicate Search |
Selection Screen
C. ALV with found Duplicate groups
Column | Description |
---|---|
Run indicator | ID of Search Duplicates report execution |
Duplicate group | ID of Duplicate group |
Customer | Customer ID of first customer in group |
Address number | Address ID of first customer in group |
Name | Name of first customer in group |
Name 2 | Name 2 of first customer in group |
Street | Street of first customer in group |
House number | House number of first customer in group |
Postal Code | Postal Code of first customer in group |
City | City of first customer in group |
Counter | Number of found duplicates on this group |
Created On | Date on which created was Duplicate group |
Created By | User who executed Search Duplicates report |
Last Change | Date on which Duplicate group status was set/changed |
Changed by | User who set/changed Duplicate group status |
Duplicate group status | Status of Duplicate group (open/finished/reset) |
ALV with found Duplicate groups
D. Customers data preview – if we select Duplicate group (by double mouse click on a table row) in this area will be shown the first two customers of the selected Duplicate group. The data is separated in different tabs. Every tab contains data related to a different area.
Default DBM|ETab | Description |
---|---|
Main data | stores main customer data like e.g. names, date of Birth and address data |
Communication | stores communication customer data like e.g. telephone no.- or E-mail |
Contact Persons | stores contact persons assigned to customer |
Vehicles | stores vehicles assigned to customer |
Orders | stores orders assigned to customer |
Organizations | stores sales organization to which the Customer is assigned |
Customer data preview
E. Customer data details – to easily compare two Customers in area D the screen was separated into two areas E which are right next to each other. On the bottom of each area we have buttons and icons with arrows which allow to change which Customer of Duplicate group is currently shown. What is seen inside of this area depends on the tab that was opened (from area D). For tabs with plain data, the implemented solution is to highlight (with blue font) the label and input field which have different values in the left and right area – that makes it easier to compare the data. In each tab, there is an area with basic data which shows Customer ID and some other important and universal information. On the bottom set are buttons which allow to navigate to SAP standard transactions.