Function documentationSearch 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 Start of the navigation path Public Sector Tax Assessment Next navigation step Form Processing Next navigation step Form-Based Processes Next navigation step Define Events for the Web Dynpro Application for Form Processing. End of the navigation path

Caution 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.

End of the caution.

Prerequisites

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 Start of the navigation path Basic Functions Next navigation step Contract Partner Next navigation step Check of Duplicates End of the navigation path.

Features

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:

  1. Enhance customer include CI_FKK_BP_SELECTION

  2. Enter include CI_FKK_BP_SELECTION in the Customer Include field of this action.

  3. 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.

  4. 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 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.

End of the note.

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 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.

End of the example.

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:

  1. Call Customizing activity Define BRFplus Objects for Form Bundles

  2. Enter the your BRFplus application name.

  3. Select Data Object.

  4. Select the Display pushbutton.

  5. Switch to change mode.

  6. Select the Create SAP Data Objects pushbutton.

  7. Select the INTERACTION field.

  8. Save your entries.

  9. 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 Partner 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.