DashboardMessageHandler

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 2 min. de leitura
  • Fornece métodos para definir a lógica de filtragem personalizada para filtros interativos.

    Para obter mais informações sobre filtros interativos, consulte relatórios e filtros interativos.

    DashboardMessageHandler - DashboardMessageHandler(cadeia de caracteres id)

    Instancia um objeto DashboardMessageHandler com um determinado ID exclusivo.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Id Cadeia de caracteres Um ID exclusivo para o filtro. Este ID permite que os widgets de relatório rastreiem qual filtro aplicou cada filtro. O ID não precisa ser exclusivo em todos os painéis, mas cada painel não pode ter vários filtros com o mesmo ID.
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");

    DashboardMessageHandler -publicFilter(cadeia de caracteres tabela, cadeia de caracteres encodedQuery)

    Cada objeto DashboardMessageHandler pode publicar um único filtro.

    A publicação de um novo filtro do mesmo objeto substitui o filtro original. Use vários objetos DashboardMessageHandler para publicar vários filtros.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    tabela Cadeia de caracteres A tabela a ser filtrada, como tarefa.
    encodedQuery Cadeia de caracteres Uma consulta codificada que especifica o filtro a ser publicado.
    Tabela 3. Retorna
    Tipo Descrição
    vazio
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
    <input id="onlyMine" type="button" value="Only mine"    onclick="my_dashboardMessageHandler.publishFilter('task','caller_idDYNAMIC90d1921e5f510100a9ad2572f2b477fe');"/>

    DashboardMessageHandler - publicarMessage(filtros de matriz)

    Aplique um filtro interativo personalizado a várias tabelas.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    filtros Matriz Matriz de objetos de filtro que definem as tabelas a serem filtradas e os critérios de filtro.
    [
      {
        "table": String,
        "filter": String 
      }
    ]
    filtros.tabela Cadeia de caracteres Nome da tabela a ser filtrada.
    filtros.filtro Cadeia de caracteres Consulta codificada que contém os critérios de filtro a serem aplicados à tabela.
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum(a)

    Este script Jelly filtra as tabelas de Incidentes e Problemas para retornar registros em que o grupo de atribuição é Resolução de problemas.

    <?xml version="1.0" encoding="utf-8" ?>
    <j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
    <script>
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
    
    function publishMultipleFilter() {
       // Multiple filters can be passed as an array
       var finalFilter = [{"table":"incident","filter":"assignment_group=6fcd3b573b331300ad3cc9bb34efc447"}, {"table":"problem","filter":"assignment_group=6fcd3b573b331300ad3cc9bb34efc447"}];
    
       // Call setDefaultValue first so the filter works with lazy loading
       SNC.canvas.interactiveFilters.setDefaultValue({id: my_dashboardMessageHandler.my_unique_id, filters: finalFilter}, false);
    
       // Then call publishMessage to publish filters
       my_dashboardMessageHandler.publishMessage(finalFilter);
    }
    
    function clearFilter() {
       SNC.canvas.interactiveFilters.removeDefaultValue(my_dashboardMessageHandler.my_unique_id, false);
       my_dashboardMessageHandler.removeFilter();
    }
    </script>
    
    Example filter on the Incident and Problem tables where assignment group is Problem solving <br/>
    <input id="allTasks" type="button" value="All" onclick="clearFilter();" />
    <input id="onlyMine" type="button" value="Assignment group is [Problem solving]" onclick="publishMultipleFilter();" />
    
    </j:jelly>

    DashboardMessageHandler - removeFilter()

    Remove o filtro atual publicado por este objeto DashboardMessageHandler de todos os relatórios no painel.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 7. Retorna
    Tipo Descrição
    vazio
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
    <input id="removeFilter" type="button" value="Remove filter"    onclick="my_dashboardMessageHandler.removeFilter();"/>