ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →こんにちは!プロダクトスペシャリストの宮本です。
CData Sync for Sage300 は、データベースにサンドボックスや製品インスタンスをレプリケートするなどの、レプリケーションの多様なシナリオに対する解決策を提供するスタンドアロンアプリケーションです。Sync for Windows およびSync for Java はどちらもコマンドラインインターフェース(CLI)を含んでおり、複数のSage 300 接続を簡単に管理できます。この記事では、CLI を使って複数のSage 300 アカウントをレプリケートする方法について説明します。
接続およびE メール通知設定をXML 設定ファイルに保存できます。複数のSage 300 アカウントをレプリケートするには、複数の設定ファイルを使います。以下にSage 300 をSQLite にレプリケートする設定例を示します。
<?xml version="1.0" encoding="UTF-8" ?>
<CDataSync>
<DatabaseType>SQLite</DatabaseType>
<DatabaseProvider>System.Data.SQLite</DatabaseProvider>
<ConnectionString>User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;</ConnectionString>
<ReplicateAll>False</ReplicateAll>
<NotificationUserName></NotificationUserName>
<DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString>
<TaskSchedulerStartTime>09:51</TaskSchedulerStartTime>
<TaskSchedulerInterval>Never</TaskSchedulerInterval>
</CDataSync>
<?xml version="1.0" encoding="UTF-8" ?>
<CDataSync>
<DatabaseType>SQLite</DatabaseType>
<DatabaseProvider>org.sqlite.JDBC</DatabaseProvider>
<ConnectionString>User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;</ConnectionString>
<ReplicateAll>False</ReplicateAll>
<NotificationUserName></NotificationUserName>
<DatabaseConnectionString>Data Source=C:\my.db</DatabaseConnectionString>
</CDataSync>
Sage 300 には、Sage 300 Web API で通信するための初期設定が必要となるます。
Basic 認証を使用してSage 300 へ認証します。
Sage 300 に認証するには、次のプロパティを入力してください。プロバイダーは、クッキーを使用してSage 300 が開いたセッションを再利用することに注意してください。 そのため、資格情報はセッションを開く最初のリクエストでのみ使用されます。その後は、Sage 300 が返すクッキーを認証に使用します。
Sync を使うと標準SQL でレプリケーションを制御できます。REPLICATE ステートメントはハイレベルなコマンドで、データベースにテーブルをキャッシュして維持します。Sage 300 API がサポートするあらゆるSELECT クエリを定義できます。下記のステートメントは、Sage 300 データ のテーブルをキャッシュしてインクリメンタルに更新します。
REPLICATE OEInvoices;
特定のデータベースを更新するために使用するレプリケーションクエリを含むファイルを指定することができます。レプリケーションステートメントはセミコロンで区切ります。次のオプションは、複数のSage 300 アカウントを同じデータベースにレプリケートする場合に便利です。
REPLICATE SELECT ステートメントでは、異なるテーブルのプレフィックスを使用できます。
REPLICATE PROD_OEInvoices SELECT * FROM OEInvoices
異なるスキーマを使用することもできます。
REPLICATE PROD.OEInvoices SELECT * FROM OEInvoices
接続文字列およびレプリケーションクエリの設定が完了したら、次のコマンドラインオプションを使ってSync を実行できます。
Sage300Sync.exe -g MyProductionSage300Config.xml -f MyProductionSage300Sync.sql
java -Xbootclasspath/p:c:\sqlitejdbc.jar -jar Sage300Sync.jar -g MyProductionSage300Config.xml -f MyProductionSage300Sync.sql