次の方法で共有


サンプル: 変更の追跡を使用してデータを外部システムに同期

このサンプルコードでは、RetrieveEntityChanges クラスと RetrieveEntityChangesResponse クラスの メッセージを使って、テーブルの変更点を取得し、外部システムとデータを同期させる方法を紹介しています。

このサンプルで説明されている機能の詳細については、「変更の追跡を使用してデータを外部システムに同期」を参照してください。

このサンプルを実行する方法

  1. ローカル コピーを作成できるように、 Microsoft/PowerApps-Samples リポジトリをダウンロードまたは複製します。
  2. (省略可能)dataverse/App.config ファイルを編集して、接続先のMicrosoft Dataverse インスタンスを指定するconnection stringを定義します。
  3. Visual Studioでサンプル ソリューションを開き、F5 を押してサンプルを実行します。 dataverse/App.config でconnection stringを指定すると、実行するすべてのサンプルでその接続情報が使用されます。

dataverse/App.config ファイルでconnection stringを指定しない場合は、サンプルを実行するたびにダイアログが開き、接続先の Dataverse インスタンスと使用する資格情報に関する情報を入力する必要があります。 このダイアログには以前の接続がキャッシュされているため、以前に使用した接続を選ぶことができます。

実行するために Dataverse インスタンスへの接続を必要とするこのリポジトリのサンプルには、 dataverse/App.config ファイルへのリンクされた参照が含まれています。

このサンプルの概要

RetrieveEntityChanges メッセージは、外部システムからのデータが同期され、変更の追跡に使用する機能をデータの変更を検出して調整するために使用できるシナリオで使用するためのものです。

このシナリオを完全に複製するために必要な別個のシステムがないため、このサンプルでは、2 つの要求を実行してシナリオをシミュレートします。 次の要求までの間、2 番目の要求が時間の経過に伴って変更された内容に関するデータを返すように、一部のデータが変更されます。

このサンプルがどのように動作するか

このサンプルの概要で説明されているシナリオをシミュレートするために、サンプルは次のことを行います:

セットアップ

  1. sample_book という名前の代替キーを持つ sample_bookcode テーブルを作成する管理ソリューション (ChangeTrackingSample_1_0_0_0_managed.zip) をインポートします。 代替キーをサポートするインデックスが有効であることを確認します
  2. 10 個の初期 sample_book テーブル レコードが作成され、これらのテーブルへの変更を追跡できるようになります。

実際にやってみます

  1. 初期要求を実行して、DataToken などの結果をキャッシュします。
  2. セットアップ で作成されたレコードを更新する
  3. 2 番目の要求を実行します。今回は、初期要求から取得された DataVersion 値を使用して DataToken を渡します。
  4. 2 番目のリクエストによって返されたテーブルの変更を表示する

クリーンアップ

Setup でインポートしたマネージド ソリューションを削除するオプションを表示すると、sample_book テーブルとサンプルで作成したすべてのデータが削除されます。 サンプルによって作成されたテーブルとデータを調べる場合、削除はオプションです。 手動で ChangeTrackingSample を削除しても同じ結果を得られます。