Discover how a bimodal integration strategy can address the major data management challenges facing your organization today.
Get the Report →Replicate Multiple SAP Accounts
Replicate multiple SAP accounts to one or many databases.
CData Sync for SAP is a stand-alone application that provides solutions for a variety of replication scenarios such as replicating sandbox and production instances into your database. Both Sync for Windows and Sync for Java include a command-line interface (CLI) that makes it easy to manage multiple SAP connections. In this article we show how to use the CLI to replicate multiple SAP accounts.
About SAP Data Integration
CData provides the easiest way to access and integrate live data from SAP. Customers use CData connectivity to:
- Access every edition of SAP, including SAP R/3, SAP NetWeaver, SAP ERP / ECC 6.0, and SAP S/4 HANA on premises data that is exposed by the RFC.
- Perform actions like sending IDoc or IDoc XML files to the server and creating schemas for functions or queries through SQL stored procedures.
-
Connect optimally depending on where a customer's SAP instance is hosted.
- Customers using SAP S/4HANA cloud public edition will use SAP NetWeaver Gateway connectivity
- Customers using SAP S/4HANA private edition will use either SAP ERP or SAP NetWeaver Gateway connectivity.
While most users leverage our tools to replicate SAP data to databases or data warehouses, many also integrate live SAP data with analytics tools such as Tableau, Power BI, and Excel.
Getting Started
Configure SAP Connections
You can save connection and email notification settings in an XML configuration file. To replicate multiple SAP accounts, use multiple configuration files. Below is an example configuration to replicate SAP to SQLite:
Windows
<?xml version="1.0" encoding="UTF-8" ?>
<CDataSync>
<DatabaseType>SQLite</DatabaseType>
<DatabaseProvider>System.Data.SQLite</DatabaseProvider>
<ConnectionString>Host=sap.mydomain.com;User=EXT90033;Password=xxx;Client=800;System Number=09;ConnectionType=Classic;Location=C:/mysapschemafolder;</ConnectionString>
<ReplicateAll>False</ReplicateAll>
<NotificationUserName></NotificationUserName>
<DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString>
<TaskSchedulerStartTime>09:51</TaskSchedulerStartTime>
<TaskSchedulerInterval>Never</TaskSchedulerInterval>
</CDataSync>
Java
<?xml version="1.0" encoding="UTF-8" ?>
<CDataSync>
<DatabaseType>SQLite</DatabaseType>
<DatabaseProvider>org.sqlite.JDBC</DatabaseProvider>
<ConnectionString>Host=sap.mydomain.com;User=EXT90033;Password=xxx;Client=800;System Number=09;ConnectionType=Classic;Location=C:/mysapschemafolder;</ConnectionString>
<ReplicateAll>False</ReplicateAll>
<NotificationUserName></NotificationUserName>
<DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString>
</CDataSync>
The Java edition supports connecting to an SAP system using the JCo .jar file. See the "Getting Started" chapter in the help documentation for information on using the Jco JAR file.
The Windows edition supports connecting to SAP systems using either the librfc32.dll, the librfc32u.dll, NetWeaver, or Web Services (SOAP). Set the ConnectionType connection property to CLASSIC (librfc32.dll), CLASSIC_UNICODE (librfc32u.dll), NETWEAVER, or SOAP.
Note: We do not distribute the librfc32.dll or other SAP assemblies. You must find them from your SAP installation and install them on your machine.
All versions of Sync support connecting to an SAP system using Web services (SOAP). If you are using the SOAP interface you must enable SOAP access to your SAP system and set the Client, RFCUrl, SystemNumber, User, and Password properties, under the Authentication section. Additionally, set the ConnectionType to SOAP.
See this guide on obtaining the connection properties needed to connect to any SAP system.
Configure Queries for Each SAP Instance
Sync enables you to control replication with standard SQL. The REPLICATE statement is a high-level command that caches and maintains a table in your database. You can define any SELECT query supported by the SAP API. The statement below caches and incrementally updates a table of SAP data:
REPLICATE MARA;
You can specify a file containing the replication queries you want to use to update a particular database. Separate replication statements with semicolons. The following options are useful if you are replicating multiple SAP accounts into the same database:
You can use a different table prefix in the REPLICATE SELECT statement:
REPLICATE PROD_MARA SELECT * FROM MARA
Alternatively, you can use a different schema:
REPLICATE PROD.MARA SELECT * FROM MARA
Run Sync
After you have configured the connection strings and replication queries, you can run Sync with the following command-line options:
Windows
SAPERPSync.exe -g MyProductionSAPERPConfig.xml -f MyProductionSAPERPSync.sql
Java
java -Xbootclasspath/p:c:\sqlitejdbc.jar -jar SAPERPSync.jar -g MyProductionSAPERPConfig.xml -f MyProductionSAPERPSync.sql