Partager via


Utiliser n'importe quel type d'application

Microsoft Dataverse peut être intégré de plusieurs façons dans tout type d'application (mobile, Web, ordinateur de bureau), appareil, système ou service. Pour les solutions cloud, il existe des moyens d'intégration quel que soit le modèle dans lequel votre solution est déployée — infrastructure en tant que service (IaaS), plate-forme en tant que service (PaaS) ou logiciel en tant que service (SaaS). Pour les solutions IaaS, l'approche d'intégration fonctionne aussi si les solutions s'exécutent à l'intérieur de conteneurs.

Dans certains cas, l'intégration avec une application peut être réalisée en utilisant la logique métier contenue dans Dataverse. Dans d'autres cas, cela impliquera une intégration via des événements, une API Dataverse OData ou à l'aide de plug-ins.

Définition de la logique métier

Les tables dans Dataverse peuvent tirer parti de la logique et de la validation enrichies côté serveur pour garantir la qualité des données et réduire le code répétitif dans chaque application qui crée et utilise des données au sein d'une table.

  • Règles métier : valident les données sur plusieurs colonnes et tables et fournissent des messages d’avertissement et d’erreur, indépendamment de l’application utilisée pour créer les données. Pour plus d'informations : Créer une règle métier pour une table

  • Les Flux des processus d'entreprise guident les utilisateurs pour s'assurer qu'ils entrent des données cohérentes et suivent les mêmes étapes à chaque fois. Les flux des processus d'entreprise sont actuellement uniquement pris en charge pour les applications basées sur un modèle. Pour plus d'informations, consultez Vue d'ensemble du flux des processus d'entreprise

  • Les workflows vous permettent d'automatiser les processus d'entreprise sans interaction de l'utilisateur. Pour plus d'informations : Workflows Dataverse classiques

  • La Logique métier avec code prend en charge les scénarios développeur avancés pour étendre l'application directement depuis le code. Pour plus d'informations, consultez :  Appliquer la logique métier dans du code

Intégration avec des applications à l'aide d'événements

Une approche courante de l'intégration d'applications consiste à utiliser des événements. Par exemple, un événement tel que l'ajout d'une nouvelle ligne se produit dans Dataverse, et cela doit être communiqué à un système associé afin qu'une action puisse être entreprise. Par exemple, si une nouvelle requête d'assistance a été créée, elle peut déclencher l'envoi d'un message SMS au personnel d'assistance affecté.

Cette interactivité peut également se produire dans l'autre sens — une mise à jour d'un système externe peut entraîner l'ajout, la mise à jour ou la suppression de données de l'environneent Power Platform.

Les approches les plus utilisées dans Dataverse impliquent des webhooks, la messagerie Azure (Service Bus, Event Hubs), Azure Logic Apps ou Power Automate.

Événements dans Dataverse.

Webhooks

Avec Dataverse, vous pouvez envoyer des données sur les événements qui se produisent sur le service à une application Web à l'aide de webhooks. Un webhook est un protocole HTTP léger permettant de connecter des API Web et des services avec un modèle de publication/abonnement. Les expéditeurs de webhooks avertissent les destinataires à propos d'événements en adressant aux points de terminaison du destinataire des demandes comportant certaines informations sur les événements.

Les webhooks permettent aux développeurs et aux éditeurs de logiciels indépendants d'intégrer des données issues de Dataverse dans leur propre code personnalisé hébergé sur des services externes. Grâce au modèle webhooks, vous pouvez sécuriser votre point de terminaison à l'aide d'un en-tête d'authentification ou de clés de paramètre de chaîne de requête. C'est plus simple que la signature d'accès partagé Modèle d'authentification utilisé avec l'intégration Azure Service Bus.

  • Les webhooks ne peuvent se dimensionner que dans la mesure où votre service web hébergé peut gérer les messages.

  • Les webhooks rendent possibles les étapes synchrones et asynchrones.

  • Les webhooks envoient des requêtes POST avec une charge utile JSON et sont consommables par n'importe quel langage de programmation ou application web hébergée n'importe où.

  • Il est possible d'appeler les webhooks à partir d'une activité de workflow personnalisée ou d'un plug-in.

Azure Service Bus

Service Bus fournit un canal sécurisé et fiable pour la communication entre les données d'exécution de Dataverse et les applications métier externes basées sur le cloud. Cette fonction est particulièrement utile, car elle maintient les systèmes Dataverse ou autres serveurs Dataverse séparés synchronisés avec les modifications de données métier .

La séquence d'événements est la suivante :

  • Une application d'écoute est enregistrée sur un point de terminaison de la solution Service Bus et commence à écouter activement le contexte d'exécution distant Dataverse sur le bus de services.

  • Un utilisateur effectue une opération dans Dataverse qui déclenche l'exécution du plug-in prêt à l'emploi inscrit ou d'un plug-in compatible Azure personnalisé. Le plug-in lance une publication, via une tâche système de service asynchrone, du contexte de données de requête actuel sur Service Bus.

  • Les revendications publiées par Dataverse sont authentifiées. Service Bus transmet par relais le contexte d'exécution distant à l'écouteur. L'écouteur traite les informations de contexte et effectue une tâche professionnelle avec ces informations. Service Bus notifie le service asynchrone d'une publication réussie et attribue à la tâche système le statut Terminé.

Service Bus transmet par relais le contexte de données de message de requête entre les applications d'écoute de solution Dataverse et Service Bus. Service Bus assure également la sécurité des données de sorte que seules les applications autorisées peuvent accéder aux données Dynamics 365 publiées. L'autorisation des applications Dataverse de publier le contexte de données vers Service Bus, et des applications d'écoute de le lire, est gérée par des signatures d'accès partagé Azure.

Pour plus d'informations : Service Bus et Authentification et autorisation Service Bus

Logic Apps et Power Automate

Logic Apps, proposé via Azure, et Power Automate, offert via Microsoft Power Platform, peut déclencher un flux de travail qui peut être utilisé pour s'intégrer aux événements et données d'application selon un calendrier ou par activité dans une base de données, un système, un service ou un SaaS.

Logic Apps et Power Automate avec Dataverse.

Ces workflows peuvent exécuter la logique et interagir avec ces systèmes à l'aide des centaines de connecteurs de bases de données, PaaS et SaaS.

Par exemple, lorsqu'une ligne est ajoutée à une base de données relationnelle, telle que SQL, cela peut déclencher un flux de travail qui peut insérer ces données dans Dataverse.

En créant des connecteurs personnalisés à l'aide de définitions Open API (anciennement Swagger) pour un service, il est simple d'inclure des services, des fonctions et du code s'exécutant dans IaaS et Azure Kubernetes Service (AKS).

Intégration de Dataverse dans les applications avec l'API OData

Tous les langages de programmation populaires prennent en charge une forme d'intégration avec les API basées sur REST.

Dataverse avec l'API OData.

L'API Web Dataverse fournit une expérience de développement pouvant être utilisée avec une grande variété de langues, de plateformes et d'appareils. API web met en œuvre OData (protocole Open Data), la version 4.0, une norme d'OASIS pour générer et consommer des API RESTful sur des sources de données multiples. Pour en savoir plus sur ce protocole consultez www.odata.org . Pour plus d'informations sur cette norme, voir www.oasis-open.org.

Dataverse adopte une approche « l'API d'abord ». Cela signifie que le service ne fournit pas seulement un mécanisme pour interroger les données, il fournit également des métadonnées de service sur les règles métier, les contraintes, etc. que vous pouvez utiliser pour créer des applications et des services intelligents et réactifs.

L'API est sécurisée à l'aide d'OAuth. OAuth exige un fournisseur idtable pour l'authentification. Pour Dataverse, le fournisseur idtable est Microsoft Entra ID. Pour vous authentifier avec Microsoft Entra à l'aide d'un compte d'entreprise ou d'établissement d'enseignement Microsoft, utilisez les bibliothèques d'authentification Microsoft (MSAL).

Pour plus d'informations sur l'API Web Dataverse, voir Utiliser l'API Web Dataverse.

Pour plus d'informations sur l'utilisation de l'API Web Dataverse avec OAuth, voir Utiliser OAuth avec Dataverse.

Plug-ins

Dataverse permet d'écrire du code entre l'API et les données. Ce code, écrit en .NET, est appelé plug-in. Étant donné que le plug-in se trouve entre l'API et les données, il applique la même logique sur chaque application.

Les plug-ins peuvent être synchrones ou asynchrones et effectuer les tâches suivantes :

  • Ils renvoient les erreurs à l'utilisateur.

  • Ils demandent des données Dataverse pour évaluer la logique à effectuer.

  • Ils exécutent des opérations sur les données.

  • Ils exécutent des requêtes HTTP sortantes.

Les plug-ins sont enregistrés aux points du pipeline d'événements, qui sont illustrés ici.

Plug-in event pipeline

Dans le pipeline d'événements, les événements suivants peuvent se produire :

  • Les requêtes et les réponses peuvent être examinées et rejetées ou manipulées en plusieurs étapes du pipeline d'événements.

  • Les gestionnaires de validation peuvent lever des exceptions personnalisées pour rejeter les opérations que votre logique considère comme non valides.

  • Les gestionnaires de pré-opération peuvent modifier les requêtes avant l'opération de base de données.

  • Les gestionnaires post-opération peuvent modifier les réponses.

  • Les gestionnaires asynchrones effectuent l'automatisation après le retour de la réponse.

Une contrainte avec les plug-ins est qu'ils doivent être autonomes. Si le code d'intégration nécessite des références à d'autres bibliothèques, l'intégration peut être effectuée à l'aide d'Azure Functions.

Azure Functions

Azure Functions fournit une option d'exécution de code sans serveur pour la logique métier et d'intégration.

Dataverse avec Azure Functions.

Les fonctions sont déclenchées par un appel provenant d'un système, d'un service ou d'un code externe. Pour Dataverse, ce déclencheur peut provenir directement de Dataverse en utilisant Service Bus, un webhook ou un appel à partir d'un plug-in. En outre, l'appel Azure Functions peut être lancé via un flux dans Logic Apps ou Power Automate qui implique le connecteur Dataverse.

Pour plus d'informations : Utiliser des plug-ins pour développer les processus d'entreprise

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