Ready to get started?

Learn more or sign up for a free trial:

CData Sync

Replicate Multiple SAP Netweaver Gateway Accounts



Replicate multiple SAP Netweaver Gateway accounts to one or many databases.

CData Sync for SAP Netweaver Gateway 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 Netweaver Gateway connections. In this article we show how to use the CLI to replicate multiple SAP Netweaver Gateway accounts.

Configure SAP Netweaver Gateway Connections

You can save connection and email notification settings in an XML configuration file. To replicate multiple SAP Netweaver Gateway accounts, use multiple configuration files. Below is an example configuration to replicate SAP Netweaver Gateway to SQLite:

Windows

<?xml version="1.0" encoding="UTF-8" ?> <CDataSync> <DatabaseType>SQLite</DatabaseType> <DatabaseProvider>System.Data.SQLite</DatabaseProvider> <ConnectionString>User=user;Password=password;URL=https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/;</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>User=user;Password=password;URL=https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/;</ConnectionString> <ReplicateAll>False</ReplicateAll> <NotificationUserName></NotificationUserName> <DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString> </CDataSync>

SAP Gateway allows both basic and OAuth 2.0 authentication. You can use basic authentication to connect to your own account, or you can use OAuth to enable other users to retrieve data from your service with their accounts. In addition to authenticating, set the following connection properties to access SAP Gateway tables.

  • Url: Set this to the URL of your environment, or to the full URL of the service. For example, the full URL might appear as: https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/. In this example, the environment URL would just be: https://sapes5.sapdevcenter.com.
  • Namespace: Set the appropriate Service Namespace. In the example above, IWBEP is the namespace. It is optional if the full URL to the service is specified.
  • Service: Set this to the service you want to retrieve data from. In the example above, the service is GWSAMPLE_BASIC. It is not required if the full URL is specified.

Authenticate via Basic Authentication

In basic authentication, you use your login credentials to connect. Set the following properties:

  • User: This is the username you use to log in to SAP Gateway.
  • Password: This is the password you use to log in to SAP Gateway.

Authenticate via OAuth Authentication

You can connect to SAP Gateway using the embedded OAuth connectivity (without setting any additional authentication connection properties). When you connect, the OAuth endpoint opens in your browser. Log in and grant permissions to complete the OAuth process. See the OAuth section in the online Help documentation for more information on other OAuth authentication flows.

Configure Queries for Each SAP Netweaver Gateway 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 Netweaver Gateway API. The statement below caches and incrementally updates a table of SAP Netweaver Gateway data:

REPLICATE SalesOrderLineItems;

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 Netweaver Gateway accounts into the same database:

You can use a different table prefix in the REPLICATE SELECT statement:

REPLICATE PROD_SalesOrderLineItems SELECT * FROM SalesOrderLineItems

Alternatively, you can use a different schema:

REPLICATE PROD.SalesOrderLineItems SELECT * FROM SalesOrderLineItems

Run Sync

After you have configured the connection strings and replication queries, you can run Sync with the following command-line options:

Windows

SAPGatewaySync.exe -g MyProductionSAPGatewayConfig.xml -f MyProductionSAPGatewaySync.sql

Java

java -Xbootclasspath/p:c:\sqlitejdbc.jar -jar SAPGatewaySync.jar -g MyProductionSAPGatewayConfig.xml -f MyProductionSAPGatewaySync.sql