ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
この記事では、CData BizTalk Adapter for GoogleSheets で実行できるアップデートグラムを作成します。設計したスキーマは、インサート、アップデート、デリートのアップデートグラムを作成するためのテンプレートとして使用します。
[Add Adapter] ウィザードから、アダプターをVisual Studio のBizTalk サーバープロジェクトに追加します。アダプターを使って、修正したいテーブルに関するGoogle Sheets のメタデータをクエリします。
以下のステップに従って、Visual Studio のBizTalk サーバープロジェクトでスキーマを作成します。
Spreadsheet=MySheet;
スプレッドシートに接続するには、Google への認証を行い、Spreadsheet 接続プロパティにスプレッドシートの名前またはフィードリンクを設定します。Google Drive のスプレッドシートの情報一覧を表示したい場合は、認証後にSpreadsheets ビューにクエリを実行します。
ClientLogin(ユーザー名 / パスワード認証)は、2012年4月20日より正式に非推奨となり、現在は利用できません。代わりに、OAuth 2.0 認証規格を使用してください。 個々のユーザーに代わってGoogle API にアクセスするには、埋め込みクレデンシャルを使用するか、独自のOAuth アプリを登録します。
OAuth は、Google Apps ドメインのユーザーに代わって、サービスアカウントを使って接続することもできます。サービスアカウントで認証するには、OAuth JWT 値を取得するためのアプリケーションを登録する必要があります。
Google アカウント、Google Apps アカウント、二段階認証を使用するアカウントなど、様々なアカウントタイプでGoogle スプレッドシートに接続する方法は、ヘルプドキュメントの「はじめに」を参照してください。
接続プロパティの詳細は、ヘルプドキュメントの"BizTalk Configuration" チャプターを参照してください。
Noteアップデートグラムを作成する際、修正はスキーマに含ませたカラムに限定されます。
アップデートグラムスキーマの作成後、アップデートグラムを生成する.xsd ファイルを使用できます。.xsd ファイルを右クリックし、[Generate Instance]を選択します。このファイルは、アップデートグラムを手動で作成するテンプレートとして使用することもできます。以下は、インサート、アップデート、デリートそれぞれに生成されたアップデートグラムインスタンスの例です。
まず、インサートの一例です。このインスタンスでは、データの変化を指定するafter ブロックのみを扱います。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/GoogleSheetsProvider">
<ns0:sync>
<ns0:before></ns0:before>
<ns0:after>
<ns0:Orders Shipcountry="Shipcountry_0" OrderPrice="OrderPrice_1" />
</ns0:after>
</ns0:sync>
</ns0:parameters>
次に、アップデートの一例です。このインスタンスでは、before ブロック(テーブルに存在するデータ)と、after ブロック(データの変化)の両方を扱います。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/GoogleSheetsProvider">
<ns0:sync>
<ns0:before>
<ns0:Orders Id=https://spreadsheets.google.com/feeds/list/tv3a8NcMPGTad5D56PRtuVQ/oda/private/full/cokwr></ns0:Orders>
</ns0:before>
<ns0:after>
<ns0:Orders Shipcountry="Shipcountry_0" OrderPrice="OrderPrice_1" ></ns0:Orders>
</ns0:after>
</ns0:sync>
</ns0:parameters>
最後に、デリートの一例です。after ブロックは空になり、アイテムを除去していることを示します。
<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/GoogleSheetsProvider">
<ns0:sync>
<ns0:before>
<ns0:Orders Id=https://spreadsheets.google.com/feeds/list/tv3a8NcMPGTad5D56PRtuVQ/oda/private/full/cokwr></ns0:Orders>
</ns0:before>
<ns0:after></ns0:after>
</ns0:sync>
</ns0:parameters>
Google Sheets レコードのインサート、アップデート、デリートにアップデートグラムを使用するには、こちらのチュートリアルをご覧ください。