Se connecter à Microsoft Dataverse à partir de flux de travail dans Azure Logic Apps
S’applique à : Azure Logic Apps (Consommation + Standard)
Important
Le 30 août 2022, les opérations du connecteur pour Common Data Service 2.0, également connu sous le nom de Microsoft Dataverse (Legacy), ont migré vers le connecteur Microsoft Dataverse actuel. Les opérations héritées portent l’étiquette « legacy », tandis que les opérations actuelles portent l’étiquette « preview ». Vous pouvez utiliser le connecteur Dataverse actuel dans n’importe quels workflows d’application logique existant ou nouveau. Pour la compatibilité descendante, les workflows existants continuent de fonctionner avec le connecteur Dataverse hérité. Toutefois, veillez à passer en revue ces workflows et à les mettre à jour rapidement.
Depuis octobre 2023, l'ancienne version n'est plus disponible pour les nouveaux workflows. Les workflows persistants existants de fonctionner, mais vous devez utiliser les opérations actuelles du connecteur Dataverse pour les nouveaux workflows. Un calendrier pour la date d’arrêt des actions et déclencheurs existants sera annoncé. Pour plus d’informations, consultez Le connecteur Microsoft Dataverse (hérité) pour Azure Logic Apps sera obsolète et remplacé par un autre connecteur.
Pour créer et exécuter des flux de travail automatisés qui créent et gèrent des lignes dans votre base de données Microsoft Dataverse, vous pouvez utiliser Azure Logic Apps et le connecteur Microsoft Dataverse. Ces workflows peuvent créer des lignes, mettre à jour des lignes et exécuter d’autres opérations. Vous pouvez également obtenir des informations à partir de votre base de données Dataverse et rendre la sortie disponible pour d’autres actions à utiliser dans vos workflows. Par exemple, lorsqu’une ligne est ajoutée, mise à jour ou supprimée dans votre base de données Dataverse, vous pouvez envoyer un e-mail à l’aide du connecteur Office 365 Outlook.
Ce guide montre comment créer un flux de travail qui crée une ligne de tâches chaque fois qu'une nouvelle ligne de prospects est créée.
Référence sur les connecteurs
Pour obtenir des informations techniques basées sur la description Swagger du connecteur, telles que les opérations, les limites et d'autres détails, consultez la page de référence du connecteur géré.
Prérequis
Un compte et un abonnement Azure. Si vous n’avez pas d’abonnement Azure, inscrivez-vous pour bénéficier d’un compte Azure gratuit.
Un environnement et une base de données Dataverse Data Service, qui est un espace dans lequel votre organisation stocke, gère et partage des données d’entreprise dans une base de données Dataverse. Pour plus d’informations, consultez les ressources suivantes :
Connaissances de base en création de workflows d’applications logiques Standard ou Consommation et l’application logique à partir de laquelle vous voulez accéder aux lignes dans votre base de données Dataverse. Pour utiliser un déclencheur Dataverse, vous devez commencer avec un workflow vierge. Pour plus d’informations, consultez les ressources suivantes :
Ajout d’un déclencheur Dataverse
Lorsque vous ajoutez un déclencheur ou une action qui se connecte à un service ou à un système et que vous n’avez pas de connexion existante ou active, Azure Logic Apps vous invite à fournir les informations de connexion, qui varient selon le type de connexion, par exemple :
- Vos informations d’identification de votre compte
- Un nom à utiliser pour la connexion
- Le nom pour le serveur ou le système
- Type d’authentification à utiliser
- Une chaîne de connexion
Cet exemple utilise le déclencheur Dataverse qui démarre votre workflow lorsqu’une ligne est ajoutée, mise à jour ou supprimée.
Remarque
Le connecteur Dataverse possède des paramètres spécifiques à l’opération et des paramètres spécifiques à la base de données. Par exemple, lorsque vous sélectionnez une table, les paramètres disponibles pour cette table varient et diffèrent d’autres tables.
Dans le portail Microsoft Azure, ouvrez votre ressource d’application logique Standard et votre flux de travail vide dans le concepteur.
Sur le concepteur, suivez ces étapes générales pour ajouter le déclencheur Microsoft Dataverse nommé Lorsqu'une ligne est ajoutée, modifiée ou supprimée.
Si vous y êtes invité, connectez-vous à votre environnement ou base de données Dataverse.
Dans la zone d’informations du déclencheur, fournissez les valeurs nécessaires.
Pour l'exemple de déclencheur, consultez Lorsqu'une ligne est ajoutée, modifiée ou supprimée.
Quand vous avez terminé, enregistrez votre workflow d’application logique. Dans la barre d’outils du Concepteur, sélectionnez Enregistrer.
Ajoutez maintenant au moins une action pour votre workflow à effectuer lorsque le déclencheur se met en action. Par exemple, vous pouvez ajouter une action Dataverse ou une action qui envoie des e-mails en fonction des sorties du déclencheur.
Ajout d’une action Dataverse
Lorsque vous ajoutez un déclencheur ou une action qui se connecte à un service ou à un système et que vous n’avez pas de connexion existante ou active, Azure Logic Apps vous invite à fournir les informations de connexion, qui varient selon le type de connexion, par exemple :
- Vos informations d’identification de votre compte
- Un nom à utiliser pour la connexion
- Le nom pour le serveur ou le système
- Type d’authentification à utiliser
- Une chaîne de connexion
Cet exemple utilise l’action Dataverse qui ajoute une nouvelle ligne à votre base de données.
Remarque
Le connecteur Dataverse possède des paramètres spécifiques à l’opération et des paramètres spécifiques à la base de données. Par exemple, lorsque vous sélectionnez une table, les paramètres disponibles pour cette table varient et diffèrent d’autres tables.
Sur le portail Azure, ouvrez votre application logique Standard et votre flux de travail dans le concepteur.
Sur le concepteur, suivez ces étapes générales pour ajouter l'action Microsoft Dataverse nommée Ajouter une nouvelle ligne.
Si vous y êtes invité, connectez-vous à votre environnement ou base de données Dataverse.
Dans la zone d’informations sur l’action, fournissez les valeurs nécessaires.
Pour obtenir un exemple d'action, consultez Ajouter une nouvelle ligne.
Quand vous avez terminé, enregistrez votre workflow d’application logique. Dans la barre d’outils du Concepteur, sélectionnez Enregistrer.
Continuez à ajouter d’autres actions, si vous le souhaitez.
Tester votre workflow
Pour exécuter et déclencher le workflow, procédez comme suit :
Dans le menu du flux de travail, sélectionnez Vue d’ensemble.
Dans la barre d’outils Vue d’ensemble, sélectionnez Exécuter >Exécuter.
Reproduisez les conditions requises par le déclencheur pour que workflow s’exécute.
Retourner des lignes en fonction d’un filtre
Pour les actions qui retournent des lignes, telles que l’action Liste des lignes, vous pouvez utiliser une requête ODATA qui retourne des lignes en fonction du filtre spécifié. Par exemple, vous pouvez configurer l’action pour renvoyer uniquement des lignes pour les comptes actifs. Pour plus d’informations sur l’exemple d’action, consultez Liste des lignes.
Sur le concepteur, dans l'action, ouvrez la liste Paramètres avancés et sélectionnez la propriété Filtrer les lignes.
Dans la propriété Filtrer les lignes qui apparaît désormais dans l'action, saisissez une expression de requête ODATA, par exemple :
statuscode eq 1
Pour plus d'informations sur les options de requête système $filter
, consultez Interroger des données à l'aide de l'API Web - Filtrer les résultats.
Retourner des lignes en fonction d’un ordre de tri
Pour les actions qui retournent des lignes, telles que l’action Liste des lignes, vous pouvez utiliser une requête ODATA qui retourne les lignes dans un ordre spécifié, qui varie en fonction des lignes renvoyées par l’action. Par exemple, vous pouvez configurer l’action pour retourner des lignes organisées par le nom du compte. Pour plus d’informations sur l’exemple d’action, consultez Liste des lignes.
Sur le concepteur, dans l'action, ouvrez la liste Paramètres avancés et sélectionnez la propriété Trier par.
Dans la propriété Trier par qui apparaît maintenant dans l’action, entrez le nom de colonne à utiliser pour le tri, par exemple nom:
Pour plus d'informations sur les options de requête système $orderby
, consultez Interroger des données à l'aide de l'API Web - Trier par.
Types de données de champ
Dans un déclencheur ou une action, le type de données d’une valeur de champ doit correspondre au type de données requis du champ. Cette exigence s’applique si vous entrez manuellement la valeur ou sélectionnez la valeur dans la liste de contenu dynamique.
Remarque
Le connecteur Dataverse possède des paramètres spécifiques à l’opération et des paramètres spécifiques à la base de données. Par exemple, lorsque vous sélectionnez une table, les paramètres disponibles pour cette table varient et diffèrent d’autres tables.
Par exemple, supposons que vous ayez une table nommée Tâches .: Cette table comporte des champs qui s’appliquent uniquement à cette table, tandis que d’autres tables ont leurs propres champs. Pour l’exemple de table Tâches, le tableau suivant décrit certains exemples de types de champs et les types de données dont ces champs ont besoin pour leurs valeurs.
Champ | Type de données | Description |
---|---|---|
Text field | Une seule ligne de texte | Requiert une seule ligne de texte ou du contenu dynamique qui a le type de données texte, par exemple, les propriétés suivantes : - Description - Catégorie |
Champ entier | Nombre entier | Requiert un entier ou un contenu dynamique qui a le type de données Entier, par exemple, les propriétés suivantes : - Pourcentage effectué - Durée |
Champ Date | Date et heure | Requiert une date au format MM/JJ/YYY ou un contenu dynamique qui a le type de données date, par exemple, les propriétés suivantes : - Création le - Date de début - Début réel - Fin réelle - Due Date |
Champ qui fait référence à une autre ligne d’entité | Clé primaire | Nécessite à la fois un ID de ligne, tel qu’un GUID, et un type de recherche, ce qui signifie que les valeurs de la liste de contenu dynamique ne fonctionneront pas, par exemple, les propriétés suivantes : - Propriétaire : Doit être un ID d’utilisateur valide ou un ID de ligne d’équipe. - Type de propriétaire : Doit être un type de recherche, par exemple systemusers ou teams , respectivement. - Concernant : Doit être un ID de ligne valide, tel qu’un ID de compte ou un ID de ligne de contact. - Concernant le type : Doit être un type de recherche, par exemple accounts ou contacts , respectivement. - Client : Doit être un ID de ligne valide, tel qu’un ID de compte ou un ID de ligne de contact. - Type de client : Doit être le type de recherche, par exemple accounts ou contacts , respectivement. |
Pour l’exemple de table Tâches, supposons que vous utilisez l’action Ajouter une nouvelle ligne pour créer une ligne associée à d’autres lignes d’entité, en particulier une ligne d’utilisateur et une ligne de compte. Aussi, dans cette action, vous devez spécifier les ID et les types de recherche pour ces lignes d’entité en utilisant des valeurs qui correspondent aux types de données attendus pour les propriétés pertinentes.
Sur la base de la propriété Propriétaire, qui spécifie un ID d’utilisateur et la propriété Type de propriétaire, qui spécifie le type de recherche
systemusers
, l’action associe la nouvelle ligne à un utilisateur spécifique.Sur la base de la propriété Concernant, qui spécifie un ID de ligne, et de la propriété Concernant le type, qui spécifie le type de recherche
accounts
, l’action associe la nouvelle ligne à un compte spécifique.
Résolution des problèmes
Appels à partir de plusieurs environnements
Le connecteur Dataverse stocke des informations sur les workflows d’application logique qui obtiennent et nécessitent des notifications sur les modifications d’entité de base de données à l’aide de l’entité callbackregistrations
dans votre base de données Dataverse. Si vous copiez une organisation Dataverse, tous les Webhooks sont également copiés. Si vous copiez votre organisation avant de désactiver les workflows mappés à celle-ci, les Webhooks copiés pointent également vers les mêmes workflows d’applications logiques, qui reçoivent alors des notifications provenant de plusieurs organisations.
Pour arrêter les notifications indésirables, supprimez l’entité callbackregistrations
de l’organisation qui envoie ces notifications en procédant comme suit :
Identifiez l’organisation Dataverse à partir de laquelle vous souhaitez supprimer des notifications, puis connectez-vous à cette organisation.
Dans le navigateur Chrome, recherchez l’inscription de rappel que vous souhaitez supprimer.
Passez en revue la liste générique de toutes les inscriptions de rappel au niveau de l’URI OData suivant, afin d’afficher les données à l’intérieur de l’entité
callbackregistrations
:https://{organization-name}.crm{instance-number}.dynamics.com/api/data/v9.0/callbackregistrations
:Remarque
Si aucune valeur n’est retournée, vous n’êtes peut-être pas autorisé à afficher ce type d’entité, ou vous n’êtes peut-être pas connecté à l’organisation appropriée.
Filtrez selon le nom logique de l’entité de déclenchement
entityname
et l’événement de notification qui correspond au workflow de votre application logique (message). Chaque type d’événement est mappé à l’entier du message, comme suit :Type d'événement Entier du message Créer 1 Supprimer 2 Mettre à jour 3 CreateOrUpdate 4 CreateOrDelete 5 UpdateOrDelete 6 CreateOrUpdateOrDelete 7 L’exemple suivant montre comment filtrer les notifications
Create
selon une entité nomméenov_validation
, en utilisant l’URI OData suivant pour un exemple d’organisation :https://fabrikam-preprod.crm1.dynamics.com/api/data/v9.0/callbackregistrations?$filter=entityname eq 'nov_validation' and message eq 1
Remarque
Si plusieurs déclencheurs existent pour la même entité ou le même événement, vous pouvez filtrer la liste à l’aide de filtres supplémentaires, par exemple attributs
createdon
et_owninguser_value
. Le nom de l’utilisateur propriétaire s’affiche sous/api/data/v9.0/systemusers({id})
.Après avoir trouvé l’ID de l’inscription de rappel que vous souhaitez supprimer, procédez comme suit :
Dans votre navigateur Chrome, ouvrez les Outils de développement Chrome (Clavier : F12).
En haut de la fenêtre, sélectionnez l’onglet Console.
Dans l’invite de ligne de commande, entrez la commande suivante, qui envoie une demande de suppression de l’inscription de rappel spécifiée :
fetch('http://{organization-name}.crm{instance-number}.dynamics.com/api/data/v9.0/callbackregistrations({ID-to-delete})', { method: 'DELETE'})
Important
Veillez à effectuer la demande à partir d’une page de l’interface client non unifiée (UCI), par exemple à partir de la page de réponse OData ou API elle-même. Sinon, la logique dans le fichier app.js risque d’interférer avec cette opération.
Pour confirmer que l’inscription de rappel n’existe plus, consultez la liste des inscriptions de rappel.
Entité « callbackregistrations » en double
Dans les workflows d'application logique Standard, dans des conditions spécifiques telles que la réallocation d'instance ou le redémarrage d'application, le déclencheur Microsoft Dataverse démarre une exécution en double, qui crée une entité callbackregistrations
en double dans votre base de données Dataverse. Si vous modifiez un workflow Standard qui démarre par un déclencheur Dataverse, vérifiez si cette entité callbackregistrations
est dupliquée. Si le doublon existe, supprimez manuellement l'entité callbackregistrations
en double.