Partager via


Fonction PARALLELPERIOD

Retourne une table contenant une colonne de dates qui représente une période parallèle aux dates de la colonne dates spécifiée, dans le contexte actuel. Les dates sont avancées ou reculées d'un certain nombre d'intervalles.

Syntaxe

PARALLELPERIOD(<dates>,<number_of_intervals>,<interval>)

Paramètres

Terme

Définition

dates

Colonne qui contient des dates.

number_of_intervals

Entier qui spécifie le nombre d'intervalles à ajouter aux dates ou à en soustraire.

interval

Intervalle selon lequel décaler les dates. La valeur de l'intervalle peut être l'une des suivantes : year, quarter, month.

Valeur de retour

Table contenant une seule colonne de valeurs de date.

Notes

Cette fonction prend le jeu de dates actuel dans la colonne spécifiée par dates, décale la première date et la dernière date du nombre d'intervalles spécifié, puis retourne toutes les dates contiguës entre les deux dates décalées. Si l'intervalle est une plage partielle de mois, trimestre ou année, tous les mois partiels du résultat sont alors également remplis pour combler l'intervalle.

[!REMARQUE]

Pour mieux comprendre comment le contexte affecte les résultats des formules, consultez Contexte dans les formules DAX.

L'argument dates peut être l'un des éléments suivants :

  • référence à une colonne date/heure ;

  • expression de table qui retourne une seule colonne de valeurs date/heure ;

  • expression booléenne qui définit une table à une seule colonne de valeurs date/heure.

[!REMARQUE]

Les contraintes sur les expressions booléennes sont décrites dans la rubrique Fonction CALCULATE.

Si le nombre spécifié pour number_of_intervals est positif, les dates de dates sont avancées dans le temps ; si le nombre est négatif, les dates de dates sont reculées dans le temps.

Le paramètre interval est une énumération, pas un ensemble de chaînes ; par conséquent, les valeurs ne doivent pas figurer entre guillemets. De même, les valeurs year, quarter et month doivent être entièrement épelées lors de leur utilisation.

La table obtenue ne comprend que les dates qui figurent dans les valeurs de la colonne de table sous-jacente.

La fonction PARALLELPERIOD est semblable à la fonction DATEADD mais PARALLELPERIOD retourne toujours des périodes complètes au niveau de granularité donné et non des périodes partielles comme DATEADD. Par exemple, si vous avez une sélection de dates que démarre au 10 juin et se termine au 21 juin de la même année, et que vous souhaitez avancer cette sélection d'un mois, la fonction PARALLELPERIOD retourne alors toutes les dates du mois suivant (du 1er juillet au 31 juillet). Mais si DATEADD est utilisé, le résultat inclut uniquement les dates entre le 10 juillet et le 21 juillet.

Si les dates du contexte actuel ne forment pas d'intervalle contigu, la fonction retourne une erreur.

Cette fonction DAX n'est pas prise en charge en mode DirectQuery. Pour plus d'informations sur les limitations dans les modèles DirectQuery, consultez https://go.microsoft.com/fwlink/?LinkId=219172.

Exemple

L'exemple de formule suivant crée une mesure qui calcule les ventes de l'année précédente (Previous Year Sales) pour les ventes sur Internet (Internet Sales).

Pour voir comment cela fonctionne, créez un tableau croisé dynamique et ajoutez les champs CalendarYear et CalendarQuarter à la zone Étiquettes de ligne du tableau croisé dynamique. Ajoutez ensuite une mesure nommée Previous Year Sales à la zone Valeurs du tableau croisé dynamique en utilisant la formule définie dans la section de code.

[!REMARQUE]

L'exemple ci-dessus utilise la table DateTime de l'exemple de classeur DAX. Pour plus d'informations sur les exemples, consultez Obtenir des exemples de données.

=CALCULATE(SUM(InternetSales_USD[SalesAmount_USD]), PARALLELPERIOD(DateTime[DateKey],-1,year))

Voir aussi

Référence

Fonction DATEADD

Autres ressources

Fonctions Time Intelligence (DAX)

Fonctions de date et d'heure (DAX)

Obtenir des exemples de données