Nouveauté Power BI : il est maintenant possible d’exécuter des requêtes DAX dans Power BI Desktop

Par Frédérick Samson

Même si les fonctionnalités infonuagiques dans Microsoft Fabric et Copilot attirent toute l’attention en ce moment du côté de Microsoft, l’innovation n’a pas cessé du côté de Power BI Desktop. L’outil de développement gratuit pour les modèles sémantiques et les rapports Power BI intègre maintenant la capacité de définir et exécuter des requêtes DAX. Utilisateurs avancés : vous devez apprendre à en tirer parti!

Bon à savoir : changement de noms

Microsoft a renommé les jeux de données (dataset) en modèle sémantique (semantic model) en novembre 2023. Le service Power BI utilise ce nouveau nom ainsi que toute la documentation en ligne.

Ils ont aussi renommé Azure Active Directory (AAD) en Microsoft Entra ID (ME-ID) pour les raisons évoquées ici.

DAX Query View : nouvelle interface en préversion

Une fois la fonctionnalité activée dans les options de préversion dans la version de novembre 2023 de Power BI Desktop :

Une nouvelle vue apparaît à gauche de l’interface :

Dans cette nouvelle interface, il vous sera possible de définir plusieurs requêtes DAX qui seront sauvegardées à même votre fichier PBIX. Microsoft a fourni cette image (et plusieurs autres de ce blogue) sur son blogue détaillé sur le sujet.

Anatomie d’une requête DAX

La différence entre une mesure DAX et une requête DAX est que l’une retourne une valeur, alors que l’autre retourne toujours une table (qui pourrait contenir une seule cellule). Une requête DAX doit toujours commencer par l’énoncé EVALUATE, puis utiliser une fonction qui retourne une table (ex. : Filter, SummarizeColumns, CalculateTable, Row, etc.). Vous pouvez en apprendre plus en ligne.

À quoi ça sert?

Les cas d’utilisation auxquels je pense sont les suivants :

  • Obtenir des requêtes DAX préconçues par Power BI afin :
    • d’obtenir un aperçu des lignes d’une table
    • de générer des statistiques sur chaque colonne d’une table (min, max, moyenne)
    • d’afficher la définition des mesures DAX d’une table ou de tout le modèle

Il suffit d’utiliser le bouton droit de la souris sur une table du modèle :

D’exécuter des requêtes DAX, même en mode DirectQuery

  • Auparavant, il fallait passer par PowerQuery pour obtenir un aperçu des données dans ce mode d’accès

Tester les requêtes lancées par le visuel d’un rapport afin d’investiguer une problématique et itérer sur la définition des mesures utilisées :

De créer ou mettre à jour des mesures du modèles directement à partir de cette vue :

Est-ce que cela signifie que DAX Studio n’est plus utile?

Absolument pas! Cet outil gratuit est absolument indispensable à tout développeur de modèle sémantique Power BI. Bien qu’il permette d’écrire, exécuter et sauvegarder des requêtes DAX, il offre aussi des fonctionnalités pour :

  • analyser la taille du modèle (Vertipaq Analyzer)
  • mesurer la performance d’exécution d’une requête
  • exécuter les Analysis Services Dynamic Management Views DMV qui offrent de l’information sur le modèle

Pour l’exécution des requêtes DAX, la nouvelle fonctionnalité de Microsoft offre les avantages suivants par rapport à DAX Studio :

Pas besoin d’avoir les droits administrateur sur son PC pour l’installer comme outil externe (la version « portable » nécessite une étape de plus pour se connecter au bon modèle (PBIX))

  • Les requêtes DAX sont sauvegardées à même le PBIX plutôt que dans des fichiers à part
  • Power BI Desktop permet de générer des requêtes DAX à partir du modèle (ex. : top 100 ou statistiques)

Je dirais simplement que DAX Studio sera moins utilisé pour son volet exécution de requêtes DAX, sauf pour investiguer les performances.

Mot de la fin

Cette nouvelle fonctionnalité démontre que Power BI s’adresse aussi aux développeurs avancés qui souhaitent concevoir des modèles sémantiques sophistiqués. Auparavant ce public cible s’orientait plutôt sur des solutions SQL Server Analysis Services et Visual Studio pour réaliser ces modèles sémantiques.

Je vous garantis que si vous investissez du temps pour apprendre à maîtriser les requêtes DAX et cette nouvelle interface, votre niveau de compétence avec Power BI augmentera de manière significative. Vous deviendrez plus efficace pour écrire des mesures DAX réutilisables dans plusieurs contextes et visuels.

Retour à la page blogue