Search for Business Partner Duplicates
You use this action to identify business partners already stored in the system that match the specified criteria. If this action finds duplicate business partners, you can decide either to use the existing business partner or to create a new one.
The action works differently depending on how it is triggered, as follows:
If it is triggered during batch processing, this action identifies the duplicates and you can implement follow-up actions in your system. For example, you can trigger a workflow or an E-mail to a tax officer who then takes a closer look. Alternatively, if the action finds one duplicate
business partner that completely matches, you may decide to automatically use the existing business partner for further activities. To do so, you can read the business partner ID information of the duplicate search results from the parameter MATCH_RESULT
.
If this action is triggered from the Tax Officer Work Center (in the following also referred to as the tax officer cockpit), the system displays the result in the Duplicate Check
dialog box (Web Dynpro application FMCA_WDY_FPF_REG_DUP_CHK
).
The tax officer can then choose an existing business partner or create a new one. If you are using a different Web Dynpro application, you have to adapt the Customizing settings accordingly. You do this in Customizing for Contract Accounts Receivable and Payable
under
Caution
To avoid inconsistencies in the system, such as, for example, creation of contract objects for duplicate business partners created accidentally, you have to make sure that no subsequent processes are executed if this action finds a duplicate.
You have checked whether you want to customize automated rules for the business partner duplicates check. You do this in Customizing for Contract Accounts Receivable and Payable
under .
How to Identify a Duplicate
To specify selection criteria such as name or address you use importing parameter IS_BPSELECT
.
If you have more selection criteria than those offered on the maintenance screen for this action, you have to specify these criteria by means of a customer include.
To do so, proceed as follows:
Enhance customer include CI_FKK_BP_SELECTION
Enter include CI_FKK_BP_SELECTION
in the Customer Include
field of this action.
Re-implement method DERIVE_BP
of interface IF_FMCA_BP_SERVICE
. You do this in Customizing for Contract Accounts Receivable and Payable
under Assign Own Implementation to Business
Partner Interface
. For more information, see the documentation of this Customizing activity.
Make these new fields visible in the BRFplus workbench in either simple or expert mode. You do this in Customizing for Contract Accounts Receivable and Payable
under Define Parameters for Static Methods of BRFplus
Note
This action is based on class CL_FMCA_BRFP_FPF_PROCESS
, method SEARCH_BP_DUPLICATES
. Parameter IS_BPSELECT
provides more input fields than are currently visible in the delivered Business Partner Duplicate
Check action. If you want to use these non-visible fields, you have implement method DERIVE_BP
of interface IF_FMCA_BP_SERVICE
again.
If this action is evoked several times in BRFplus, the system writes all duplicates into the interaction table (for information about the interaction table, see the Interaction Table
section below). In order to distinguish them, do the following:
If your form has several instances, assign the form field ID to the Form ID
field in the duplicate check action.
If the system performs several business partner duplicate checks on one form, assign a value to the Interaction ID
field in the duplicate check action.
How to Prevent Multiple Duplicate Checks
You must not call the business partner duplicate check once the business partner has been successfully created . This should not normally be a problem, but if the process chain contains further actions and one of them breaks down, you need to rerun the process. We recommend the following approach: once the Create Business Partner action has been executed, the system writes an X into a form field that you have created for this purpose. Before a duplicate check is done, the system checks this field.
How to Use This Action in the Tax Officer Cockpit
In the Tax Officer cockpit, a BRFplus function can be called more than once. Therefore, you have to use an interaction table.
Example
The BRFplus function that contains the Business Partner Duplicate Check action is called once the user selects the Create Master Data
pushbutton in the Tax Officer Cockpit. When BRFplus processing is complete, the system displays a dialog box that contains the
(duplicate) business partner that already exists in the system. You can then choose to use an existing business partner or to create a new one. After you have chosen the desired option, the system calls the BRFplus function again. As the interaction table is now filled, the system can retrieve the business
partner information from the interaction table using a table operation expression or a loop (see example below) or provide you with the information that the user decided to use the existing business partner.
The Interaction Table
If this action is triggered from the Tax Officer Cockpit, you have to use an interaction table. You do this in Customizing for Contract Accounts Receivable and Payable
under Define BRFplus Objects for Form Bundles
. Proceed as described
below:
Call Customizing activity Define BRFplus Objects for Form Bundles
Enter the your BRFplus application name.
Select Data Object
.
Select the Display
pushbutton.
Switch to change mode.
Select the Create SAP Data Objects
pushbutton.
Select the INTERACTION
field.
Save your entries.
Create a function for your BRFplus application (see step 2) and add the interaction table to this function.
The following table shows the interaction table fields and values that you need to retrieve the business partner information.
User Decision in Popup |
Interaction Table Field |
Interaction Value |
|---|---|---|
Create New Business Partner |
POPUP_DECISION |
CREATE_BP |
Use Existing Business Partner |
POPUP_DECISION BP_ID |
USE_EXIST_BP SELECTED_BP_ID |
The following provides a simplified algorithm that demonstrates how you can retrieve the business partner information through the interaction table.
You select the Create New Partner
option on the Duplicate Check
dialog box.
The system triggers the Create Business Partne
r
action
The system writes value X in a form field especially created for the duplicate check. (Note: this field was created in Customizing activity Define Forms
)
The system calls the Form Bundle Update action to make sure that this value is stored on the database.
ELSE.
The system retrieves the business partner information from the interaction table.
The system assigns the business partner information to a data object for subsequent actions such as, for example, Create Contract Object
or Create Contract Account
.
The system writes value X in a form field especially created for the duplicate check. (Note: this field was created in Customizing activity Define Forms
The system calls the Form Bundle Update
action to make sure that this value is stored on the database.
ENDIF.