各製品の資料を入手。
詳細はこちら →こんにちは!プロダクトスペシャリストの宮本です。
CData Sync は、いろいろなシナリオのデータレプリケーション(同期)を行うことができるスタンドアロンのアプリケーションです。例えば、sandbox および本番インスタンスのデータをデータベースに同期することができます。CData Sync のウェブインターフェースは複数のXero コネクションを簡単に管理できます。本記事では、複数のXero アカウントを一つのデータベースに同期する方法を説明します。
CData Sync では、Xero のデータ を何台のデータベースにでも複製できます。データベースはクラウドおよびオンプレミスの双方に対応しています。レプリケーションの同期先の設定には、[接続]タブから行います。
データソース側にXero を設定します。[接続]タブをクリックします。
接続には、認証用の値に加えてSchema 接続プロパティを設定してください。Xero はプライベートアプリケーション、 パブリックアプリケーション、パートナーアプリケーションに認証を提供します。設定したアプリケーションに応じて、XeroAppAuthentication プロパティを PUBLIC、PRIVATE、またはPARTNER に設定する必要があります。プライベートアプリケーションから接続するには、追加でOAuthAccessToken、OAuthClientId、 OAuthClientSecret、CertificateStoreType、CertificateStore、およびCertificateStorePassword を設定してください。
パブリックまたはパートナーアプリケーションから接続する場合は、埋め込みOAuthClientId、OAuthClientSecret、 およびCallbackURL を指定するか、アプリを登録してOAuth の値を入手できます。
Xero への認証については、ヘルプドキュメントの「はじめに」を参照してください。
Data Sync はレプリケーションをコントロールするSQL クエリを簡単なGUI 操作で設定できます。 レプリケーションジョブ設定には、[ジョブ]タブに進み、[ジョブを追加]ボタンをクリックします。 次にデータソースおよび同期先をそれぞれドロップダウンから選択します。
テーブル全体をレプリケーションするには、[テーブル]セクションで[テーブルを追加]をクリックします。表示されたテーブルリストからレプリケーションするテーブルをチェックします。.
SQL クエリを使って、レプリケーションをカスタマイズできます。REPLICATE 構文はデータベースのテーブルにデータをキャッシュし、保存するハイレベルコマンドです。Xero API がサポートするSELECT クエリを定義することができます。レプリケーションのカスタマイズにはテーブルセクションで[カスタムクエリの追加]をクリックして、クエリステートメントを記述します。
Xero のデータ のテーブルを差分更新でキャッシュするステートメントは次のとおり:
REPLICATE Items;
使用するレプリケーションクエリを含むファイルを指定することで特定のデータベースを更新することが可能です。レプリケーションステートメントをセミコロンで区切ります。次のオプションは一つのデータベースに複数のXero アカウントのデータを同期する例です:
REPLICATE SELECT ステートメントで異なるtable prefix を使用する:
REPLICATE PROD_Items SELECT * FROM Items;
別の方法として、異なるスキーマを使うことも可能です:
REPLICATE PROD.Items SELECT * FROM Items;
[スケジュール]セクションでは、レプリケーションジョブの自動起動スケジュール設定が可能です。反復同期間隔は、15分おきから毎月1回までの間で設定が可能です。
レプリケーションジョブを設定したら、[変更を保存]します。このように複数のXero アカウントのデータを複製するジョブを作成することができました。