Zusammenführen von Tabellenzeilen mit der Web-API

Wenn Sie duplizierte Datensätze finden, können Sie sie mithilfe der Zusammenführungsaktion zu einem Datensatz kombinieren.

Hinweis

Es können nur die folgenden Entitätstypen zusammengeführt werden:

Zusammenführungsaktion

"Zusammenführen" ist eine ungebundene Aktion, die vier Parameter akzeptiert:

Name Type Description Optional
Target crmbaseentity Das Ziel des Zusammenführungsvorgangs. No
Subordinate crmbaseentity Der Entitätsdatensatz, aus dem Daten zusammengeführt werden sollen. No
UpdateContent crmbaseentity Weitere Entitätsattribute, die während des Zusammenführungsvorgangs festgelegt werden sollen. Yes
PerformParentingChecks Boolean Gibt an, ob überprüft werden soll, ob die übergeordneten Informationen für die beiden Entitätsdatensätze unterschiedlich sind. No

Beim Zusammenführen werden alle nützlichen Daten aus dem Subordinate Datensatz in den Target Datensatz verschoben. Vorhandene Daten im Target Datensatz werden nicht überschrieben. Anschließend wird der Subordinate Datensatz deaktiviert. Zum Ausführen dieses Vorgangs muss der Aufrufer über Berechtigungen und Zugriffsrechte für die datensätze verfügen, die als "" Target und Subordinate".

Verwenden Sie eine POST-Anforderung, um Daten zum Zusammenführen von Datensätzen zu senden. In diesem Beispiel werden zwei Kontoentitätsdatensätze zusammengeführt, während die Eigenschaft des Datensatzes, der nach der Zusammenführung verbleibt, aktualisiert accountnumber wird.

Anforderung:

POST [Organization URI]/api/data/v9.2/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
}

Important

Da die Typen Target, Subordinate und UpdateContent nicht explizit durch den Parameter definiert werden, müssen Sie die @odata.type-Anmerkung verwenden, um den Typ festzulegen.

Antwort:

HTTP/1.1 204 No Content
OData-Version: 4.0

Zusammenführen des Verhaltens für Vorfälle

Das Zusammenführungsverhalten für incident (Tabelle) unterscheidet sich von account, contact und lead Tabellen.

  • Die UpdateContent Parameterdaten werden nicht verwendet.

  • Die Zusammenführung wird im Sicherheitskontext des Benutzers ausgeführt.

    Zusammenführungsvorgänge für andere Tabellen werden mit einem Systembenutzersicherheitskontext ausgeführt. Da Vorfallzusammenführungsvorgänge im Sicherheitskontext des Benutzers ausgeführt werden, muss der Benutzer über die Sicherheitsberechtigungen verfügen, um eine der Aktionen auszuführen, z. B. die Neuverknüpfung verwandter Datensätze, die der Zusammenführungsvorgang ausführt.

    Wenn der Benutzer, der Datensätze zusammenführt, nicht über Berechtigungen für alle Aktionen verfügt, die im Zusammenführungsvorgang enthalten sind, schlägt der Zusammenführungsvorgang fehl, und es wird ein Rollback auf den ursprünglichen Zustand ausgeführt.

Siehe auch

Web-API-Aktionen verwenden
Zusammenführen doppelter Datensätze
MergeRequest-Klasse
Verwaltungshandbuch: Zusammenführen von Daten
Dynamics 365 for Service: Zusammenführen von Fällen