DATESINPERIOD |
Dates dans la période |
| DAX (Data Analysis Expressions) |
Syntaxe
|
DATESINPERIOD(dates, start_date, number_of_intervals, interval)
|
Paramètres
| Nom |
Description |
| dates |
Ce paramètre permet de spécifier une colonne contenant des dates, généralement issue d'une table de dates, sur laquelle la fonction va opérer. |
| start_date |
Ce paramètre permet de définir la date de départ à partir de laquelle la période sera calculée. |
| number_of_intervals |
Ce paramètre permet d'indiquer la taille de la période à retourner, exprimée dans l'unité définie par le paramètre interval. Il peut être positif (période future) ou négatif (période passée). |
| interval |
Ce paramètre permet de préciser l'unité de temps de la période à retourner. Les valeurs valides sont : DAY, MONTH, QUARTER, et YEAR. |
Description
Cette fonction permet de retourner une table contenant une colonne de dates sur une période spécifiée à partir d'une date de début.
Remarques
- Filtrage dynamique des dates : DATESINPERIOD permet de créer une table filtrée contenant les dates comprises sur une période spécifique à partir d'une date
de début. Contrairement à DATESBETWEEN, la période est définie par un nombre d'unités temporelles (jours, mois, trimestres, années), ce qui permet de générer des intervalles
dynamiques et relatifs à une date donnée.
- Périodes positives ou négatives : Le paramètre number_of_intervals peut être positif ou négatif. Une valeur positive génère des dates dans le futur à
partir de la date de départ, tandis qu'une valeur négative crée des dates dans le passé. Cela permet de calculer facilement des cumuls récents ou de projeter des périodes
futures.
- Table comme résultat : Comme DATESBETWEEN, DATESINPERIOD retourne une table de dates. Cette
table peut ensuite être utilisée dans des fonctions DAX d'agrégation telles que CALCULATE, SUMX ou AVERAGEX pour réaliser des calculs sur une période spécifique, facilitant
l'analyse temporelle dans Power BI.
- Flexibilité des intervalles : Le paramètre interval permet de spécifier l'unité de temps : DAY, MONTH,
QUARTER ou YEAR. Cela permet de générer des périodes quotidiennes, mensuelles, trimestrielles ou annuelles à partir d'une
date donnée, ce qui est très pratique pour les analyses financières ou les rapports périodiques.
- Date de départ précise : Le paramètre start_date peut être une constante, une colonne ou une expression DAX renvoyant une date. Cette flexibilité
permet d'ajuster dynamiquement la période calculée en fonction des besoins du modèle, par exemple, depuis la date la plus récente des ventes ou le début d'un exercice
fiscal.
- Intégration avec CALCULATE : DATESINPERIOD est souvent utilisée avec CALCULATE pour filtrer le contexte de calcul d'une mesure.
Par exemple, on peut calculer les ventes des trois derniers mois à partir d'une date donnée, sans avoir besoin de connaître la date exacte de début et de fin de la
période.
- Comparaison avec DATESBETWEEN : Alors que DATESBETWEEN exige des dates de début et de fin explicites, DATESINPERIOD permet de générer un intervalle relatif
à partir d'une seule date. Cela simplifie la création de mesures "mobiles", comme les 30 derniers jours ou les 12 derniers mois, sans recalculer chaque date de début et
de fin.
- Importance de la colonne de type date : Le paramètre dates doit être une colonne de type date. Si une colonne non datée est utilisée, la fonction retourne
une erreur. Cela garantit la cohérence des calculs temporels et permet de travailler sur des périodes fiables dans des modèles analytiques complexes.
Dernière mise à jour : Vendredi, le 30 Mai 2025