TOTALYTD DAX : Mesure Vte An Cumul A - 1 (extrait)

TOTALYTD DAX, Sommer l’année jusqu’à une date

La fonction TOTALYTD DAX évalue une valeur pour l’année en cours jusqu’à une certaine date dans le contexte de filtre.

Maintenant que le rapport BIG_Lab37.pbix est prêt, vous allez introduire des mesures pour les analyses de dimensions temporelles.

Actuellement, il y a 35 fonctions DAX d’intelligence temporelle.

La plupart de ces fonctions ont été créées pour répondre aux besoins courants : calculer le total des ventes cumulé sur le trimestre, calculer les ventes de l’année précédente, comparer une année sur l’autre, etc.

En effet, certaines d’entre-elles sont très souples, comme DATEADD, DATESINPERIOD, DATESMTD ou DATESQTD.

Combinées avec la fonction CALCULATE, elles surpassent même les services offerts par les fonctions classiques de Time Intelligence, comme PREVIOUSMONTH, SAMEPERIODLASTYEAR, etc. en offrant une granularité plus fine.

Notamment, si vous souhaitez faire des analyses sur des périodes non standards, comme sur les 20 ou 10 derniers jours.

Pour l’instant, l’objectif de cet exercice est de cumuler toutes les ventes de l’année, mois par mois et de comparer les ventes d’une année sur l’autre.

Gardez à l’esprit que l’interface a pu évoluer fortement depuis que cet article a été rédigé.

Créer un fichier Power BI pour TOTALYTD DAX

Premièrement, ouvrir le fichier PBI_Lab37.pbix et l’enregistrer sous le nom PBI_Lab40.pbix.

L’intérêt d’utiliser un rapport Power BI existant est son modèle de données, en particulier les relations entre les tables. C’est la raison pour laquelle, vous démarrez à partir de ce fichier.

En revanche, les pages existantes (Clients, Commerciale) dans ce rapport, ne présentent aucun intérêt pour la création des mesures.

Aussi, vous allez modifier le rapport PBI_Lab40.pbix.

Notamment, vous allez ajouter une nouvelle page vierge.

Aussi dans la vue Rapport, cliquer sur le + (en bas des pages) : Page 1 apparaît.

Ensuite, renommer la page Page 1 en Analyser. Un rapport doit toujours avoir au moins une page.

Supprimer la page Clients : cliquer aussi sur le bouton Supprimer du pop-up de confirmation.

Supprimer la page Commerciale : cliquer aussi sur le bouton Supprimer du pop-up de confirmation.

Création de la mesure Vte An Cumul pour TOTALYTD DAX

Dans la table Transactions, créer une nouvelle mesure qui se nommera Vte An Cumul.

La mesure Vte An Cumul doit calculer le cumul annuel de Mt Vente. Par exemple pour un filtre mensuel, cela signifie que chaque mois affiche le cumul de Mt Vente depuis le début de l’année. Autrement dit, la mesure Vte An Cumul doit cumuler le Mt Vente des mois précédents de l’année en cours.

Formater en € Euro (123 €) avec 0 décimales.

Utiliser uniquement la fonction DAX de Time Intelligence TOTALYTD.

Solution avec TOTALYTD DAX

Dans la vue Données, faire un clic-droit sur la table Transactions puis cliquer sur Nouvelle mesure.

Ensuite, remplacer Mesure = par la formule suivante :

Vte An Cumul = TOTALYTD( [Mt Vente], Calendrier[Date])

Puis appuyer sur la touche entrée du clavier.

Dans le ruban Outils de mesure, cliquer sur € Euro (123 €) dans le menu déroulant de $, puis mettre 0 dans le nombre de décimales.

Explication de la formule
La fonction DAX TOTALYTD évalue la valeur de la mesure Mt Vente pour l’année en cours jusqu’à une certaine date dans le contexte de filtre.
Dans le cas présent, la date prise en compte est la colonne Date du Calendrier.
Or, dans le modèle de données, la colonne Date du Calendrier est liée à la colonne VenteDate de la table Transactions avec une cardinalité (1:*).
Cela signifie que pour 1 date (du Calendrier), il y a N ventes correspondantes (dans Transactions).
Ça c’est l’explication du mécanisme.
Maintenant, peut-on vérifier les calculs de la formule ?
Oui, grâce à la vue Données de la table Transactions :
* Mars 2023, il y a eu 2 ventes (3420 €, 2205,9 €), soit un total de 5625,90 €.
* Avril 2023, pas de ventes.
* Mai 2023, il y a eu 2 ventes (11386,38 €, 1394 €), soit un total de 12780,38 €.
Au 31 mai 2023, la mesure Vte An Cumul affiche précisément 18406,28 €.

Fin de la solution.

Ajouter un visuel de type Matrice

Ensuite, vous allez ajouter un nouveau visuel.

Ouvrir la vue Rapport (à gauche, au-dessus de la vue Données).

Ensuite, cliquer sur une partie vierge quelconque de la page Analyser.

Puis ouvrir le volet Visualisations.

Puis ajouter un objet visuel de type Matrice. C’est celui qui ressemble à une feuille de calcul Excel avec des cellules colorées en bleu. Il est à droite du visuel Table.

Ensuite, afficher dans cet ordre :

  • En lignes : Calendrier[Annee], Calendrier[AnneeMois]
  • En valeurs : Transactions[Mt Vente], Transactions[Vte An Cumul]

Puis, dans la partie Format, cliquer sur :

  • Général
    • Position X : 0
    • Position Y : 0
    • Largeur : 510
    • Hauteur : 720
  • Grille
    • Taille du texte : 10 pt

Enfin, ouvrir les années 2023 et 2024.

Puis, dans le visuel, vérifier que la mesure Vte An Cumul cumule le Mt Vente des mois précédents de l’année en cours.

Pour l’année entière, remarquer que les montants sont strictement identiques entre la mesure Mt Vente et la mesure Vte An Cumul.

La différence au niveau des mois est normale car la mesure Vte An Cumul fait un cumul annuel, ce qui n’est pas le cas de la mesure Mt Vente.

Pour vous aider, regarder la copie d’écran ci-dessous.

TOTALYTD DAX : Mesure Vte An Cumul (extrait)
TOTALYTD DAX : Mesure Vte An Cumul (extrait)

Création de la mesure Vte An Cumul A – 1

Dans la table Transactions, créer une nouvelle mesure qui se nommera Vte An Cumul A – 1.

Le principe est le même que pour la mesure Vte An Cumul. Toutefois, le calcul porte sur une période décalée par rapport à la période en cours.

Par exemple, si la date courante est juillet 2024, il faut afficher le cumul annuel de juillet 2023.

Généralement, cette mesure sert à comparer les ventes d’une année sur l’autre.

Formater en € Euro (123 €) avec 0 décimales.

Utiliser uniquement les fonctions de Time Intelligence TOTALYTD et SAMEPERIODLASTYEAR.

Solution

Dans la vue Données, faire un clic-droit sur la table Transactions puis cliquer sur Nouvelle mesure.

Ensuite, remplacer Mesure = par la formule suivante :

Vte An Cumul A - 1 = TOTALYTD([Mt Vente], SAMEPERIODLASTYEAR(Calendrier[Date]))

Puis appuyer sur la touche entrée du clavier.

Enfin, dans le ruban Outils de mesure, cliquer sur € Euro (123 €) dans le menu déroulant de $, puis mettre 0 dans le nombre de décimales.

Explication de la formule
Le mode de calcul de cette formule est strictement identique à celui de la mesure Vte An Cumul (cf. plus haut).
La seule et unique différence tient au fait que le calcul se fait avec un décalage temporel d’une année en arrière grâce à la fonction SAMEPERIODLASTYEAR.
Concrètement, lorsque la date en cours est juillet 2024, le calcul se fera comme si la date en cours est juillet 2023.

Fin de la solution.

Modifier un visuel de type Matrice

Ensuite, vous allez modifier le visuel de type Matrice existant.

Notamment, ouvrir le volet Visualisations.

Puis cliquer sur l’objet visuel de type Matrice pour le sélectionner.

Ensuite, ajouter à l’objet visuel de type Matrice, la mesure Vte An Cumul A – 1.

Puis réduire les années 2025, 2026, 2027, 2028.

Enfin, dans le visuel, vérifier que la mesure Vte An Cumul A – 1 cumule le Mt Vente des mois précédents de l’année précédente. Autrement dit, les chiffres de la colonne Vte An Cumul A – 1 sont ceux de la colonne Vte An Cumul de l’année précédente.

Pour vous aider, regarder la copie d’écran ci-dessous.

TOTALYTD DAX  : Mesure Vte An Cumul A - 1 (extrait)
TOTALYTD DAX : Mesure Vte An Cumul A – 1 (extrait)

Enregistrer son travail

Ensuite, enregistrer le fichier PBI_Lab40.pbix.

Résumé

Vous avez découvert les fonctions DAX TOTALYTD et SAMEPERIODLASTYEAR.

La fonction temporelle TOTALYTD est très classique et souvent utilisée par le Contrôle de gestion ou les chargés de trésorerie.

Cependant, il est parfois nécessaire de faire des cumuls sur des périodes qui ne correspondent à une année civile, ni même à une année.

De même la fonction SAMEPERIODLASTYEAR est limitée à une période précise : l’année précédente.

Par exemple, comment faire un calcul à rebours qui s’applique, non pas sur l’année précédente, mais sur les 20 ou 10 derniers jours ?

Vous verrez dans les exercices suivants qu’il est possible d’apporter des solutions simples à ces questions.

Notamment l’exercice suivant TP Comparer le mois M avec M – 1, introduit une nouvelle fonction qui généralise la fonction SAMEPERIODLASTYEAR.

Pour aller plus loin

Consultez l’article sur les Visuels IA Power BI, et celui sur Analyser avec Power BI.

En cas d’erreur, consultez l’article sur Opération Power BI non valide.

Pour les calculs temporels avec DAX, consultez l’article Power BI comparer un mois avec DAX, ainsi que PREVIOUSMONTH et Power BI comparer une période avec DAX.

Toujours sur la Time Intelligence DAX, vous avez aussi les articles un peu plus poussés sur DATESQTD, DATESINPERIOD et ALL.

Concernant, les autres fonctions DAX utiles, prenez connaissance des articles Totaux cumulatifs avec CALCULATE, FILTER et VALUES.

Vous avez aussi un article pour mieux comprendre les Licences Power BI.

Par ailleurs, téléchargez gratuitement en PDF mon Tutoriel Power BI gratuit.

Enfin, téléchargez aussi gratuitement mon Tutoriel Power Automate gratuit.

Ainsi que mon Nouveau cours Power Apps gratuit.

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *