RÉSOLU Appliquer un filtre uniquement sur 1 flux d'un dashboard
-
Bonjour,
J'ai un tableau de bord avec plusieurs graphiques dont 1 pour lequel je souhaiterais appliquer un filtrage particulier sur les années :

Je souhaiterais que mon indicateur du haut et les deux flux du bas indique les valeurs correspondant à l'année sélectionnée
Dans le même temps, le flux par mois devrait indiquer l'année sélectionnée ainsi que les x précédentes (x étant une variable laissée à la main de la personne consultant le Dashboard).J'ai actuellement explorer 2 pistes :
- La création de mesures n-1, n-2, ... Mais je ne suis pas arrivé à un résultat satisfaisant car cela ne permet pas à l'utilisateur de choisir la profondeur (et n-1, n-2 ne sont pas très "user friendly")
- L'utilisation de la fonction de filtrage filterOnChart mais je ne suis pas parvenu à affecter plusieurs années au FilterOperand
Avez-vous d'autres pistes ou un élément à coté duquel je serais passé ?
En vous souhaitant une belle journée
-
Je m'auto-répond car à force d'essayer des choses cela fini par marcher : dans le FilterOperand, il suffit de passer la liste des années.
Par exemple (sans la variabilisation) :
ddCtrl.filterOnChart('b1c50bc6', new FilterOperand('Date', [2025,2026], 'Date', 'Année'));Bonne journée
-
Je m'auto-répond car à force d'essayer des choses cela fini par marcher : dans le FilterOperand, il suffit de passer la liste des années.
Par exemple (sans la variabilisation) :
ddCtrl.filterOnChart('b1c50bc6', new FilterOperand('Date', [2025,2026], 'Date', 'Année'));Bonne journée
-
Bonjour @jme, c'est intéressant, du coup il va falloir en 2027 que [2025,2026] soit changé en [2026, 2027] manuellement ? Comment la variabilisation va être géré ?
-
Bonjour @géraldg,
Non, pas de mise à jour manuelle.
Je gère la mise à jour par une fonction javascript :function UpdateFluxAnneeAnt (nomFlux){ const nbAnneeAnt = ddCtrl.getDDVar('NbAnnees'); // récupération du nb d'années antérieures (en variable) const valeur = ddCtrl.getDimensionFilter("Date")[0]; // récupération de l'année sélectionnée (le filtre exclus la sélection multiple) var list = [valeur]; //initialisation du tableau avec l'année filtrée for(var i = 1;i<=nbAnneeAnt;i++){ list.push(valeur-i); // ajout des années antérieures } ddCtrl.filterOnChart(nomFlux, new FilterOperand('Date', list, 'Date', 'Année')); };J'appelle cette fonction avant chaque chargement du flux :
ddCtrl.addChartBeforeRefreshListener(function(doc, dm, dmsel, chart, errorMsg) { if(chart.title == "CA par mois"){ UpdateFluxAnneeAnt ('b1c50bc6'); } });En espérant que cela vous serve.
Cdlt,