Share via


Créer ou modifier une entité virtuelle avec des données provenant d’une source externe

Cette rubrique s’applique à Dynamics 365 Customer Engagement (on-premises). Pour la version Power Apps de cette rubrique, consultez : Création et modification d’entités virtuelles qui contiennent des données provenant d’une source de données externe

Une entité virtuelle est une entité personnalisée dans Dynamics 365 Customer Engagement (on-premises) qui dispose de champs contenant des données issues d’une source de données externe. Les entités virtuelles apparaissent dans votre application aux utilisateurs comme des enregistrements d’entité normaux, mais elles contiennent des données qui proviennent d’une base de données externe, telle qu’une base de données Azure SQL. Les enregistrements basés sur des entités virtuelles sont disponibles dans tous les clients, y compris les clients personnalisés développés à l’aide des services Web Dynamics 365 Customer Engagement.

Par le passé, pour intégrer des sources de données disparates, il vous fallait créer un connecteur pour déplacer les données, ou développer un plug-in personnalisé, client ou côté serveur. Maintenant, avec les entités virtuelles vous pouvez vous connecter directement à une source de données externe pendant l’exécution, de sorte que les données visées de la source de données externe soient disponibles dans un environnement, sans obligation de réplication de données.

Les entités virtuelles sont composées de trois éléments principaux : un fournisseur de données, un enregistrement de source de données, et une entité virtuelle. Le fournisseur de données est constitué des plug-in et d’une entité de source de données. La source de données est un enregistrement d’entité dans Dynamics 365 Customer Engagement (on-premises), qui comprend les métadonnées représentant le schéma des paramètres de connexion. Chaque entité virtuelle fait référence à une source de données dans la définition de l’entité.

Dynamics 365 Customer Engagement (on-premises) comprend un fournisseur de données OData que vous pouvez utiliser pour vous connecter à un service Web OData v4 ayant accès aux données externes.

Par ailleurs, les développeurs peuvent créer leurs propres fournisseurs de données. Les fournisseurs de données sont installés dans un environnement en tant que solution. Pour plus d’informations : Se familiariser avec les entités virtuelles

Diagramme d’entité virtuelle.

Avantages des entités virtuelles

  • Les développeurs peuvent implémenter des plug-ins pour lire des données externes à l’aide des services Web Dynamics 365 Customer Engagement et de l’outil Customer Engagement Plug-in Registration.

  • Les personnalisateurs de système utilisent Dynamics 365 Customer Engagement (on-premises) pour configurer l’enregistrement de source de données et créer des entités virtuelles utilisées pour accéder aux données externes sans écrire de code.

  • Les utilisateurs finaux travaillent avec les enregistrements créés par l’entité virtuelle pour afficher les données dans les champs, les grilles, les résultats de recherche, les rapports de Fetch XML et les tableaux de bord.

Ajouter une source de données à utiliser pour les entités virtuelles

Les développeurs créent un plug-in personnalisé pour l’utiliser comme fournisseur de données pour une entité virtuelle. Par ailleurs, vous pouvez utiliser le fournisseur de données OData v4 fourni. Plus d’informations : Configuration du fournisseur de données OData v4, configurations requises et bonnes pratiques

  1. Accédez à Paramètres>Administration>Sources de données d’entités virtuelles.

  2. Dans la barre d’outils Actions, sélectionnez Nouveau.

  3. Dans la boîte de dialogue Sélectionner un fournisseur de données, sélectionnez une source de données parmi celles qui suivent, puis sélectionnez OK.

Ajouter un champ sécurisé à une source de données

Vous pouvez créer des champs pour une source de données de la même manière que n’importe quelle autre entité. Pour les données chiffrées ou comportant des données confidentielles, activez l’attribut Secret de la source de données au champ personnalisé de la source de données. Par exemple, pour sécuriser un champ contenant une chaîne de connexion de base de données.

Note

L’attribut Secret de la source de données est uniquement disponible avec les champs ajoutés à un formulaire de source de données.

Attribut Secret de la source de données.

Créer une entité virtuelle

Vous créez une entité virtuelle comme toute autre entité dans Customer Engagement en ajoutant quelques attributs supplémentaires décrits ici.

Note

Bien que vous puissiez créer une entité virtuelle en sélectionnant Aucun comme source de données, pour acquérir des données, une entité virtuelle nécessite une source de données. Plus d’informations : Ajouter une source de données à utiliser pour les entités virtuelles

  1. Accédez à Paramètres>Personnalisations>Personnaliser le système.

  2. Dans l’explorateur de solutions, créez une nouvelle entité. Pour ce faire, dans le volet de navigation, sélectionnez Entités, puis Nouveau.

  3. Dans l’onglet Général de la Définition de l’entité, sélectionnez Entité virtuelle, puis dans la liste déroulante Source de données, sélectionnez la source de données désirée.

    Option Entité virtuelle sur la définition de l’entité.

  4. Dans la définition de l’entité, remplissez les champs obligatoires suivants.

    • Nom externe. Entrez le nom de la table dans la source de données externe à laquelle cette entité est mappée.

    • Nom de la collection externe. Entrez le nom au pluriel de la table dans la source de données externe à laquelle cette entité est mappée.

      Voici un exemple d’une entité virtuelle nommée Film qui utilise un fournisseur de données Azure Cosmos DB pour accéder aux fichiers document.

    Définition virtuelle d’entité en utilisant le fournisseur de données Azure Cosmos DB.

    Important

    Plusieurs options, telles que Équipe d’accès, Files d’attente, et Création rapide, ne sont pas disponibles avec les entités virtuelles. Plus d’informations : Éléments à prendre en compte lors de l’utilisation d’entités virtuelles

    Remplissez les propriétés supplémentaires, obligatoires et facultatives, telles que les noms d’affichage et pluriels, selon les besoins. Pour plus d’informations sur ces propriétés, voir Création et modification d’entités.

  5. Créez et ajoutez un ou plusieurs champs pour l’entité virtuelle. Outre les propriétés de champ standard requises pour créer un champ personnalisé, ces propriétés facultatives sont disponibles pour chaque champ personnalisé que vous créez pour une entité virtuelle.

    • Nom externe. Il s’agit généralement du nom unique pour identifier les données à afficher dans le champ.

    Note

    Si le type de champ que vous créez est OptionSet, les champs supplémentaires suivants sont disponibles.

    • Nom du type externe. Cette propriété effectue un mappage sur le nom externe de l’ensemble de valeurs dans le service externe du groupe d’options. En général, il peut s’agir d’une valeur énumérée (enum) ou le nom d’une classe de valeurs de chaîne. Le Nom du type externe peut être utilisé lorsqu’un nom complet est requis. Par exemple, comme le Nom du type avec OData où les paramètres d’une requête appellent le nom complet, tel que [Nom du type].[Valeur].
    • Valeur externe. Cette propriété effectue un mappage sur la valeur correspondante de la source de données externe pour l’élément du groupe d’options. Cette valeur entrée est utilisée pour déterminer l’élément du groupe d’options à afficher dans l’application.

    Renseignez les propriétés supplémentaires selon les besoins. Pour plus d’informations sur ces propriétés, voir Création et modification de champs.

  6. Sélectionnez Enregistrer et fermer dans la page de propriétés Champ.

  7. Dans la barre d’outils Explorateur de solutions, sélectionnez Enregistrer.

  8. Dans la barre d’outils Explorateur de solutions, sélectionnez Publier.

  9. Fermez l’explorateur de solutions.

Éléments à prendre en compte lors de l’utilisation d’entités virtuelles

Les entités virtuelles comportent les restrictions suivantes.

  • Toutes les entités virtuelles sont en lecture seule.

  • Les entités existantes ne peuvent pas être converties en entités virtuelles.

  • Par défaut, les entités virtuelles contiennent uniquement un champ Nom et ID. Aucun autre champ géré par le système, tel que Statut ou Créé le/Modifié le n’est pris en charge.

  • Les entités virtuelles ne prennent pas en charge les champs personnalisés avec les types de données Devise, Image ou Client.  

  • Les entités virtuelles ne prennent pas en charge l’audit.

  • Les champs des entités virtuelles ne peuvent pas être utilisés dans les correctifs ou les champs calculés.  

  • Une entité virtuelle ne peut pas être une entité de type Activité.

  • De nombreuses fonctionnalités affectant les lignes de la table d’entité ne peuvent pas être activées avec les entités virtuelles. Citons notamment les files d’attente, la gestion des connaissances, les contrats SLA, la détection des doublons, le suivi des modifications, la fonctionnalité Mobile Offline, la sécurité de champ, la recherche par pertinence, les portails pour les solutions de portail Web Dynamics 365 Customer Engagement (on-premises), les relations plusieurs-à-plusieurs entre les entités virtuelles.

  • Les entités virtuelles appartiennent aux organisations et ne prennent pas en charge les concepts de sécurité Common Data Service for Apps au niveau de la ligne. Il est recommandé de mettre en œuvre votre propre modèle de sécurité pour la source de données externe.

  • Il est recommandé de cibler une seule source de données lorsque vous utilisez des entités virtuelles dans les recherches avancées. Par exemple, la création d’une recherche avancée qui finirait par réunir les données Dataverse natives et les données externes de l’entité virtuelle, n’est pas prise en charge.

  • Les propriétés de métadonnées de champ qui se valident à la mise à jour ne s’appliquent pas aux entités virtuelles. Par exemple, un champ Nombre entier sur un champ d’entité virtuelle peut être défini pour avoir une valeur minimale de zéro. Toutefois, comme la valeur provient d’une source de données externe, une requête renverra des valeurs inférieures à zéro lorsqu’elles seront récupérées d’une entité virtuelle. La propriété de la valeur minimale n’est pas implicite dans la requête. Vous devez toujours filtrer les valeurs pour qu’elles soient supérieures à 0 si c’est votre souhait.

  • Les entités virtuelles ne prennent pas en charge le suivi des modifications et ne peuvent pas être synchronisées à l’aide d’une fonctionnalité Customer Engagement, comme le Service d’exportation de données.

  • Les flux des processus d’entreprise ne sont pas pris en charge avec les entités virtuelles. Plus d’information : Erreur inattendue reçue lorsqu’un utilisateur active un flux des processus d’entreprise

Erreur inattendue reçue lorsqu’un utilisateur active un flux des processus d’entreprise

Lorsqu’un utilisateur tente d’activer un flux des processus d’entreprise, il peut recevoir un message "erreur inattendue". Lors de l’affichage du fichier journal, l’entrée de journal suivante s’affiche.

Code d’erreur : 0x80040216 Message : System.Web.HttpUnhandledException : une exception de type "System.Web.HttpUnhandledException" a été levée. ---> Microsoft.Crm.CrmException : Le flux des processus d’entreprise ne peut pas être activé pour l’entité virtuelle

Ce problème se produit parce que les entités virtuelles ne prennent pas en charge les flux des processus d’entreprise.

Voir aussi

Exigences et meilleures pratiques du fournisseur de données OData v4
Créer et modifier des entités
Créer et modifier des champs