NavigatePeriod()
Certaines méthodes de navigation de nœuds sont particulièrement adaptées aux hiérarchies contenant des données périodiques, surtout les hiérarchies temporelles. Le temps est structuré hiérarchiquement par nature (comme l'année, le trimestre, le mois) et les périodes sont récurrentes. L'une de ces méthodes de navigation est NavigatePeriod(). Cette méthode vous permet de définir votre propre navigation dans une hiérarchie, car vous pouvez spécifier quatre arguments : les valeurs d'entrée qui contrôlent l'axe à référencer, le nombre de niveaux à remonter dans la hiérarchie, le nombre d'étapes à déplacer latéralement et le nombre de niveaux à descendre.
En fait, la méthode NavigatePeriod() peut remplacer de nombreuses autres méthodes de navigation. Reportez-vous à la rubrique Comparaison des méthodes NavigatePeriod() et Parent().
En outre, étant donné que les nœuds d'une hiérarchie temporelle sont évidents, tous les nœuds dans lesquels il manque des données peuvent être détectés automatiquement.
La méthode NavigatePeriod() est illustrée ci-dessous.

Cet exemple utilise Q3, 2020 comme nœud de départ. Supposons que vous vouliez faire référence au 3e trimestre 2018. Ensuite, vous pouvez définir une expression NavigatePeriod() avec trois arguments :
NavigatePeriod([Axis.X],"Year",-2)
NavigatePeriod([Axis.X],1,-2)
aurait donné le même résultat que NavigatePeriod([Axis.X],"Year",-2)
. Exemple
L'histogramme montre les chiffres des ventes en janvier et février pour différents types de fruits et légumes, également répartis par catégorie. Supposons que vous souhaitiez afficher la contribution mensuelle de chaque type aux ventes, exprimée en pourcentage.

La méthode Parent() fonctionnerait bien pour renvoyer la contribution d'un type dans les catégories fruits et légumes respectivement, c'est-à-dire un niveau plus haut dans la hiérarchie, mais cela ne fonctionnerait pas si facilement en remontant de deux étapes !
La méthode NavigatePeriod() est donc ici un bon choix. Consultez l'expression sur l'axe des valeurs ci-dessous :

- Le premier argument, [Axis.X], fait référence à l'axe hiérarchique, dans ce cas-ci l'axe Catégorie. Notez que l'axe Catégorie est toujours appelé Axis.X, que l'orientation de l'histogramme soit horizontale ou verticale.
- Le deuxième argument, « Month » (Mois), navigue jusqu'au niveau Month, c'est-à-dire deux étapes plus haut dans la hiérarchie. « Month » pourrait tout aussi bien être remplacé par 2 dans l'expression.
- Le troisième argument, 0, spécifie qu'aucune navigation n'a lieu latéralement dans la hiérarchie.
- Le quatrième argument, un autre 0, conserve le niveau Month.
- Comparaison des méthodes de navigation NavigatePeriod() et Parent()
La méthode NavigatePeriod() peut remplacer de nombreuses autres méthodes de navigation de nœud.