Skip to Content
Technical Articles
Author's profile photo Chelliah Soundar

CVI Cockpit – Master Data Consistency Check

Business Partner Approach is an important simplification item in SAP S/4HANA. In SAP S/4HANA, Business Partner is the leading object, and the transaction BP is the single point of entry to maintain Business Partner, Customer, and Vendor. Customer Vendor Integration (CVI) is the process by which the Business Partner approach is established in the system. Therefore, if an SAP customer is planning to convert their SAP ERP system to SAP S/4HANA, CVI must be implemented and the synchronization of Customer and Vendor to Business Partner must be completed in their SAP ERP system before starting the technical conversion of the system to S/4HANA.

SAP is offering several tools and processes to complete CVI implementation in an SAP ERP system. CVI Cockpit, the newly developed comprehensive tool, is provided by SAP to complete the CVI implementation and synchronization in the SAP ERP system. One of the features of this tool is Master Data Consistency Check which I will explain in this blog post. This feature is a report that can be executed from the CVI Cockpit from the Preparation tab as shown below. This Master Data Consistency Check report can be run outside of the CVI Cockpit by executing the transaction CVI_PRECHK as well.

This report provides an overview of customer and vendor master data consistency that is required for conversion to Business Partner, along with the capabilities to make updates and corrections to both customer and vendor master data.

The screenshot below shows the initial page of the report.

On the initial screen, you can select either customer or vendor and execute the report to check the data consistency of all the customers or vendors in the system. It is possible to narrow down the selection by entering a range of numbers and/or account groups and execute the report for a small set of customers or vendors. By default, all business checks (Tax Code, Postal Code, Email, Transportation Zones, Tax Jurisdiction, Number Range, Industry, Bank Data, Address) are selected as shown in the screenshot above. You can select business checks as needed.

Once the appropriate selection criteria are set, you can execute the report. On executing the report, you will see the output listed under Run History as shown below.

Clicking on the Run ID will display the details of the inconsistencies as shown below.

It is possible to choose Edit as shown below and select, for example, Transportation Zone. In this example, the error is that the Transportation zone 0000000003 is not defined for country CH. In your system, you may see errors for any of the listed business checks as shown in the initial screen.

Once you select Transportation Zone, it shows only inconsistencies relevant to Transportation Zone as below. From this screen, you can enter the new values and click on the check button to validate the entry.

It is possible to use the Mass Populate button if you want to provide the same value (New Value) for all the errors. Click on the Mass Populate button to see the following pop up screen. Enter the new value and click on the green check button.

Now all the records in the results list for transportation zone will get filled with the new value that we passed in the mass populate pop up screen as shown below. Then, if you click on the Check button, you will see the message, “Input value will correct the error”. If everything is good, you can click on the Save button which updates the data in the database and clears the errors.

If you rerun the same report, you should not see the errors that you have just fixed. You will see only the remaining errors. In our example, only the Tax Code error is now listed as shown in the screenshot below. As you can see in the message column, this error cannot be edited and corrected from this screen. You need to analyze and resolve the issue and rerun the report to make sure that the error is cleared.

I hope this blog post was helpful for you. If so, click on “like” or “share”. I’m looking forward to your feedback and thoughts you may have in the comment section below.

Thank you.

Brought to you by the S/4HANA RIG

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Sasibhushan Padmanabhan
      Sasibhushan Padmanabhan

      Hi Soundar,

      Its a good document . Great blog.



      Author's profile photo Megha Shah
      Megha Shah

      Hello Soundar,

      Very helpful document.



      Author's profile photo René Redrigue Efila Minkoulou
      René Redrigue Efila Minkoulou


      When i active synchronization options BP - Customer  I get dump error

      someone has an idea

      Author's profile photo Geetha L N S
      Geetha L N S

      Hi Chelliar,

      Very good document. What kind of validation does CVI do tax jurisdiction and GeoCode. Does it check what format it has like tax jurisdiction should be 8 digits or it validates whether a given tax jurisdiction is a valid one or not for a given address.

      Similarly Geocodes how does it validate. Does it need address directories. Can you please clarify.




      Author's profile photo Bilal Daud
      Bilal Daud

      Thank you for the detailed document.

      I wanted to ask, what is the difference between CVI_COCKPIT and CVI_PRECHK Tcodes?

      CVI_COCKPIT is working for me after I implemented list of SAP notes for it, but CVI_PRECHK is throwing short dump every time I execute that transaction.


      Short Text
      Syntax error in program "CL_CVI_PRECHK=================CP ".


      What happened?
      Error in the ABAP application program.

      The current ABAP program "CL_CVI_PRECHK_UI==============CP" had to be
      terminated because it found a
      statement that could not be executed.
      In include "CL_CVI_PRECHK=================CM00M ", in line 14 of program
      "CL_CVI_PRECHK=================CP ", the following syntax errors
      have occurred:
      No value was passed to the mandatory parameter "IT_SELECTION_PARAM".


      Author and last person to change the include are:
      Author XXXX
      Last changed by "XXXX "


      Any Idea?



      Author's profile photo Muhammad Ali
      Muhammad Ali

      This is outside cockpit execute the same through tcode CVI_Cockpit