DashboardMessageHandler
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.
| 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.
| 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. |
| 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.
| Nome | Tipo | Descrição |
|---|---|---|
| filtros | Matriz | Matriz de objetos de filtro que definem as tabelas a serem filtradas e os critérios de filtro. |
| 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. |
| 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.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| vazio |
var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
<input id="removeFilter" type="button" value="Remove filter" onclick="my_dashboardMessageHandler.removeFilter();"/>