Skip to end of metadata
Go to start of metadata

About Cross Database Comparison

Cross Database Comparison (CDC) is a tool in SAP Solution Manager. You use this application to compare data sources with a complex structure or hierarchy. You can also do this across different systems. By doing so, you check whether the data in the source and target systems is consistent, for example, whether updates in the source system have been correctly replicated to the target system. Examples of complex data sources are sales orders with several billing items or a customer master record containing multiple addresses, partner roles, and bank details.

Even though the data sources must contain the same data logically, they can have different values once they have been forwarded to a different system, for example from an ERP system to a CRM system.

You can:

  • Model the data you want to compare

  • Compare data at any time or schedule regular comparisons

  • Display the results in an overview containing all the relevant details

This is a generic application, which means that you can use it to check the data consistency in both ABAP and non-ABAP systems. To do so CDC provides multiple access paths to the data which are called source types.

Customers often ask the following questions:

  • How can I check data between different SAP or Non-SAP systems for consistency?
  • How can I proceed if I face an inconsistency that cannot be detected by standard consistency check tools, but I do not want to write additional coding for each of the required checks?

From those questions, the following requirements for Cross Database Comparison can be derived:

  • Data in different systems including Non-SAP systems or XML files needs to be checked for consistency
  • Typical use cases include ad-hoc or regular end-to-end comparison of master or transactional data exchanged between multiple systems including non-ABAP systems

What can you do with Cross Database Comparison?

  • You create comparison objects in the solution manager system. In a comparison object, you specify which data from which data sources (SAP/Non-SAP systems) you want to compare and create filters. The data extractors provided in the managed systems, extract the required data and save it either centrally on a file server and later used by comparison run or directly used for comparison run in the Solution Manager system.

  • You create comparison definitions. A comparison definitions contains a data model. In a comparison definitions, you specify which specific systems are to be compared using which filter settings.

  • You create comparison groups. A comparison group contains several comparison definitions which are grouped logically and started and stopped together during the comparison run.

  • You schedule comparison runs. By doing so, you specify when and how often you compare the relevant data sources.

  • You display the comparison results. By doing so, you can see where the inconsistencies are in the data sources. You can display the results of the comparison in Business Process Monitoring and in the BPO dashboard as well. To do so, configure the relevant settings in Customizing for Business Process Monitoring and for the BPO dashboard.

 

 

What does CDC Provide

General Features

  • Delivered with SAP Solution Manager 7.0 (SP28), 7.1 and 7.2. We strongly recommend using Solution Manager 7.2 as the handling was improved and simplified. For a list of features available in the different Solution Manager versions and SPs see below.
  • No add-on needed (except for using the generic ABAP extractor function Module or integration into Business Process Monitoring)
  • Supports multiple source types for on-premise and cloud products, including SAP ABAP system, remote database, file, OData service calls. It can be enhanced by custom source types as well.
  • Offers comparison of multiple tables in two source systems
  • Offers easy to use graphical UI to enter data model
  • Offers possibility to save and re-use comparison parameters and data model
  • Extracts data from sources and executes comparison in SAP Solution Manager
  • Offers functionality to save and display comparison results
  • Allows splitting comparison data into multiple blocks of configurable size
  • Supports integration into Business Process Monitoring

Solution Manager 7.2

SP08

  • Add extra fields to the data model for storing converted field content
  • Improved validation on data dictionary
  • Tolerances to ignore small differences (like rounding differences) 
  • Transport of group type definitions
  • Ariba Networks (Using Transaction Monitoring API V2) source type for Ariba Networks
  • Ariba P2P/P2O (Using Operational Reporting API) source type for Ariba Procurement
  • SAP BW Data Manager Read Interface source type for BI/BW

SP07

  • Drill-down comparisons
  • Ariba (Using OpenAPI Version 2) source type for Ariba Networks

SP06

  • Duplicate Checker to find comparison keys that exists more than once in a source system
  • New Enhancement Spots (BAdIs)

SP05

  • Monitoring of comparison groups
  • BAdI definition to access comparison filters
  • Native support for CDC within Dashboard Builder

SP04

  • Parallel job processing for Group Comparison

SP03

  • New and improved mass activities to handle large comparisons
  • Aggregated comparisons
  • Filter sets providing new filtering capabilities (“Expert Filter”)
  • Improved IDC-integration
  • Improved comparison group handling and correlation
  • Analytics and Dashboard integration
  • Split Large Comparisons

  • Reordering of tables and fields in the data model

SP01

  • Improved UI streamlining common tasks
  • New and improved mass activities
  • JNET-based data model replaced by SAP UI5 based data model
  • New source type for BW-access
  • New source type for OData
  • New source type for CSV-files
  • Personalization

Solution Manager 7.1

SP14

  • New source type for BW-access (Downport from Solution Manager 7.2 SP1)
  • New source type for OData (Downport from Solution Manager 7.2 SP1)
  • New source type for CSV-files (Downport from Solution Manager 7.2 SP1)
  • New data collector starting automatically once a comparison is finished
  • Improved automapping

SP12

  • New extraction strategy to execute comparison in one system
  • New source type HANA for comparison in one HANA database to compare data between one HANA database and a second database
  • Integration of Internal Database Comparison with new source type
  • Improved SLT integration
  • Improved source type XML file access on application server
  • Offers new comparison scenarios and special options to execute a comparison run
  • Allows to set block size for each source system in comparison instance

SP10

  • Supports all kinds of filtering on Comparison Object and Comparison Instance level
  • Integration into Incident Management
  • Grouping of Comparison Instances and correlation of results
  • Integration into BPO Dashboards
  • Supports leading systems via different extraction strategies
  • New Source Type to access ABAP-based systems dynamically
  • Version Management and history of changes
  • Extraction of context fields
  • Improved authorization concept
  • Mass generation of Comparison Objects and Comparison Instances

SP5

  • Supports iteration
  • Supports data conversion
  • Upload and download of Comparison Objects and data models as XML
  • Proposals for foreign key relations and mappings
  • Key fields, filters and conversions are visible in graphical data model
  • New Source Type “Local File”
  • Pie-Chart for distribution of inconsistency types and affected fields
  • Trend-Charts
  • Confirmation of Comparison results

 

 

Correct Version of Software Components

In order to set up CDC, you require having a Solution Manager 7.2 with the most current Service Pack. Also it is highly recommended to have the latest ST-PI and ST-A/PI addons installed on the managed ABAP systems.

The newest releases and latest versions are always available via the SAP Service Marketplace by using the URL http://service.sap.com/swdc.

For the latest information regarding software requirements (Support Packages and SAP Notes) please refer to SAP Note 521820.

ST-A/PI (on SAP Solution Manager) needs to be considered only in such cases, where in you would want to integrate CDC comparison results into BPMon. ST-PI (on each ABAP source system) needs to be considered in cases, where you would want to use the generic ABAP extractor function module instead of generating specific ABAP extractor function modules for each data model.

 

Notes Required

Solution Manager

SP09

2786066 - Advance Corrections CDC SM 7.2 ST720 delivered with SP10

SP08

2725800 - Advance Corrections CDC SM 7.2 ST720 delivered with SP09

2646825 - Correction CDC Usage Reporting

2739510 - CDC 7.2: New conversion routine for Oracle default date

SP07

2610756 - Advance Corrections CDC SM 7.2 ST720 delivered with SP08

SP06

2518091 - Advance Corrections CDC SM 7.2 ST720 delivered with SP07

2777967 - CDC 7.2: Block extraction fails for Source type OData when using keys on which no relative filters can be applied

SP05 

2438807 - Advance Corrections CDC SM 7.2 ST720 delivered with SP06

2608272 - CDC: Incorrect query generation when using multiple blocks in the OData Source type

SP04 

2396468 - Advance Corrections CDC SM 7.2 ST720 delivered with SP05

2474498 - Downport for CDC Reporting API

SP03 

2321224 - Advance Corrections CDC SM 7.2 ST720 delivered with SP04

General Notes (ST-PI and ST-A/PI)

ST-PI

2643766 - CDC Generic Extractor: WHERE clause for expert filters generated without table name

2602099 - CDC Generic Extractor: Expert filters with only one filter

2635751 - CDC: Syntax error in where clause for table names with special characters for expert filters in source type ADBC

2570281 - CDC generic extractor: Expert filter with one set

2601343 - CDC: Expert filters with only one filter

2493939 - CDC Generic Extractor: Wrong WHERE clause generation for Expert Filters with multiple values

2305841 - CDC Generic Extractor: New features for Aggregates & Aggr.Filters

2425486 - CDC: Enable views for IDC source type

2198113 - CDC: Generic extractor fails to extract objects with initial key value

2187045 - CDC generic extractor: error extracting data from view

2183824 - CDC generic extractor: invalid SQL statement because of truncated column name

2083332 - CDC generic extractor: error when joining multiple tables to the same table

ST-A/PI

2768684 - Cross Database Comparison: Lower case schema names not considered

 2316675 - CDC Data Collector Performance Issues

 2333929 - CDC / BPMon nonABAP: Support quoted IDs for dot and colon in table/view names

 2317307 - Incorrect monitoring values

 2266779 - /SSA/ENA terminates unexpectedly because of CX_SY_DYN_CALL_ILLEGAL_TYPE and keyfigures not displayed because CL_DSWP_CDC_RESULT method not found

Service Activation

In order to run the CDC WebDynpro application inside your browser, you have to activate the corresponding services per transaction SICF (right-click on service name and choose Activate Service):

  • WDA_DSWP_CDC_MAIN is mandatory for the main application
  • WD_DSWP_CDC_ACF if you want to compare XML files from your local PC 
  • WDA_DSWP_CDC_GENERATION if you want to use mass generation of comparisons
  • WDA_DSWP_CDC_GROUP_M if you want to use comparison groups

To use the Cross Database comparison tool in solution manager, certain roles and authorizations are required. This is to prevent misuse of sensitive data and to only allow certain functionality to be accessible by certain users. Below is a simple CDC workflow and authorization chart.

Following different types of authorization are required to be able to create and run CDC comparison in solution manager:

General Authorizations

Several authorization objects control the access to the different features of the Cross Database Comparison. To access and work with the Comparisons the following authorizations are needed:

Data Model Maintenance 

Comparison Maintenance

Authorization object SM_CDC_OBJ

Authorization Object SM_CDC_INS

Restriction to specific Data Model names via authorization field CDC_OBJ_N


ActivityDescription

01

Create
02Change of an existing Data Model 
03Display of a Data Model
06Deletion of a Data Model
07Generation of extractors, e.g. ABAP function modules
36Creation of a Comparison (Instance) for a given Data Model

Restriction to specific Comparison names via authorization field CDC_INST
Restriction to specific Source Types via authorization field CDC_S_TYPE
Restriction to specific Connections via authorization field CDC_CONN

ActivityDescription
01Creation of a new Comparison
02Change of an existing Comparison
03Display of a Comparison
06Deletion of a Comparison
16Execution of a Comparison
35Display results of a Comparison Run
65Reorganize old results of Comparison Runs

Others

Authorization object SM_CDC_OBJ

Authorization Object S_DBCON

To trigger the Extractor Function Module Generation in the managed system

ActivityDescription
07Activate, Generate

Extraction from remote database (ADBC connection)

ActivityDescription
71Activate, Generate

Template Roles

SAP_CDC_OBJECT_MODELER * 

For developing Data Models: The Object Modeler can create/change/delete the data modeling and generation, but is not allowed to create a runnable comparison instance of it

SAP_CDC_INSTANCE_CREATOR *

For creating/developing Comparisons: The Instance Creator can display and use an existing data model in order to create/change/delete comparisons, but cannot change the data model itself

SAP_CDC_INSTANCE_EXECUTER

The Instance Executer can execute and reorganize the comparison run, but can neither output the result, nor change the comparison and its data model

SAP_CDC_INSTANCE_ANALYZER

The Instance Analyzer can output the result (business data), but cannot execute the run himself, nor change the comparison and its data model

A user typically has a combination of the two roles SAP_CDC_OBJECT_MODELER and SAP_CDC_INSTANCE_CREATOR

Source Type and Special authorizations

These are authorizations depending on the used Source Types (access techniques to the source systems), Business Process Monitoring and SLT. Some may be needed on SAP Solution Manager itself and some may be needed on the individual source system

The following authorizations are needed to generate extractor function modules in the managed system:

During definition of Data Models
On SAP Solution Manager
  • Read RFC Connection to managed development system (with background user), for dictionary access
  • Trusted RFC Connection to managed development system (with dialog user), for extractor generation
On managed system
  • Authorization object S_DEVELOP (to create new function modules)
  • Authorization object S_RFCACL (to use the trusted connection)
  • Authorization object S_RFC (to execute function modules remotely)
    • Function group SEUF for function module RS_FUNCTIONMODULE_INSERT
    • Function group SUNI for function modules FUNCTION_EXISTS and RS_FUNCTION_POOL_INSERT
    • Function group OXT_GENERIC_SERVICES for function module OXT_CHECK_DEVCLASS
    • Function group SDTB for function module DD_TABL_GET
    • Function group SDTX for function module RFC_READ_TABLE
    • Function group SRFC for function module RFC_PING

Available as template role SAP_CDC_EXTRACTOR_GENERATOR

During execution of Comparison Runs
On SAP Solution Manager
  • Read RFC Connection to managed system, for data extraction (typically from the production system)
On managed system
  • Authorization object S_TCODE for transaction SE16

  • Authorization object S_TABU_DIS (for the table groups to be extracted)

    • S_TABU_NAM is also supported 

    • For details on these two authorization objects see SAP Note 1434284

    • You need to maintain all table groups/names manually according to your data models!
  • Authorization object S_RFC for the generated extractor function modules
    • The function group is typically in Z namespace

Available as template role SAP_CDC_DATA_READER

(Using a generic extractor function module and IDC)

During definition of Data Models
On SAP Solution Manager

Read RFC Connection to managed system, for dictionary access

On managed system

Authorization object S_RFC (to execute function modules remotely)

  • Function group SUNI for function modules FUNCTION_EXISTS and FUNCTION_IMPORT_INTERFACE
  • Function group SDTB for function module DD_TABL_GET
  • Function group SDTX for function module RFC_READ_TABLE
  • Function group SRFC for function module RFC_PING

Available as template role SAP_CDC_DATA_READER

During execution of Comparison Runs
On SAP Solution Manager

Read RFC Connection to managed system, for data extraction (typically from the production system)

On managed system
  • Authorization object S_TCODE for transaction SE16
  • Authorization object S_TABU_DIS (for the table groups to be extracted)
    • S_TABU_NAM is supported
    • For details on these two authorization objects see SAP Note 1434284
    • You need to maintain all table groups/names manually according to your data models!
  • Authorization object S_RFC for the generic extractor function modules /SDF/DCC_CDC_GENERIC_EXTRACTOR and /SDF/DCC_CDC_IDC_GEN_EXTRACTOR
    • Delivered by add-on ST-PI 2008_1_700 SP08 (SAPKITLRD8)
    • or as manual down-port with SAP Note 1819794

Available as template role SAP_CDC_DATA_READER

(using a remote database connection)

On SAP Solution Manager
Authorization object S_DBCON
  • DBA_DBHOST    Name of the DBCON entry for the remote database in transaction DBACOCKPIT
  • DBA_DBSID        (not used)
  • DBA_DBUSER    (not used)
  • ACTVT                 Activity 71

There is an authorization check on the SAP ABAP stack for the remote database access, based on the authorization object S_DBCON. The user running the CDC data modelling or CDC comparison run needs an authorization that has the name of the DBCON connection as “Server Name” and allowance for Activity 71 ("Analyze"). The rest of the fields can have wildcard '*'. The “Database Name” and “Database User” have no meaning in this context, as the technical connection parameters and the login credentials are already defined in the corresponding DBCON entry.

On the remote database, the DB login user needs to have read-only access in the application schema for all tables used in the CDC data model, as well as the data dictionary (catalogue).

For data model creation (design time):
  • BAPI_CUBE_GETLIST
  • BAPI_MDPROVIDER_GET_DIMENSIONS
  • BAPI_MDPROVIDER_GET_MEASURES
To run comparisons: 
  • RSR_MDX_BXML_GET_INFO
  • RSR_MDX_BXML_GET_DATA

During background execution of the BPMon data collector

On SAP Solution Manager (from BPMon point-of-view, Solution Manager is a managed system here)

The background user that is used for the BPMon data collection (e.g. SM_BPMO) needs display-only authorization for the Comparison, which are maintained as filter parameter in the BPMon Setup. It is recommended to assign template role SAP_CDC_INSTANCE_ANALYZER .

During the call of the detail info feature in BPMon alert list to navigate to CDC UI

On SAP Solution Manager (from BPMon point-of-view, Solution Manager is a managed system here)

The dialog user that is calling the detail info CDC UI needs display-only authorization for the Comparisons and special authorization to view the detailed result data (ACTVT 35 = Output). It is recommended to assign template role SAP_CDC_INSTANCE_ANALYZER

The BPMon Framework does it own standard checks before allowing detail info calls using Authorization object SM_BPM_DET, which is included in standard role SAP_MANAGED_BPOANA_DIS

Whitelist to access files on an application server of the Solution Manager

If you want to compare data stored in files on an application server of the Solution Manager, for security reasons it is required that you define from where the CDC application is allowed to read data.

CDC is using the logical file name CDC_DATA_FILE defined in transaction FILE. This logical file name is shipped and refers to the logical file path CDC_FILE_PATH:

The logical path CDC_FILE_PATH is also shipped, but not yet assigned to physical paths. Assign one or more physical paths from where the CDC application is allowed to read data.

Procedure
  • Start transaction FILE to maintain logical file path definitions.
  • Mark logical file path “CDC_FILE_PATH” and choose Assignment of Physical Paths to Logical Path in the dialog structure.
  • Enter one or multiple physical paths from where the DC application is allowed to read data.
  • The example above shows the assignment of the physical path “/tmp” for a Unix compatible system. The physical path names must contain the placeholder “<FILENAME>”. Please note that there might be a different syntax for other systems like “\tmp\<FILENAME>” for Windows systems. The assignment means that the CDC application is allowed to read files stored in the “/tmp” path of application servers of the Solution Manager. If you are trying to compare files from other physical paths, the CDC application will run into error “Validation of file path and name failed” (DSWP_CDC822). It is also possible to assign further physical paths.

    Please refer to the documentation of transaction FILE for more information about logical file and path name definition and the assignment of physical paths.

Integration between SLT (LT Replication Server) and CDC

RFC User for the direction SLT to Solution Manager (to execute expert functions)

On SAP Solution Manager
  • Authorization object S_RFC (to execute function modules remotely)
    • Function group DSWP_CDC_APP for all function modules DSWP_CDC_GET* 
  • CDC display authorizations (based on authorization objects SM_CDC_OBJ and SM_CDC_INS)
    • It is recommended to assign template role SAP_CDC_INSTANCE_ANALYZER.

Using Cross Database Comparison

What are the sources you can compare in CDC, what are their requirements and how to use them. This section contains:

General walk-through on how to access Cross Database Comparison, define comparisons and run them. This section contains:

CDC Landscape, Filtering data, conversions and other detailed functions. This section contains:

Grouping of comparisons in CDC. This section contains:

  • Comparison Group (Different Group Types, Maintenance of Comparison Groups, Maintenance of own Group Types)

Mass generations of comparisons and integration with the LT Replication server. This section contains:

  • No labels