Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
En définissant ou en modifiant les définitions de table, vous pouvez contrôler les fonctionnalités d’une table. Pour afficher les définitions de table de votre environnement, utilisez le navigateur de métadonnées. Parcourez les définitions de table dans votre environnement.
Plus d’informations : Parcourir les définitions de table pour votre environnement
Cet article explique comment utiliser des tables par programmation. Pour utiliser des tables dans Power Apps , consultez tables dans Dataverse.
Les tables peuvent être créées à l’aide du Kit de développement logiciel (SDK) pour .NET ou de l’API web. Les informations suivantes peuvent être appliquées aux deux.
- Avec le Kit de développement logiciel (SDK) pour .NET, utilisez la EntityMetadata classe. Plus d’informations : Créer une table personnalisée à l’aide du code et récupérer, mettre à jour et supprimer des tables
- Avec l’API web, utilisez EntityMetadata EntityType. Découvrez comment créer et mettre à jour des définitions de table à l’aide de l’API web
Opérations sur les définitions de tables
L’utilisation des définitions de table dépend du service que vous utilisez.
Étant donné que l’API web est un point de terminaison RESTful, il utilise une autre façon de créer, récupérer, mettre à jour et supprimer des définitions de table. Utilisez POST, et GETPUTDELETE les verbes HTTP pour travailler avec les types d’entités de définitions de table.
Découvrez comment créer et mettre à jour des définitions de table à l’aide de l’API web
L’une des exceptions à ceci est la fonction RetrieveMetadataChanges , qui permet de composer des définitions de table et de suivre les modifications au fil du temps.
Si vous utilisez le Kit de développement logiciel (SDK) pour .NET, utilisez RetrieveMetadataChangesRequest la classe. Cette classe contient les données nécessaires pour récupérer une collection d’enregistrements de définitions de table qui répondent aux critères spécifiés. Retourne RetrieveMetadataChangesResponse une valeur d’horodatage qui peut être utilisée avec cette requête ultérieurement pour retourner des informations sur la façon dont les définitions de table ont changé depuis la dernière requête.
| Message | API Web | Assembly du Kit de développement logiciel (SDK) |
|---|---|---|
CreateEntity |
Utilisez une requête POST pour envoyer des données pour créer une table. | CreateEntityRequest |
DeleteEntity |
Utilisez une demande DELETE pour supprimer une table. | DeleteEntityRequest |
RetrieveAllEntities |
Utilisez la requête GET pour récupérer les données de table. | RetrieveAllEntitiesRequest |
RetrieveEntity |
Fonction RetrieveEntity | RetrieveEntityRequest |
UpdateEntity |
Utilisez une demande PUT pour mettre à jour une table. | UpdateEntityRequest |
RetrieveMetadataChanges
Utilisé avec des objets dans l'espace de noms Microsoft.Xrm.Sdk.Metadata.Query pour créer une requête permettant de récupérer efficacement et de détecter les modifications apportées aux définitions de tables spécifiques. Plus d’informations : Récupérer et détecter les modifications apportées aux définitions de table. |
Fonction RetrieveMetadataChanges | RetrieveMetadataChangesRequest |
Options disponibles lorsque vous créez une table personnalisée
L’exemple suivant répertorie les options disponibles lorsque vous créez une table personnalisée. Vous ne pouvez définir ces propriétés que lorsque vous créez une table personnalisée.
| Choix | Descriptif |
|---|---|
| Créer en tant qu’activité personnalisée | Vous pouvez créer une table qui est une activité en définissant la IsActivity propriété lors de l’utilisation du Kit de développement logiciel (SDK) pour .NET ou l’API web respectivement. Pour plus d’informations, consultez Activités personnalisées dans Dynamics 365. |
| Noms de tables | Il existe deux types de noms, et les deux doivent avoir un préfixe de personnalisation :LogicalName : Version du nom de la table qui est défini en lettres minuscules.SchemaName: nom utilisé pour créer les tables de base de données. La casse du nom peut être mixte. La casse que vous utilisez définit le nom de l’objet généré pour effectuer une programmation avec des types forts ou lorsque vous utilisez le point de terminaison REST.Remarque : Si le nom logique diffère du nom du schéma, le nom du schéma remplace la valeur que vous définissez pour le nom logique. Lorsqu’une table est créée dans l’application dans le contexte d’une solution spécifique, le préfixe de personnalisation utilisé est celui défini pour la Publisher solution. Lorsqu’une table est créée par programmation, vous pouvez définir le préfixe de personnalisation sur une chaîne comprise entre deux et huit caractères de longueur, tous les caractères alphanumériques et doivent commencer par une lettre. Il ne peut pas commencer par mscrm. La meilleure pratique consiste à utiliser le préfixe de personnalisation défini par l’éditeur auquel la solution est associée, mais cette bonne pratique n’est pas appliquée. Un caractère de soulignement doit être compris entre le préfixe de personnalisation et le nom logique ou de schéma. |
| Propriété | Utilisez la propriété OwnershipType pour définir comment la propriété des enregistrements de table est définie. Utilisez l’énumération OwnershipTypes ou OwnershipTypes EnumType pour définir le type de propriété de table. Les seules valeurs valides pour les tables personnalisées sont OrgOwned ou UserOwned. Pour plus d’informations, consultez Propriété de table. |
| Colonne principale | Avec le Kit de développement logiciel (SDK) pour .NET, utilisez CreateEntityRequestla propriété .PrimaryAttribute pour définir la colonne principale. Avec l’API Web, le JSON définissant la table doit inclure un StringAttributeMetadata avec la propriété IsPrimaryName définie sur true.Dans les deux cas, la colonne de chaîne doit être mise en forme comme Text. La valeur de la colonne primaire est ce qui est affiché dans une recherche pour toutes les tables associées. Par conséquent, la valeur de la colonne doit représenter un nom de l’enregistrement. |
Activer les fonctionnalités de table
Le tableau suivant répertorie les fonctionnalités du tableau. Vous pouvez définir ces fonctionnalités lorsque vous créez une table ou que vous pouvez les activer ultérieurement. Une fois activées, ces fonctionnalités ne peuvent pas être désactivées.
| Capacité | Descriptif |
|---|---|
| Flux de processus d’entreprise | Définissez IsBusinessProcessEnabled la valeur true pour activer la table pour les flux de processus métier. |
| Remarques | Pour créer une relation avec la Annotation table et activer l’inclusion d’une zone Notes dans le formulaire. En ajoutant Notes, vous pouvez également ajouter des pièces jointes aux enregistrements. Avec le Kit de développement logiciel (SDK) pour .NET, utilisez la propriété CreateEntityRequest ou la propriété UpdateEntityRequest HasNotes.Avec l’API web, définissez la propriété EntityMetadata. Propriété HasNotes. |
| Activités | Pour créer une relation avec la ActivityPointer table afin que toutes les tables de type d’activité puissent être associées à cette table.Avec le Kit de développement logiciel (SDK) pour .NET, utilisez la propriété CreateEntityRequest ou UpdateEntityRequest HasActivities. Avec l’API web, définissez la propriété EntityMetadata. Propriété HasActivities. |
| Connexions | Pour permettre la création d’enregistrements de connexion pour associer cette table à d’autres tables de connexion, affectez la valeur true à la IsConnectionsEnabled.Value propriété. |
| Queues | Utilisez la propriété IsValidForQueue pour ajouter la prise en charge des files d’attente. Lorsque vous activez cette option, vous pouvez également définir la AutoRouteToOwnerQueue propriété pour déplacer automatiquement les enregistrements vers la file d’attente par défaut du propriétaire lorsqu’un enregistrement de ce type est créé ou affecté. |
| Courriel | Définissez la propriété IsActivityParty. pour pouvoir envoyer un courrier électronique à l’adresse de messagerie avec ce type d’enregistrement. |
Propriétés de table modifiables
Le tableau suivant répertorie les propriétés de tableau que vous pouvez modifier. À moins qu’une propriété gérée désactive ces options, vous pouvez les mettre à jour à tout moment.
| Propriété | Descriptif |
|---|---|
| Autoriser la création rapide | Utilisez IsQuickCreateEnabled pour activer les formulaires de création rapide pour la table. Avant de pouvoir utiliser des formulaires de création rapide, vous devez d’abord créer et publier un formulaire de création rapide.Remarque : Les tables d’activité ne prennent pas en charge les formulaires de création rapide. |
| Équipes d’accès | Utilisez AutoCreateAccessTeams pour activer la table pour les équipes d’accès. Pour plus d’informations, voir À propos de la collaboration avec des modèles d’équipe . |
| Image principale | Si une table a une colonne d’image, vous pouvez activer ou désactiver l’affichage de cette image dans l’application à l’aide PrimaryImageAttributede .
Découvrez comment utiliser des définitions de colonnes d’image à l’aide du code |
| Modifier le texte d’affichage | La propriété gérée IsRenameable empêche la modification du nom complet dans l’application. Vous pouvez toutefois modifier par programme les Étiquettes en mettant à jour les propriétés DisplayName et DisplayCollectionName. |
| Modifier la description de la table | La propriété IsRenameable gérée empêche la modification de la description de la table dans l’application. Vous pouvez toutefois modifier par programme les Étiquettes en mettant à jour la propriété Description. |
| Activer pour l’utilisation en mode hors connexion | Utilisez IsAvailableOffline pour activer ou désactiver la possibilité pour les utilisateurs de Dynamics 365 pour Microsoft Office Outlook avec accès hors ligne de rendre les données de cette table disponibles hors ligne. |
| Activer le volet de lecture Outlook |
Remarque : La IsReadingPaneEnabled propriété est destinée uniquement à une utilisation interne.Pour activer ou désactiver la possibilité pour les utilisateurs d’Office Outlook d’afficher les données de ce tableau, utilisez le volet de lecture Outlook. Vous devez définir cette propriété dans l’application. |
| Activer (la fusion et) le publipostage | Permet IsMailMergeEnabled d’activer ou de désactiver la possibilité de générer des documents fusionnés Office Word qui utilisent des données de ce tableau. |
| Activer la détection des doublons | Utilisez IsDuplicateDetectionEnabled pour activer ou désactiver la détection des doublons pour la table. Pour plus d’informations, consultez Détecter les données dupliquées à l’aide du code |
| Activer l’intégration de SharePoint | Utilisez IsDocumentManagementEnabled pour activer ou désactiver l'intégration du serveur SharePoint pour la table. Pour plus d’informations : Activer la gestion des documents SharePoint pour des entités spécifiques |
| Activer Dynamics 365 pour téléphones | Permet IsVisibleInMobile d’activer ou de désactiver la capacité des utilisateurs de Dynamics 365 pour les téléphones à afficher les données de ce tableau. |
| Dynamics 365 pour tablettes | Permet IsVisibleInMobileClient d’activer ou de désactiver la possibilité pour les utilisateurs de Dynamics 365 pour tablettes d’afficher les données de ce tableau.Si la table est disponible pour Dynamics 365 pour tablettes, vous pouvez utiliser IsReadOnlyInMobileClient pour spécifier que les données de l’enregistrement sont en lecture seule. |
| Activer l'audit | Utilisez IsAuditEnabled pour activer ou désactiver l’audit pour la table. Pour plus d’informations, consultez Configurer la table et les colonnes pour l’audit. |
| Modifier les zones qui affichent le tableau | Vous pouvez contrôler l’emplacement où les grilles de table s’affichent dans le volet de navigation de l’application. Ceci est contrôlé par SiteMap. |
| Ajouter ou supprimer des colonnes | Tant que la propriété CanCreateAttributes.Value gérée permet de créer des colonnes, vous pouvez ajouter des colonnes à la table. Pour plus d’informations, consultez définitions de colonnes. |
| Ajouter ou supprimer des vues | Tant que la propriété CanCreateViews.Value gérée permet de créer des vues, vous pouvez utiliser la SavedQuery table pour créer des vues pour une table. |
| Ajouter ou supprimer des graphiques | Tant que la propriété CanCreateCharts.Value gérée permet de créer des graphiques et que la IsEnabledForCharts propriété de table est vraie, vous pouvez utiliser la table SavedQueryVisualization pour créer des graphiques pour une table. Pour plus d’informations, consultez Afficher les données avec des visualisations (graphiques). |
| Ajouter ou supprimer des relations de table | Plusieurs propriétés gérées contrôlent les types de relations que vous pouvez créer pour une table. Pour plus d’informations, consultez définitions de relation de table. |
| Modifier les icônes | Vous pouvez modifier les icônes utilisées pour les tables personnalisées. Pour plus d’informations, consultez Modifier les icônes de table personnalisées de l’application basée sur des modèles |
| Peut changer la relation hiérarchique |
CanChangeHierarchicalRelationship.Value contrôle si l’état hiérarchique des relations incluses dans vos solutions managées peut être modifié. |
| Nom de l'ensemble d’entités |
EntitySetName spécifie le nom utilisé pour identifier de manière unique la table à l’aide de l’API Web Dataverse. Il s’agit généralement de la même chose que le LogicalCollectionName, mais vous ne pouvez pas modifier le LogicalCollectionName. Vous devez uniquement modifier EntitySetName avant l’écriture d’un code à l’aide du nom du jeu d’entités par défaut.
En savoir plus sur les noms des ensembles d’entités |
Messages pris en charge par les tables personnalisées
Les tables personnalisées prennent en charge les mêmes messages de base que les tables système. L’ensemble de messages disponibles varie selon que la table personnalisée appartient à l’utilisateur ou à l’organisation. Les tables appartenant à l’utilisateur prennent en charge le partage, de sorte que les messages tels que GrantAccess, ModifyAccesset RevokeAccess sont disponibles.
Voir aussi
Utiliser l’API Web avec les définitions de table
Utiliser des définitions de table à l’aide du Kit de développement logiciel (SDK) pour .NET