DashboardMessageHandler

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Stellt Methoden zum Definieren von benutzerdefinierter Filterlogik für interaktive Filter bereit.

    Weitere Informationen zu interaktiven Filtern finden Sie unter Berichterstellung und interaktive Filter.

    DashboardMessageHandler – DashboardMessageHandler(String id)

    Instanziieren Sie ein DashboardMessageHandler-Objekt mit einer vorgegebenen eindeutigen ID.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    ID Zeichenfolge Eine eindeutige ID für den Filter. Mit dieser ID können Berichts-Widgets nachverfolgen, welcher Filter auf die einzelnen Filter angewendet wurde. Die ID muss nicht für alle Dashboards eindeutig sein, aber jedes Dashboard darf nicht mehrere Filter mit derselben ID enthalten.
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");

    DashboardMessageHandler – publishFilter(String table, String encodedQuery)

    Jedes DashboardMessageHandler-Objekt kann einen einzelnen Filter veröffentlichen.

    Das Veröffentlichen eines neuen Filters aus demselben Objekt überschreibt den ursprünglichen Filter. Verwenden Sie mehrere DashboardMessageHandler-Objekte, um mehrere Filter zu veröffentlichen.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    table Zeichenfolge Die zu filternde Tabelle, z. B. Aufgabe.
    encodedQuery Zeichenfolge Eine codierte Abfrage, die den zu veröffentlichenden Filter angibt.
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    void
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
    <input id="onlyMine" type="button" value="Only mine"    onclick="my_dashboardMessageHandler.publishFilter('task','caller_idDYNAMIC90d1921e5f510100a9ad2572f2b477fe');"/>

    DashboardMessageHandler – veröffentlichenMessage(Array filter)

    Wenden Sie einen benutzerdefinierten interaktiven Filter auf mehrere Tabellen an.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    Filter Array Array von Filterobjekten, die die zu filternden Tabellen und die Filterkriterien definieren.
    [
      {
        "table": String,
        "filter": String 
      }
    ]
    filter.table Zeichenfolge Name der zu filternden Tabelle.
    filter.filter Zeichenfolge Codierte Abfrage, die die Filterkriterien enthält, die auf die Tabelle angewendet werden sollen.
    Tabelle : 5. Ergebnisse
    Typ Beschreibung
    Keine

    Dieses Jelly-Skript filtert die Tabellen „Incident“ und „Problem“, um Datensätze zurückzugeben, in denen die Zuweisungsgruppe „Problemlösung“ lautet.

    <?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()

    Entfernt den aktuellen Filter, der von diesem DashboardMessageHandler-Objekt veröffentlicht wird, aus allen Berichten im Dashboard.

    Tabelle : 6. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 7. Ergebnisse
    Typ Beschreibung
    void
    var my_dashboardMessageHandler = new DashboardMessageHandler("my_unique_id");
    <input id="removeFilter" type="button" value="Remove filter"    onclick="my_dashboardMessageHandler.removeFilter();"/>