Introduction aux variables DAX dans Power BI

Avez-vous déjà eu un scénario où vous deviez utiliser une partie de votre calcul plusieurs fois ? Vous pouvez créer une table ou une colonne pour cela, puis la réutiliser. Cependant, il y a des moments où vous avez juste besoin que ce calcul soit réutilisé plusieurs fois au même endroit. Les variables DAX peuvent vous y aider. Les variables DAX sont également utiles pour améliorer les performances de votre calcul. Dans ce blog, j’expliquerai ce que sont les variables DAX, les scénarios pour les utiliser et comment elles peuvent être meilleures pour vos calculs Power BI.
Réutilisation d’une partie du code
Il arrive parfois que vous ayez besoin de réutiliser une partie du code. Considérez l’exemple ci-dessous :
L’expression ci-dessus est difficile à lire et comporte également des sections répétitives ; laissez-moi les marquer pour vous pour une meilleure compréhension:
Nous avons deux parties principales dans l’expression ci-dessus : A et B. Chacune d’entre elles effectue un calcul. Maintenant, avec les marques ci-dessus, la lecture de l’expression est beaucoup plus simple. L’expression entière signifie ceci :
=SI(A>B, A, B)
Tout ce que dit l’expression ci-dessus est que si A est plus grand que B, alors renvoie A ; sinon, B. C’est beaucoup plus simple à lire car nous divisons les parties répétitives en sections. C’est exactement à cela que sert la variable DAX.
Variables DAX
Vous pouvez définir une variable DAX avec A ÉTÉ (non sensible à la casse) puis réutilisez-le autant de fois que vous le souhaitez via la même expression. Voici, par exemple, comment je définis une variable pour A :
Les variables peuvent être définies dans n’importe lequel des objets de calcul : Colonne, Table ou Mesure
L’expression ci-dessus n’est pas encore complète, et si vous essayez quelque chose comme ça, vous obtiendrez une erreur. la définition de la variable fait partie de l’opération. L’autre partie est de retourner quelque chose. c’est ce que nous faisons en utilisant le REVENIR mot-clé.
Cette expression définit simplement une variable et la renvoie. Nous n’utilisons pas vraiment la partie de l’expression définie dans la variable plus d’une fois, mais ça va.
Vous pouvez définir plus de variables en ajoutant plus de VAR à l’instruction. Voici à quoi ressemble notre expression en utilisant les variables :
La variable rend votre code plus lisible et plus cohérent
L’exemple ci-dessus montre clairement comment les variables peuvent rendre votre code plus lisible. Au lieu d’avoir une expression longue et utilisant beaucoup de parties répétitives, vous pouvez définir la partie répétitive de l’expression une fois et la réutiliser autant de fois que vous le souhaitez. lorsque vous définissez une partie de l’expression une fois et que vous la réutilisez plusieurs fois, votre code deviendra également plus cohérent et plus facile à maintenir.
Les variables sont meilleures pour la performance
Les variables ne sont pas seulement bonnes pour la lisibilité ; ils sont également bons pour la performance. Dans l’expression ci-dessous : le calcul pour la partie A a été fait deux fois, idem pour la partie B :
Cependant, si vous définissez la pièce comme une variable, le calcul se produit une fois et le résultat est stocké dans la variable et réutilisé plusieurs fois. Cela fonctionnerait beaucoup plus rapidement que de le recalculer.
Tout peut être stocké dans une variable : table ou valeur
Une autre bonne chose à propos de la variable est que vous pouvez même stocker une table dans une variable. Comme ci-dessous :
Comme vous pouvez le voir, dans cette expression, TOUS les FactInternetSales sont stockés dans une variable. Il s’agit d’une table entière stockée dans une variable et peut être utilisée à d’autres endroits.
Les variables peuvent être créées en ligne : portée
une définition de variable ne doit pas toujours être le début de votre code DAX ou même dans la partie principale. il peut être quelque part en ligne dans une autre fonction. L’expression ci-dessous montre une autre façon d’écrire pour la dernière expression que vous avez vue ci-dessus.
Variables vs Mesures
L’une des questions que vous pourriez avoir maintenant est la suivante; parfois, pour réutiliser une expression, vous créez une mesure pour celle-ci, puis utilisez cette mesure dans l’expression suivante. En quoi est-ce différent d’une variable ?
Les mesures sont globales, les variables sont locales
Les mesures sont globales et peuvent être utilisées dans n’importe quelle autre mesure du même fichier Power BI. Cependant, les variables sont locales et ne peuvent être utilisées que dans l’expression dans laquelle elles sont définies.
Les variables sont meilleures pour la performance
En raison de la nature de la façon dont cette variable est calculée, elle fonctionnerait plus rapidement que d’utiliser une mesure à la place de cela. Si vous définissez une variable, le calcul de cette variable est effectué une seule fois. Toutefois, si vous créez des mesures et que vous les réutilisez ensuite plusieurs fois dans une expression, ce calcul de mesure est effectué plusieurs fois.
une solution de contournement consiste à créer une mesure, puis à définir une variable pour matérialiser cette mesure dans votre expression. comme dans l’exemple ci-dessous, j’ai créé une variable à partir de la mesure Sales :
Quand créer une variable ?
Vous pourriez demander : OK, je comprends ce qu’est une variable, mais je ne comprends pas un scénario pour l’utiliser, ou où dois-je modifier et ajouter une variable dans mes calculs DAX ? C’est une très bonne question. Voici mes règles de base pour créer des variables :
- Si vous utilisez une partie de votre expression plus d’une fois
- Si votre expression est difficile à lire
- si le calcul est lent, et dans cette expression, vous réutilisez une partie de l’expression (notez que cela peut être quelque part dans la hiérarchie de la mesure, si vous pointez vers une mesure et qu’elle utilise une autre mesure, etc. quelque part bas dans la hiérarchie, vous avez peut-être utilisé une section plus d’une fois)
Sommaire
Les variables, à mon avis, sont le joyau caché des expressions DAX dans Power BI et d’autres outils qui utilisent DAX. En utilisant des variables, vous aurez un meilleur code. Votre code serait plus lisible, plus cohérent, plus facile à maintenir et, surtout, plus rapide.
Bonne lecture et apprentissage !!
Source link