この記事では、パイプラインでコピー アクティビティを使用して Dataverse との間でデータをコピーする方法について説明します。
[前提条件]
Microsoft Entra サービス プリンシパル認証でこのコネクタを使用するには、Dataverse でサーバー間 (S2S) 認証を設定する必要があります。 まず、アプリケーション ユーザー (サービス プリンシパル) を Microsoft Entra に登録します。 詳細については、「 リソースにアクセスできる Microsoft Entra アプリケーションとサービス プリンシパルを作成する」を参照してください。
アプリケーションの登録中に、Dataverse でそのユーザーを作成し、アクセス許可を付与する必要があります。 これらのアクセス許可は、Dataverse でアクセス許可が付与されているチームにアプリケーション ユーザーを追加することで、直接または間接的に付与できます。 Dataverse で認証するようにアプリケーション ユーザーを設定する方法の詳細については、「 シングルテナント サーバー間認証を使用する」を参照してください。
サポートされている構成
コピー アクティビティの下の各タブの構成については、それぞれ次のセクションを参照してください。
全般
[ 全般 ] タブの構成で、[ 全般設定] に移動します。
情報源
[ ソース ] タブに移動して、コピー アクティビティのソースを構成します。 詳細な構成については、次の内容を参照してください。
次のプロパティは必須です。
- 接続: 接続リストから既存の Dataverse 接続を選択します。 接続が存在しない場合は、[ 新規] を選択して新しい Dataverse 接続を作成します。
- 接続の種類: Dataverse を選択します。
-
クエリを使用する: データの読み取りに使用する方法を指定します。 エンティティ名を使用してデータを読み取る エンティティ名 を選択するか、 クエリ を使用してデータを読み取るクエリを選択できます。
エンティティ名: ドロップダウン リストからエンティティ名を選択するか、[ 編集] を選択して手動で入力します。 これは、取得するエンティティの論理名です。
クエリ: FetchXML を使用して Dataverse からデータを読み取る。 FetchXML は、Dynamics オンラインおよびオンプレミスで使用される独自のクエリ言語です。 次の例を参照してください。 詳細については、「 FetchXML を使用したクエリの作成」を参照してください。
FetchXML クエリの例:
<fetch> <entity name="account"> <attribute name="accountid" /> <attribute name="name" /> <attribute name="marketingonly" /> <attribute name="modifiedon" /> <order attribute="modifiedon" descending="false" /> <filter type="and"> <condition attribute ="modifiedon" operator="between"> <value>2017-03-10 18:40:00z</value> <value>2017-03-12 20:40:00z</value> </condition> </filter> </entity> </fetch>
[詳細設定] では、次のフィールドを指定できます。
- その他の列: ソース ファイルの相対パスまたは静的な値を格納する追加のデータ列を追加します。 エクスプレッションは後者に対応しています。 詳細については、「 コピー中に列を追加する」を参照してください。
行き先
の [コピー先] タブに移動して、コピー アクティビティの宛先を構成します。 詳細な構成については、次の内容を参照してください。
次のプロパティは必須です。
- 接続: 接続リストから既存の Dataverse 接続を選択します。 接続が存在しない場合は、[ 新規] を選択して新しい Dataverse 接続を作成します。
- 接続の種類: Dataverse を選択します。
- エンティティ名: データを書き込むエンティティの名前を指定します。 ドロップダウン リストからエンティティ名を選択するか、[ 編集] を選択して手動で入力します。 これは、取得するエンティティの論理名です。
[詳細設定] では、次のフィールドを指定できます。
- 書き込み動作: 操作の書き込み動作。 このプロパティは必須であり、 Upsert を選択する必要があります。 [ 動的コンテンツの追加] を使用する場合は、Upsert に値を指定します。
- 代替キー名: レコードをアップサートするためにエンティティで定義されている代替キー名を指定します。
-
null 値を無視する: 書き込み操作中に入力データの null 値を無視するかどうかを示します。 既定で選択されています。
- 選択されている場合: アップサート/更新操作を行うときはコピー先オブジェクトのデータを変更せず、挿入操作の実行時に定義された既定値を挿入します。
- 選択されていない場合: アップサート/更新操作の実行時にコピー先オブジェクトのデータを NULL に更新し、挿入操作の実行時に NULL 値を挿入します。
- 書き込みバッチ サイズ: 各バッチで Dataverse に書き込まれるデータの行数を指定します。
- 最大同時接続数: アクティビティの実行中にデータ ストアに対して確立される同時接続の上限。 コンカレント接続数を制限する場合にのみ、値を指定します。
地図作成
[ マッピング ] タブの構成については、[ マッピング] タブの [マッピングの構成] に移動します。ファイル形式として [バイナリ] を選択した場合、マッピングはサポートされません。
設定
[設定] タブの構成については、[設定] タブの [その他の設定の構成] に移動します。
表の概要
Dataverse コピー アクティビティの概要と詳細については、次の表を参照してください。
ソース情報
| 名前 | Description | 価値 | 必須 | JSON スクリプト プロパティ |
|---|---|---|---|---|
| 接続 | あなたのソース Dataverse への接続。 | <実際の接続> | イエス | 接続 |
| 接続の種類 | 実際の接続の種類。 | Dataverse | イエス | type ( typeProperties ->source ->datasetSettings の下):CommonDataServiceForAppsEntity |
| クエリを使用する | Dataverse からデータを読み取る方法 | *テーブル *クエリ |
イエス | / |
| エンティティ名 | 取得するエンティティの論理名。 | < エンティティ名 > | イエス | entityName |
| クエリ | FetchXML を使用して Dataverse からデータを読み取る。 FetchXML は、Dynamics オンラインおよびオンプレミスで使用される独自のクエリ言語です。 詳細については、「 FetchXML を使用したクエリの作成」を参照してください。 | < クエリ > | イエス | クエリ |
| 追加の列 | ソース ファイルの相対パスまたは静的値を格納するデータ列を追加します。 エクスプレッションは後者に対応しています。 詳細については、「 コピー中に列を追加する」を参照してください。 | *名前 *価値 |
いいえ | 追加列: *名前 *価値 |
宛先情報
| 名前 | Description | 価値 | 必須 | JSON スクリプト プロパティ |
|---|---|---|---|---|
| 接続 | あなたの接続先の Dataverse。 | <実際の接続> | イエス | 接続 |
| 接続の種類 | 実際の接続の種類。 | Dataverse | イエス | type ( typeProperties ->sink ->datasetSettings の下):CommonDataServiceForAppsEntity |
| エンティティ名 | 取得するエンティティの論理名。 | < あなたのエンティティ > | イエス | entityName |
| 書き込み動作 | 操作の書き込み特性。 値は Upsert である必要があります。 | Upsert | イエス | writeBehavior: アップサート (updateとinsertの組み合わせ) |
| 代替キー名 | レコードをアップサートするためにエンティティで定義されている代替キー名。 | < 代替キー名 > | いいえ | alternateKeyName |
| null 値を無視する | 書き込み操作中に入力データの null 値を無視するかどうかを示します。 - 選択済み (true): アップサート/更新操作を行うときはコピー先オブジェクトのデータを変更せず、挿入操作の実行時に定義された既定値を挿入します。 - Unselected (false): upsert/update 操作の実行時にコピー先オブジェクトのデータを NULL に更新し、挿入操作の実行時に NULL 値を挿入します。 |
selected または unselected (default) | いいえ | ignoreNullValues(Null値を無視する) true または false (既定値) |
| 書き込みバッチ サイズ | 各バッチで Dataverse に書き込まれるデータの行数。 |
< 書き込みバッチ サイズ > 既定値は 10 です |
いいえ | 書き込みバッチサイズ |
| 最大同時接続数 | アクティビティの実行中にデータ ストアに対して確立されるコンカレント接続数の上限。 コンカレント接続数を制限する場合にのみ、値を指定します。 | < 最大同時接続数 > | いいえ | maxConcurrentConnections |