Web API を使用してテーブル行をマージする

注意

エンティティとテーブルの違いがわかりませんか? Microsoft Dataverse で「開発者: 用語を理解する」を参照してください。

重複するレコードを見つけた場合は、Merge アクションを使用してその 2 つを 1 つに融合できます。

注意

次のエンティティの種類のみをマージできます:

マージ アクション

マージは、4 つのパラメーターを受け入れるバインドされていないアクションです:

名前 タイプ 説明 オプション
Target crmbaseentity マージ操作のターゲット。 無効
Subordinate crmbaseentity データのマージ元のエンティティ レコード。 無効
UpdateContent crmbaseentity マージ操作中に設定される追加のエンティティ属性。 有効
PerformParentingChecks ブール型 2 つのエンティティ レコードの親情報が異なるかどうかを確認するかどうかを示します。 番号

マージすると、Subordinate レコードのデータが Target に移動し、Subordinate レコードを非アクティブ化します。 この操作を実行するには、呼び出し者は、Target および Subordinate と特定する両方のレコードへのアクセスへの特権と許可が必要です。

POST 要求を使用してデータを送信し、レコードをマージします。 この例では、マージ後に残るレコードの accountnumber プロパティを更新するときに、2 つの取引先企業エンティティ レコードをマージします。

要求

POST [Organization URI]/api/data/v9.0/Merge HTTP/1.1
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0
Accept: application/json

{
  "Target": {
    "name": "Account 1",
    "accountid": "bb8055c0-aea6-ea11-a812-000d3a55d474",
    "@odata.type": "Microsoft.Dynamics.CRM.account"
  },
  "Subordinate": {
    "name": "Account 2",
    "accountid": "c38055c0-aea6-ea11-a812-000d3a55d474",
    "@odata.type": "Microsoft.Dynamics.CRM.account"
  },
  "UpdateContent": {
    "accountnumber": "1234",
    "@odata.type": "Microsoft.Dynamics.CRM.account"
  },
  "PerformParentingChecks": false
}

重要

TargetSubordinateUpdateContent プロパティ タイプはパラメータによって明示的に定義されていないため、@odata.type コメントを含めてタイプを指定する必要があります。

応答

HTTP/1.1 204 No Content
OData-Version: 4.0

インシデントのマージ動作

incident (ケース) テーブルのマージ動作は、accountcontact、または lead テーブルとは異なります。

  • UpdateContent パラメーター データは、使用されていません。

  • マージは、ユーザーのセキュリティ コンテキストで実行されます

    他のテーブルのマージ操作は、システム ユーザーのセキュリティ コンテキストを使用して実行されます。 インシデントのマージ操作はユーザーのセキュリティ コンテキストで実行されるため、ユーザーは、マージ操作によって実行される関連レコードの親を変更するなどのアクションを実行するためのセキュリティ権限を持っている必要があります。

    レコードをマージするユーザーが、マージ操作に含まれるすべてのアクションに対する特権を持っていない場合、マージ操作は失敗し、元の状態にロールバックします。

参照

Web API アクションの使用
重複レコードの統合
MergeRequest
管理ガイド: データをマージする
Dynamics 365 for Service: ケースの結合

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。