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
Autres ressources
Fonctions Time Intelligence (DAX)