Partager via


Fusionner des lignes de table à l’aide de l’API web

Quand vous trouvez des enregistrements en double, vous pouvez les combiner en un seul à l’aide de Merge Action.

Notes

Seuls les types d’entité suivants peuvent être fusionnés :

Action Fusionner

Fusionner est une action non liée qui accepte quatre paramètres :

Nom Type Description Facultatif
Target crmbaseentity Cible de l’opération de fusion. Non
Subordinate crmbaseentity L’enregistrement d’entité à partir duquel fusionner les données. Non
UpdateContent crmbaseentity Attributs d’entité supplémentaires à définir lors de l’opération de fusion. Oui
PerformParentingChecks Entier Indique s’il faut vérifier si les informations parent sont différentes pour les deux enregistrements d’entité. Non

La fusion déplacera toutes les données utiles de l’enregistrement Subordinate vers l’enregistrement Target. Les données existantes dans l’enregistrement Target ne seront pas écrasées. Ensuite, l’enregistrement Subordinate est désactivé. Pour effectuer cette opération, l’appelant doit avoir les privilèges d’association et les droits d’accès sur les enregistrements identifiés comme Target et Subordinate.

Utilisez une demande POST pour envoyer des données pour fusionner des enregistrements. Cet exemple fusionne deux enregistrements d’entité de compte lors de la mise à jour de la propriété accountnumber de l’enregistrement qui restera après la fusion.

Demande :

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
}

Important

Du fait que les types de propriété Target, Subordinate et UpdateContent ne sont pas explicitement définis par le paramètre, vous devez inclure l’annotation @odata.type pour spécifier le type.

Réponse :

HTTP/1.1 204 No Content
OData-Version: 4.0

Comportement de fusion pour l’incident

Le comportement de fusion pour la table incident (incident) est différent des tables account, contact ou lead.

  • Les données du paramètre UpdateContent ne sont pas utilisées.

  • La fusion est effectuée dans le contexte de sécurité de l’utilisateur

    Les opérations de fusion pour d’autres tables sont effectuées avec un contexte de sécurité utilisateur système. Étant donné que les opérations de fusion d’incidents sont effectuées dans le contexte de sécurité de l’utilisateur, celui-ci doit disposer des privilèges de sécurité pour effectuer l’une des actions, telles que le re-parentage des enregistrements associés, qui sont effectuées par l’opération de fusion.

    Si l’utilisateur qui fusionne les enregistrements ne dispose pas de privilèges pour toutes les actions contenues dans l’opération de fusion, l’opération de fusion échouera et reviendra à l’état d’origine.

Voir aussi

Utiliser des actions API web
Fusionner des enregistrements en double
MergeRequest Class
Guide d’administration : Fusionner les données
Dynamics 365 for Service : Fusionner les incidents

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).