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.
La vue TMDL vous permet de créer des scripts, de modifier et d’appliquer des modifications aux objets de modèle sémantique avec un éditeur de code moderne à l’aide de TMDL (Tabular Model Definition Language) dans Power BI Desktop, ce qui améliore l’efficacité du développement et offre une visibilité et un contrôle complets sur les métadonnées du modèle sémantique.
La vue TMDL offre une autre expérience que la modélisation sémantique à l’aide du code, au lieu d’une interface utilisateur graphique telle que la vue Modèle.
La vue TMDL offre les avantages suivants :
- Amélioration de l’efficacité du développement avec un éditeur de code enrichi qui inclut la recherche et le remplacement, des raccourcis clavier, des modifications multilignes et plus.
- Augmentez la réutilisation en scriptant, en partageant et en réutilisant facilement des scripts TMDL parmi les développeurs de modèles sémantiques. Par exemple, utilisez un site SharePoint centralisé pour partager facilement des objets de modèle sémantique réutilisables tels que des tables de calendrier ou des groupes de calcul d’intelligence temporelle.
- Bénéficiez d’un contrôle et d’une transparence accrus, affichant tous les objets et propriétés de modèle sémantique et autorisant les modifications apportées aux éléments non disponibles dans l’interface utilisateur de Power BI Desktop, comme IsAvailableInMDX ou DetailRowsDefinition.
Script vers TMDL
Dans Power BI Desktop, sélectionnez l’icône d’affichage TMDL située le long du côté gauche de la fenêtre, comme illustré dans l’image suivante.
Lorsque la vue TMDL ouvre l’éditeur de code est initialement vide. Vous pouvez scripter n’importe quel objet de modèle sémantique tel qu’une table, une mesure ou une colonne en sélectionnant les objets dans le volet Données et en les faisant glisser vers l’éditeur de code :
Lorsque vous utilisez la vue TMDL et faites glisser l’objet à partir du volet Données, Power BI scripte l’intégralité des métadonnées de l’objet dans l’onglet actif sous la forme TMDL ou ouvre un nouvel onglet si l’onglet actuel n’est pas vide, en tant que script TMDL createOrReplace des objets sélectionnés, comme illustré dans l’image suivante :
Vous pouvez également faire un clic droit sur un objet dans la Vue Données et sélectionner Script TMDL dans un nouvel onglet ou dans le Presse-papiers, comme illustré dans l'image suivante.
Conseil / Astuce
- Vous pouvez scripter des sections entières ( mesures, tables ou colonnes) en faisant glisser la section dans l’éditeur de code pour générer un script de tous les objets de la section.
- La sélection multiple est prise en charge en appuyant sur la touche Ctrl avant de scripter les objets dans l’éditeur de code de vue TMDL.
Éditeur de code
Une fois que vous avez scripté un objet de modèle sémantique ou collé un script TMDL dans l’éditeur de code, vous pouvez utiliser les fonctionnalités complètes de l’expérience de code offertes par l’éditeur de code de vue TMDL. Les fonctionnalités d’expérience de code vous permettent d’explorer les métadonnées du modèle ou d’apporter des modifications qui peuvent être appliquées ultérieurement au modèle sémantique.
Mise en surbrillance sémantique
La mise en surbrillance sémantique est intégrée à l’éditeur de code, ce qui améliore la lisibilité en appliquant différentes couleurs à des parties de votre code en fonction de la signification. Ce codage de couleur facilite la compréhension de la structure et des fonctionnalités de votre code TMDL, comme illustré dans l’image suivante.
Vous pouvez également développer ou réduire des sections de votre script TMDL, comme illustré dans l’image suivante :
Autocomplétion
La saisie semi-automatique est intégrée à l’éditeur de code et propose des suggestions intelligentes pendant que vous tapez. La saisie semi-automatique peut accélérer votre flux de travail, réduire les risques d’erreurs et vous aider à comprendre vos options de code en suggérant dynamiquement des valeurs ou des propriétés possibles en tenant compte de la position du curseur.
Vous pouvez également déclencher la fonctionnalité de saisie semi-automatique à n’importe quel emplacement en appuyant sur Ctrl+Espace.
Info-bulles
L’info-bulle de contexte s’affiche au passage de la souris, fournissant des informations sur chaque objet ou propriété TMDL.
Actions de code
Lorsque le curseur se trouve sur un soulignement ondulé ou un texte sélectionné, la vue TMDL affiche une icône d’ampoule indiquant les actions de code disponibles, telles que la génération de balises de lignage ou la correction des fautes d’orthographe du nom de propriété.
Mise en forme du code
Mettez en forme votre code TMDL en appuyant sur Maj + Alt + F ou en cliquant sur l’option Format dans le ruban.
Vous pouvez également mettre en forme le texte sélectionné à l’aide de l’option « Format de sélection » dans le menu contextuel.
Capture d’écran de l’éditeur de code avec le code TMDL mis en forme avec le raccourci clavier Maj + Alt + F.
Diagnostics des erreurs
Les diagnostics d’erreurs intégrés de l’éditeur de code vous aident à identifier et à résoudre les problèmes en mettant en surbrillance les erreurs de langage TMDL dans l’éditeur de code, avec des messages détaillés qui fournissent des conseils sur leur résolution. En outre, un résumé des erreurs est disponible dans le volet Problèmes, ce qui permet de naviguer facilement vers l’emplacement d’erreur dans l’éditeur de code, comme illustré dans l’image suivante.
Appliquer des modifications au modèle sémantique
Lorsque vous êtes prêt, vous pouvez sélectionner le bouton Appliquer pour exécuter le script TMDL sur le modèle sémantique et appliquer vos modifications de code TMDL.
En cas de réussite, une notification s’affiche et votre modification de modélisation est appliquée au modèle sémantique.
En cas d’échec, une notification d’erreur s’affiche pour montrer que vos modifications de modélisation n’ont pas été appliquées au modèle sémantique. Vous pouvez afficher plus d’informations sur l’erreur en sélectionnant le lien Afficher les détails dans la notification, qui développe ensuite le volet Sortie et affiche les détails de l’erreur.
Remarque
La vue TMDL modifie uniquement les métadonnées du modèle sémantique, sans actualiser les données ni affecter le rapport. Si vos modifications nécessitent une actualisation des données, comme la modification d’une expression PowerQuery ou d’une expression de colonne calculée, vous devez actualiser manuellement la table ou le modèle pour que les modifications prennent effet. En outre, le changement de nom d’un champ dans la vue TMDL peut interrompre les visuels dans le rapport qui utilisent ce champ.
Aperçu des modifications apportées au modèle sémantique
La vue TMDL vous permet d’afficher un aperçu des modifications de script en affichant un aperçu du modèle sémantique avant et après l’exécution du script, illustré sous forme de différences de code TMDL. L’aperçu des modifications de script est particulièrement utile lors de la copie de scripts à partir d’autres sources, ce qui vous permet d’évaluer leur impact avant de les exécuter sur votre modèle sémantique.
La sélection du bouton Aperçu affiche une différence TMDL du modèle sémantique avant et après l’exécution du script TMDL dans l’onglet ouvert.
Une fenêtre côte à côte apparaît dans le volet droit, comme illustré dans l’image suivante.
Des boîtes rouges et vertes mettent en surbrillance les modifications, avec les boîtes rouges indiquant les lignes supprimées ou modifiées, et les vertes indiquant les nouvelles lignes.
Remarque
La comparaison n’est pas directement effectuée par rapport au script TMDL actuellement affiché, mais plutôt une comparaison complète du modèle sémantique avant et après l’exécution du script. Par conséquent, certaines propriétés peuvent être classées différemment de celles affichées dans l’onglet, en respectant l’ordre des propriétés/objets TMDL par défaut.
L'aperçu est en lecture seule, mais vous pouvez poursuivre la modification de votre script. Pour actualiser l’aperçu après les modifications, sélectionnez le bouton Mettre à jour l’aperçu, comme illustré dans la bannière de l’image suivante.
Il y a une barre d'outils dans le coin supérieur droit de l'écran d'aperçu qui permet de naviguer dans toutes les différences de code, ce qui vous permet de basculer entre les différences en ligne ou côte à côte, d'afficher ou de masquer les régions inchangées, et de fermer la vue d'aperçu.
Il existe quelques considérations à prendre en compte lors de l’aperçu des modifications apportées au modèle sémantique :
- La vue TMDL réinitialise les configurations d’affichage par défaut sur chaque exécution en préversion.
- Une préversion s’exécute uniquement avec une modification TMDL valide. Les scripts TMDL non valides n’exécutent pas d’aperçu et une erreur s’affiche dans le volet Sortie.
Onglets de script TMDL
Dans la vue TMDL, vous pouvez avoir plusieurs onglets de script à la fois, qui peuvent être renommés ou supprimés.
Le contenu des onglets d’affichage TMDL est enregistré dans le fichier de rapport lorsque vous enregistrez le rapport Power BI Desktop. Vous pouvez donc continuer là où vous avez quitté la prochaine fois que vous ouvrez le fichier de rapport Power BI Desktop. Lors de l’enregistrement dans un projet Power BI (PBIP), chaque onglet de script est enregistré sous forme de fichier .tmdl dans le dossier \TMDLScripts , comme illustré dans l’image suivante.
Conseil / Astuce
Vous pouvez ouvrir et modifier des scripts TMDL dans Visual Studio Code et les recharger correctement après le redémarrage de Power BI Desktop.
Les volets Problèmes et sortie affichent des erreurs et des messages spécifiques à l’onglet script actuellement sélectionné et affiché. Le passage à un autre onglet de script TMDL actualise les deux volets avec des informations spécifiques à l’onglet sélectionné et actuellement affiché.
Vous pouvez sélectionner le bouton Effacer pour vider les messages du volet Sortie .
Les messages sont conservés uniquement pour chaque session Power BI Desktop. Par conséquent, le redémarrage de Power BI Desktop efface tous les messages de sortie pour tous les onglets de script.
Message de mise à niveau du niveau de compatibilité
Le niveau de compatibilité d’un modèle sémantique Power BI détermine les fonctionnalités accessibles. La vue TMDL vous permet d’ajouter un objet ou une propriété Analysis Services, même s’il n’est pas disponible au niveau de compatibilité actuel. Lors de l’application d’une modification nécessitant une mise à niveau de niveau de compatibilité, la vue TMDL fournit une invite indiquant quels objets ou objets nécessitent la mise à niveau.
Changement de nom d’objet avec la vue TMDL
Pour renommer un objet dans la vue TMDL, il est nécessaire de scripter son parent. Par exemple, le changement de nom d’une colonne nécessite un script de la table, tandis que le changement de nom d’une table nécessite un script de l’intégralité du modèle sémantique. En savoir plus sur la hiérarchie de modèle objet tabulaire dans le document suivant : hiérarchie de modèle objet tabulaire.
Avec la vue TMDL, le renommage en bloc peut être effectué efficacement à l’aide de modèles de recherche et de remplacement simples. Par exemple, vous pouvez renommer toutes les colonnes de table en minuscules en suivant ces étapes.
Ouvrez la vue TMDL, scriptez la table que vous envisagez de modifier.
Appuyez sur Ctrl+F pour ouvrir la boîte de dialogue Rechercher et remplacer, vérifiez que l’option Expression régulière est activée.
Entrez les modèles suivants dans les champs rechercher et remplacer, puis sélectionnez Remplacer tout.
| Action | Modèle/remplacement |
|---|---|
| Rechercher | (^\s+column\s+)(.+) |
| Remplacer | $1\L$2 |
Exécutez votre script TMDL pour renommer toutes les colonnes de table en minuscules instantanément :
Notez que le nom de colonne diffère de la propriété sourceColumn.
La synchronisation entre la table de modèle sémantique et la requête Power Query s’appuie sur sourceColumn, en conservant les noms indépendants. Lorsque vous ouvrez l’éditeur Power Query, il affiche les noms de colonnes qui correspondent à la sourceColumn, plutôt que le nom de colonne du modèle. En outre, le changement de nom d’une colonne dans l’interface utilisateur n’ajoute pas automatiquement une étape de renommage à la requête tant que sourceColumn et nom de colonne ne sont pas identiques.
Vue TMDL et projet Power BI
Lorsque vous enregistrez votre travail en tant que projet Power BI (PBIP), vous accédez à vos métadonnées de définition de modèle sémantique en tant que fichiers TMDL, en fournissant un contrôle de code source et une expérience de co-développement utiles, tout en vous permettant d’apporter des modifications au modèle sémantique en dehors de Power BI Desktop. Toutefois, si vous modifiez les fichiers TMDL au sein du PBIP, vous devez redémarrer Power BI Desktop pour recharger ces modifications. En revanche, la vue TMDL suit un modèle mental de script, ce qui vous permet d’appliquer efficacement des modifications directement au modèle sémantique en cours de modification dans Power BI Desktop à l’aide de TMDL, que le format de fichier soit PBIX ou PBIP.
Vous pouvez intégrer en toute transparence les deux expériences. Par exemple, vous pouvez mettre à jour la définition TMDL dans PBIP pour des modifications rapides sans lancer Power BI Desktop et utiliser la vue TMDL lorsque Power BI Desktop est déjà ouvert pour implémenter efficacement une série de modifications apportées au modèle sémantique à l’aide de TMDL. Ces deux approches offrent une expérience de codage TMDL riche et cohérente.
Conseil / Astuce
Pour une expérience de création TMDL améliorée lors de la modification de fichiers TMDL en externe dans Visual Studio Code, utilisez l’extension TMDL Visual Studio Code. Cette extension fournit la mise en surbrillance sémantique DAX et Power Query, la saisie semi-automatique, les diagnostics, les actions de code, la mise en forme du code, la navigation dans la barre d’accès et la prise en charge de la localisation pour les documents TMDL.
Cas d'utilisation courants pour la vue TMDL
Scénario: Je dois réutiliser ou partager une table de modèle sémantique avec sa définition complète, y compris les colonnes, l’expression Power Query et trier par configuration, et d’autres dans un autre modèle sémantique.
Solution: Ouvrez le modèle sémantique avec la table, scriptez-le à l’aide de la vue TMDL. Copiez le script dans l’autre fenêtre Power BI Desktop, ouvrez l’onglet affichage TMDL et appliquez le script.
Scénario: J’ai nommé toutes mes tables avec les préfixes « dim_ » ou « fact_ ». J’aimerais supprimer ces préfixes sans mettre à jour manuellement chacune des plus de 100 tables.
Solution: Ouvrez la vue TMDL, scriptez le modèle sémantique, recherchez le préfixe (les expressions régulières sont prises en charge) et remplacez-le par un texte vide.
Scénario: Je dois créer une perspective dans mon modèle sémantique pour utiliser la fonctionnalité de visuels personnalisés. Toutefois, je ne peux pas le créer ou le modifier à l’aide de l’interface graphique de Power BI Desktop.
Solution: Ouvrez la vue TMDL, créez un nouvel onglet vide (ou utilisez le script à partir d’une perspective existante), puis créez ou modifiez la perspective à l’aide de TMDL. Cette méthode s’applique également à d’autres métadonnées de modèle sémantique qui n’ont pas d’interface graphique, telles que les traductions, les expressions de ligne de détail et d’autres.
createOrReplace
perspective SalesView
perspectiveTable Sales
perspectiveMeasure 'Sales Amount'
perspectiveMeasure 'Sales Qty'
perspectiveColumn Quantity
perspectiveColumn 'Amount'
Scénario: Je dois modifier l’expression Power Query de ma table sans déclencher d’actualisation.
Solution: Scriptez la table, modifiez l’expression Power Query et appliquez les modifications. La vue TMDL ne nécessite pas d’actualisation de vos données.
Scénario: J’ai besoin de basculer le mode de stockage de ma table de DirectQuery vers Importer, et vice versa
Solution: Scriptez la table, mettez à jour le mode partition et appliquez des modifications.
Scénario: Je dois sauvegarder ma définition de modèle sémantique avant d’apporter des modifications significatives et de revenir facilement à une définition précédente, si nécessaire.
Solution: Scriptez le modèle sémantique ou des parties spécifiques que vous souhaitez sauvegarder, apportez vos modifications dans d’autres vues et, si nécessaire, revenez à la vue TMDL pour restaurer les métadonnées précédentes en exécutant le script enregistré.
Considérations et limitations
- Vous pouvez utiliser la vue TMDL pour modifier n’importe quel objet ou propriété dans un modèle sémantique. Toutefois, des modifications incomplètes ou incorrectes peuvent entraîner un comportement inattendu. Pour plus d’informations sur ces opérations, reportez-vous à l’article De création de modèles.
- La palette de commandes affiche certaines commandes qui ne sont pas prises en charge actuellement.
- La configuration initiale de l'intégration Git à partir de l'espace de travail n'inclut pas les scripts TMDL View sauvegardés dans le modèle sémantique publié. Pour en savoir plus, consultez l’article Fabric d'intégration Git.
Contenu connexe
Les articles suivants décrivent plus en détail TMDL et ses utilisations.
- Prise en main de TMDL
-
TMDL (Tabulaire Model Definition Language) - projets Power BI Desktop (préversion)
- Dossier des modèles sémantiques des projets Power BI Desktop