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 :
lead
: Disponible avec Dynamics 365 for Salesincident
: Disponible avec Dynamics 365 for Service
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é).