Se familiariser avec les entités virtuelles

Le fait de commencer avec les applications Dynamics 365 for Customer Engagement version 9.0, les entités virtuelles permettent l’intégration de données résidant dans les systèmes externes en représentant de manière homogène ces données au format entités dans les applications Dynamics 365 Customer Engagement (on-premises), sans réplication des données et souvent sans codage personnalisé. L’implémentation initiale de cette fonctionnalité fournit simplement le support en lecture seule de ces entités, et comporte un certain nombre d’autres limitations décrites dans la section Limitations des entités virtuelles ci-dessous. Outre ces limitations, les entités virtuelles se comportent de la même façon que d’autres entités personnalisées.

Les entités virtuelles remplacent les approches côté client et côté serveur pour intégrer les données externes, ce qui nécessitait un code personnalisé et subissait de nombreuses limitations, notamment une intégration imparfaite, la duplication des données ou un engagement important des ressources de développement. De plus, pour les administrateurs et les personnalisateurs de système, l’utilisation des entités virtuelles simplifie grandement l’administration et la configuration.

Cette section traite des implications des entités virtuelles pour les développeurs. Pour plus d’informations sur la gestion des entités virtuelles de l’interface utilisateur, voir Création et modification d’entités virtuelles.

Entités virtuelles, fournisseurs de données et sources de données

Une entité virtuelle est une définition d’une entité dans les métadonnées de la plateforme Dynamics 365 for Customer Engagement (on-premises) sans les tables physiques associées pour les instances d’entité créées dans la base de données Dynamics 365 for Customer Engagement (on-premises). Au lieu de cela, lors de l’exécution, lorsqu’une instance d’entité est requise, son état est extrait dynamiquement du système externe associé. Chaque type d’entité virtuelle est associé à un fournisseur de données d’entité et (facultatif) à quelques informations de configuration d’une source de données d’entité associée.

Dans , un fournisseur de données est un type spécifique de plug-in Dynamics 365, qui est enregistré en fonction des événements CRUD qui se produisent sur la plateforme. Cette version prend en charge les opérations de LECTURE.

Les fournisseurs de données suivants sont fournis avec les applications Dynamics 365 for Customer Engagement version 9.0 :

  • Un fournisseur OData v4 est inclus avec le service et est installé par défaut.
  • Un fournisseur Azure Cosmos DB (anciennement Microsoft Document DB) est disponible dans AppSource.

Des fournisseurs supplémentaires seront mis à disposition par Microsoft, ses partenaires ou d’autres tiers. Si un fournisseur de données est introuvable pour votre source de données externe, vous pouvez développer une entité virtuelle personnalisée ; pour plus d’informations, voir Fournisseurs de données d’entité virtuelle.

Création et mappage d’entités virtuelles

Initialement, la définition d’une entité virtuelle est identique à la définition d’une entité personnalisée : spécifiez l’entité, les attributs et les relations pour le nouveau type d’entité virtuelle. Cependant, vous pouvez également connecter l’entité virtuelle à un fournisseur de données pour gérer la récupération des données. Le type d’entité personnalisée et ses champs doivent être mappés aux données correspondantes de la source de données externe. Par exemple, une entité virtuelle peut être représentée sous la forme d’une ligne dans une base de données relationnelle externe, et chacun de ses champs peut correspondre à une colonne sur cette ligne. (Notez que ces noms de données externes sont souvent différents des noms d’entités virtuelles correspondants.) Un mappage spécifique est requis pour le champ ID d’entité : le fournisseur de données doit pouvoir fournir ce GUID et l’associer à l’enregistrement externe qui représente cette instance d’entité. La méthode la plus directe pour y parvenir consiste à utiliser le GUID en tant que clés primaires dans la source de données externe.

Dans cet exemple, une source de données d’entité virtuelle correspondante serait également mise à disposition pour fournir des informations d’utilisateur et de connexion pour la base de données externe.

Limitations des entités virtuelles

Dans cette version, il existe certaines limitations aux entités virtuelles dont vous devez être conscient lorsque vous évaluez si vous pouvez utiliser des entités virtuelles avec vos données externes.

  • Les données sont en lecture seule. La fonctionnalité d’entité virtuelle ne prend pas en charge la diffusion des modifications apportées dans Dynamics 365 for Customer Engagement (on-premises) sur le système externe.

  • Seules les entités appartenant à l’organisation sont prises en charge. Le filtrage de sécurité appliqué aux entités appartenant aux utilisateurs n’est pas pris en charge. L’accès aux données d’entité virtuelle peut être activé ou désactivé pour des utilisateurs individuels en fonction de leur rôle de sécurité. La sécurité au niveau des champs n’est pas prise en charge.

  • Il doit être possible de modéliser les données externes en tant qu’entité Dynamics 365 for Customer Engagement (on-premises). Autrement dit :

    • Toutes les entités de la source de données externe doivent avoir une clé primaire GUID associée.
    • Toutes les propriétés d’une entité sont représentées par des attributs Dynamics 365 for Customer Engagement (on-premises). Vous pouvez utiliser des types simples représentant du texte, des nombres, des jeux d’options, des dates, des images et des recherches.
    • Vous devez être en mesure de modéliser toutes les relations d’entité dans Dynamics 365 for Customer Engagement (on-premises).
    • Un attribut sur une entité virtuelle ne peut pas être calculé ou cumulé. Tout calcul souhaité doit être effectué du côté externe, éventuellement à l’intérieur ou dirigé par le fournisseur de données.
    • Même si vous pouvez ajouter des colonnes d’entités virtuelles comme recherche sur une grille ou autres vues d’interface utilisateur, vous ne pouvez pas filtrer ou trier selon cette colonne de recherche d’entité virtuelle.
  • L’audit et le suivi des modifications ne sont pas pris en charge. Ce code peut être mis en œuvre dans le magasin de données externes.

  • Les entités virtuelles ne peuvent pas être activées pour les files d’attente.

  • La mise en cache hors ligne des valeurs n’est pas prise en charge pour les entités virtuelles.

  • Une entité virtuelle ne peut pas représenter une activité et ne prend pas en charge les flux des processus d’entreprise.

  • Une fois créée, une entité virtuelle ne peut pas être modifiée pour devenir une entité standard (non virtuelle). L’inverse s’applique également : une entité standard ne peut pas être convertie en une entité virtuelle.

Pour plus d’informations sur la manière dont ces limitations sont répercutées dans l’API Dynamics 365 for Customer Engagement (on-premises), voir Éléments à prendre en compte pour les API s’appliquant aux entités virtuelles.