Comportement des opérations de mise à jour spécialisées

Notes

Vous n’êtes pas sûr de l’entité par rapport à la table ? Voir Développeurs : Comprendre la terminologie dans Microsoft Dataverse.

Il existe plusieurs messages spécialisés déconseillés qui exécutent des opérations de mise à jour. Dans des versions précédentes, il était nécessaire d’utiliser ces messages, mais désormais les mêmes opérations doivent être exécutées avec la classe IOrganizationService.Update ou la classe UpdateRequest avec IOrganizationService.Execute

Demande de message déconseillé Attribut(s) à mettre à jour
AssignRequest <entity>.OwnerId
SetStateRequest <entity>.StateCode
<entity>.StatusCode
SetParentSystemUserRequest SystemUser.ParentSystemUserId
SetParentTeamRequest Team.BusinessUnitId
SetParentBusinessUnitRequest BusinessUnit.ParentBusinessUnitId
SetBusinessEquipmentRequest Equipment.BusinessUnitId
SetBusinessSystemUserRequest SystemUser.BusinessUnitId

<entity> fait référence à toute entité qui fournit cet attribut.

Pour plus d’informations, voir Messages de mise à jour hérités.

Ce changement a introduit quelques comportements spéciaux qui doivent être notés pour les plug-ins et les workflows.

Pour les plug-ins

Lorsque des demandes de mise à jour sont traitées qui incluent à la fois les champs du propriétaire et d’autres champs standard pour les tables appartenant à l’entreprise, les plug-ins enregistrés pour le message Mettre à jour dans les étapes PreOperation et/ou PostOperation s’exécutent une fois pour tous les champs non propriétaires, puis une fois pour les champs propriétaires. Des exemples de champs de propriétaire seraient businessunit et manager (pour une table SystemUser). Parmi des exemples de tables appartenant à l’entreprise figurent SystemUser, BusinessUnit, Equipment et Team.

Lorsque les demandes de mise à jour sont traitées, incluant les champs État/Statut et d’autres champs standard, les plug-ins enregistrés pour le message Mise à jour dans les phases PreOperation et/ou PostOperation s’exécutent une fois pour tous les champs autres que État/Statut, puis une fois pour les champs État/Statut.

Pour que le code de plug-in reçoive les modifications de données complètes de la mise à jour, vous devez inscrire le plug-in dans la phase PreOperation, puis stocker les informations pertinentes dans SharedVariables dans le contexte de plug-in pour les plug-ins ultérieurs (dans le pipeline) à utiliser.

Pour les workflows

Lorsque les demandes de mise à jour sont traitées, incluant les deux champs Propriétaire et d’autres champs standards, les workflows enregistrés pour le message Mise à jour s’exécutent une fois pour tous les champs non Propriétaire, puis une fois pour les champs Propriétaire. Les workflows enregistrés pour le message Attribuer par les utilisateurs continuent à être déclenchés par les mises à jour des champs Propriétaire.

Lorsque les demandes de mise à jour sont traitées, incluant les deux champs État/Statut et d’autres champs standard, les workflows enregistrés pour le message Mise à jour s’exécutent une fois pour tous les champs non État/Statut, puis une fois pour les champs État/Statut. Les workflows enregistrés pour l’étape Modifier le statut restent déclenchés par les mises à jour des champs État/Statut.

Voir aussi

Mettre à jour et supprimer des tables à l’aide du service Organisation
Infrastructure d’événements

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é).