• 6 heures
  • Difficile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 26/09/2024

Identifiez des tendances grâce aux fonctions d’intelligence temporelle

Fatima vous informe que les équipes opérationnelles sont mécontentes du manque de visibilité sur les durées de recrutement pour les différents métiers au sein d'Ethikwear. Pour répondre à cette préoccupation, elle vous demande d'explorer les capacités de Power BI sur la manipulation et l'analyse des dates.

In fine, l’objectif sera d’ajouter au tableau de bord des indicateurs sur les durées de recrutement pour mieux comprendre les délais associés à chaque type de poste et d'identifier des opportunités pour améliorer le processus de recrutement.

Allons-y !

Manipulez des objets Date

Les fonctions de Dates et heures vous permettent de manipuler et analyser les données temporelles. Ci-dessous, vous trouverez plusieurs fonctions que vous utiliserez probablement régulièrement en DAX.

Syntaxe

Description

Paramètres

TODAY()

Retourne la date du jour au format Date.

  • Aucun paramètre.

NOW()

Cette fonction est similaire à TODAY() mais elle inclut l’heure exacte.

  • Aucun paramètre.

DAY(<date> )

MONTH(<date> )

YEAR(<date> )

Ces trois fonctions vous renvoient le jour ou le mois ou l’année d’une date donnée.

  • Un objet date au format DateHeure ou un texte d’une date à reconnaître automatiquement.

DATEDIFF(

<Date1>, 

<Date2>, <Interval> )  

Renvoie le nombre de d'intervalles entre deux dates (exemple : nombre de jours entre deux dates ou nombre de semaines…).

  • Deux objets Date

  • L’intervalle. Les types acceptés sont :

    • SECOND

    • MINUTE

    • HOUR

    • DAY

    • WEEK

    • MONTH

    • QUARTER

    • YEAR

Parfois, il peut vous être utile d’avoir une table de date à votre modèle de données et d’en définir les attributs, tels que le début et la fin de la période étudiée. Regardons cela.

Créez une table de dates

Les situations dans lesquelles vous pouvez vouloir une table de date sont principalement les suivantes :

  • Analyse temporelle : Pour utiliser les fonctions d’intelligence temporelle de DAX , comme les calculs de périodes précédentes, les cumuls annuels, trimestriels, mensuels, etc. Une table de date permet de manipuler facilement ces périodes.

  • Rapports dynamiques : Une table de date permet de créer des rapports plus dynamiques et interactifs, en facilitant le filtrage et le regroupement des données par différentes périodes (jours, mois, trimestres, années).

  • Consistance des données : En utilisant une table de date unique, vous assurez la cohérence des dates à travers tout votre modèle de données, évitant ainsi les erreurs liées à des formats de date différents ou des dates manquantes.

  • Calculs complexes : Pour des calculs plus avancés, comme les prévisions, les tendances ou les comparaisons entre périodes, une table de date bien structurée est essentielle.

Pour créer une table, DAX dispose de plusieurs fonctions utiles que nous allons voir ensemble :

Syntaxe

Description

Paramètres

CALENDAR(

<start_date>, <end_date> )  

Retourne une table avec une seule colonne nommée « Date » qui contient un ensemble de dates contigu. La plage de dates est la période allant de la date de début spécifiée à la date de fin spécifiée, inclus.

  • Start_date : Date de début

  • End_date : Date de fin

CALENDARAUTO(

[fiscal_year_end_month])

Retourne une table avec une seule colonne nommée « Date » qui contient un ensemble de dates contigu. La plage de dates est calculée automatiquement en fonction des données du modèle.

  • fiscal_year_end_month : Un nombre compris entre 1 et 12 pour choisir le mois de fin de la table. La valeur par défaut est 12.

Par exemple :

La formule suivante nous renvoie une table avec une seule colonne des dates entre le premier janvier 2023 et le 31 décembre 2023.

Calendrier_2023 = 
CALENDAR ( 
"01/01/2023",
"31/12/2023"
)

Utilisez les fonctions time intelligence

Les fonctions de Time Intelligence de DAX sont utiles dès que vous avez besoin d’analyser des données sur des périodes de temps spécifiques.

Ci-dessous quelques situations où elles ont leur intérêt :

  • Comparaison de Périodes : Elles permettent de comparer facilement les données d’une période à une autre, comme les annonces d’offres d’emploi de cette année par rapport à l’année dernière, ou du trimestre actuel par rapport au trimestre précédent.

  • Calculs Automatisés : Vous pouvez calculer automatiquement les totaux cumulés depuis le début de l’année, du trimestre ou du mois en cours.

  • Analyse des Tendances : Vous pouvez décaler une plage de dates à prendre en compte dans vos calculs en fonction d’une variable et ainsi analyser des tendances par exemple.

Les fonctions les plus couramment utilisées sont :

Syntaxe

Description

Paramètres

PREVIOUSDAY(<date> )

Idem avec NEXTDAY(<date> ).

Il existe plusieurs fonctions pour le calcul sur le mois, le trimestre ou l’année.

Renvoie le jour qui précède la date donnée dans le contexte actuel.

Inversement Next renvoie la suivante.

  • Un objet date.

DATESBETWEEN(<Dates>, <StartDate>, <EndDate> )

A partir d’une colonne de dates, cette fonction renvoie les dates comprises entre une date de début spécifiée et une date de fin spécifiée.

  • Dates : Une colonne de dates

  • Start_date : la date de début

  • End_date : la date de fin

DATESINPERIOD(

<dates>, <start_date>, 

<number_of_intervals>, 

<interval> )

Renvoie une table contenant une colonne de dates qui commence à une date de début spécifiée et se poursuit pendant le nombre et le type d’intervalles de dates spécifiés.

  • Dates : Une colonne de dates

  • Start_date : la date de début

  • Number_of_intervals : le nombre d’intervalles à ajouter

  • Interval : Le type d’interval (jours, mois, etc.)

SAMEPERIODLASTYEAR(<dates> )

Renvoie une table qui contient une colonne de dates déplacées d’une année en remontant dans le temps à partir des dates de la colonne dates spécifiée dans le contexte actuel.

  • Dates : Une colonne de dates

Voyons comment utiliser ces fonctions dans la pratique à travers la vidéo suivante.

Dans ce screencast, nous avons vu :

  • Le fonctionnement de la fonctionTODAY().

  • Le fonctionnement de la fonctionDATESBETWEEN() pour filtrer une colonne de dates.

Assemblons tout cela ensemble pour aider l’équipe à mieux organiser ses recrutements.

À vous de jouer

Contexte

Fatima voudrait que vous calculiez un indicateur des délais de recrutement sur le tableau de bord.

Salut ! 👋 C'est Fatima ici. 

J'ai une nouvelle tâche pour toi : peux-tu calculer et ajouter un indicateur des délais de recrutement sur notre tableau de bord ? Ce serait super utile pour nous aider à anticiper nos recrutements et pour communiquer auprès des opérationnels. 

Merci d'avance pour ton travail sur cela. 

A très vite ! 📊👩‍💼

Consignes

Calculez l’indicateur de délai de recrutement :

  • en utilisant les dates de publication des offres (colonnelisted_time) et les dates de clôture (colonne  closed_time) de la table des offres d’emploi

  • en neutralisant les offres qui ont expiré sans être pourvues (colonneexpiry de la table des offres d’emploi).

En résumé

  • Utilisez les fonctions de base telles queTODAY,NOW,DAY,MONTH, etYEARpour extraire et manipuler des objets de date.

  • Vous pouvez ajouter des tables de dates à votre modèle de données avec la fonctionCALENDAR lorsque vous avez besoin de filtrer votre modèle de données sur une plage de dates cohérente entre toutes les tables.

  • Les fonctions Time Intelligence vous permettent de comparer des périodes temporelles dans vos données. 

Dans le chapitre suivant, nous allons découvrir des outils pour vous faciliter la vie sur DAX !

Exemple de certificat de réussite
Exemple de certificat de réussite