Transmettre des filtres globaux au modèle de page de tableau de bord

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • Les filtres globaux envoyés au tableau de bord servent de filtres pour les visualisations dans le tableau de bord. Ces filtres sont fusionnés avec les filtres existants dans le tableau de bord.

    Pourquoi et quand exécuter cette tâche

    Les filtres globaux sont des filtres qui s’appliquent aux visualisations sur le tableau de bord cible. Ces filtres s’appliquent à toutes les visualisations de données pertinentes. Le format de la valeur transmise à globalFilter est la forme stringifiée de {encodedQueries : 'encoded-queries-string', filters : 'PAR-Filter'}. Les encodedQueries et les filtres sont transformés en Platform Analytics filtres en interne et fusionnés avec les filtres existants sur le tableau de bord.
    Il est possible de spécifier des encodedRequeries, des filtres ou les deux. Dans l’exemple suivant, les valeurs encodedQueries et filtres équivalentes filtrent les visualisations qui affichent les enregistrements de la table Incident [incident] en fonction d’une valeur de champ État de 1 ou 2 :
    JSON.stringify({
        encodedQueries: {incident: 'stateIN1,2'},
        parFilters: [{ order: 0, apply_to: ['incident.state'], values: ['1', '2'] }]
    })

    Configurez des liens vers des tableaux de bord sur Générateur d'IU des pages pour ouvrir des tableaux de bord déjà filtrés.

    Avant de commencer

    Rôle requis : administrateur

    Procédure

    1. Accédez à l’élément Générateur d'IU auquel vous souhaitez ajouter un filtre global.
    2. Configurez le comportement du lien hypertexte ou du bouton (ou autre chose) sur la page pour qu’il pointe vers le tableau de bord avec le sys_ID spécifié.
      Dans cet exemple, la sys_ID est 1238.

      Le paramètre showInfoMessage, s’il est vrai, affiche l’infoMessage configuré sur le tableau de bord lié lorsque des filtres sont transmis.

      api.emit('NAV_ITEM_SELECTED', {
              route: 'dashboards',
              params: {
                  sysId: '1238',
                  unifiedFilters: JSON.stringify({
                      showInfoMessage: true, // default false
                      infoMessage: 'custom info message', // if not passed and if showInfoMessage is true then the default message is displayed
                      encodedQueries: {
                          incident: 'priority=1'
                      },
                  })
              }
          });