Ready to get started?

Learn more or sign up for a free trial:

CData Sync

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.

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