Dashboard-Variablen für dynamische Filterung erstellen
Dropdown-Auswahl für Standort und Maschine bauen
Variablen verketten, sodass Maschinenoptionen vom gewählten Standort abhängen
Variablen in Infinity-Queries verwenden
Versteckte Hilfsvariablen erstellen
Voraussetzungen
Tutorial 4.1 und 4.2 abgeschlossen
Verständnis von Infinity-Queries und JSONata
Dashboard-Variablen erzeugen interaktive Dropdowns, mit denen Nutzende Daten filtern können, ohne Queries zu bearbeiten. Sie sind unverzichtbar für:
Standortauswahl - Bestimmen, welcher Standort angezeigt wird
Maschinenauswahl - Auf bestimmte Maschinen filtern
Zeitraumauswahl - Individuelle Zeiträume definieren
Dashboards für mehrere Nutzende - Ein Dashboard deckt verschiedene Anforderungen ab
Typ
Beschreibung
Anwendungsfall
Standort-, Maschinen-, Produkt-Dropdowns
Schichtnamen, Statusoptionen
Vom Nutzer eingegebener Wert
Einzelner versteckter Wert
Erste Variable erstellen
Erstelle ein Standort-Dropdown, das die ENLYZE API abfragt.
Schritt 1: Variablen-Einstellungen öffnen
Klicke auf das Zahnrad-Symbol (Dashboard-Einstellungen)
Wähle Variables im linken Menü
[SCREENSHOT: Dashboard settings with Variables menu]
Schritt 2: Grundeinstellungen konfigurieren
(leer lassen, Variable anzeigen)
Wichtig: Variablennamen sollten kleingeschrieben und ohne Leerzeichen sein. Verwende bei Bedarf Unterstriche (z. B. machine_uuid).
[SCREENSHOT: Variable basic settings]
Schritt 3: Query konfigurieren
Unter Query Options:
Setze Data source auf Infinity
Setze Query type auf Infinity
Der Query-Editor erscheint. Konfiguriere ihn wie eine Panel-Query:
[SCREENSHOT: Variable query configuration]
Schritt 4: Wertezuordnung konfigurieren
Scrolle zu den Value-Optionen:
Einstellung
Wert
Beschreibung
Das Dropdown muss wissen, welche Felder angezeigt und gespeichert werden:
Display-Wert: Was Nutzende sehen (Standortname)
Stored-Wert: Was in Queries verwendet wird (Standort-UUID)
Bei Infinity-Variablen wird die erste Spalte zum Display-Wert. Falls eine zweite Spalte vorhanden ist, wird sie zum gespeicherten Wert.
Um dies zu steuern, füge Spalten zu deiner Query hinzu:
Scrolle zu Columns in der Query
[SCREENSHOT: Column configuration for variable]
Schritt 5: Vorschau und Speichern
Klicke auf Run query, um Werte anzuzeigen
Überprüfe, ob das Dropdown Standortnamen anzeigt
Klicke auf Apply, um zu speichern
Das Standort-Dropdown sollte nun oben im Dashboard erscheinen.
[SCREENSHOT: Site dropdown in dashboard]
Variablen in Queries verwenden
Verwende die Variable ${site} in Panel-Queries.
Maschinen nach Standort filtern
Erstelle ein Panel, das Maschinen des ausgewählten Standorts anzeigt:
URL:
Root Selector (JSONata-Filter):
Dieser Filter beschränkt das Maschinen-Array auf Einträge, bei denen der Standort mit der ausgewählten Variable übereinstimmt.
[SCREENSHOT: Panel showing filtered machines]
Variablen-Syntax
Syntax
Beschreibung
Beispiel
Verkettete Variablen
Erstelle ein Maschinen-Dropdown, das sich aktualisiert, wenn der Standort geändert wird.
Schritt 1: Maschinen-Variable erstellen
Neue Variable hinzufügen:
Schritt 2: Query mit Filter konfigurieren
Mit JSONata die Maschinen nach dem ausgewählten Standort filtern:
$filter($.data, function($v){ $v.site = "${site}" })
Spalten hinzufügen:
Schritt 3: Aktualisierung konfigurieren
Wichtig: Das Aktualisierungsverhalten so einstellen, dass die Maschinenoptionen sich bei Standortwechsel aktualisieren:
[SCREENSHOT: Chained variable configuration]
Schritt 4: Verkettung testen
Ändere das Standort-Dropdown
Überprüfe, ob das Maschinen-Dropdown nur Maschinen dieses Standorts anzeigt
Multi-Select-Variablen
Nutzenden ermöglichen, mehrere Werte auszuwählen.
Multi-Select aktivieren
In den Variablen-Einstellungen:
[SCREENSHOT: Multi-select settings]
Multi-Select in Queries verwenden
Multi-Select-Variablen liefern mehrere Werte. Diese entsprechend behandeln:
Für URL-Parameter (kommagetrennt):
Für JSONata-Filter:
Für Regex-Abgleich:
Versteckte Variablen
Manche Variablen sollen Nutzenden nicht angezeigt werden, sind aber für Queries nützlich.
Anwendungsfälle
Berechnete Werte speichern
Zwischenergebnisse vorhalten
Versteckte Zeitvariable erstellen
Erstelle eine Variable, die Grafanas Zeit ins ISO-Format konvertiert:
Variable (vollständig ausgeblendet)
Query-Konfiguration:
$fromMillis($number($.time))
Dies konvertiert die Epoch-Millisekunden von ${__from} ins ISO-Format.
[SCREENSHOT: Hidden variable configuration]
Optionen zum Ausblenden
Vollständiges Beispiel: Standort > Maschine Dashboard
Baue ein Dashboard mit verketteten Standort- und Maschinen-Dropdowns.
Zu erstellende Variablen
machine - Maschinen-Dropdown (nach Standort gefiltert)
Variable 1: Site
Variable 2: Machine
$filter($.data, function($v){ $v.site = "${site}" })
Verwendung in Panels
Aufträge mit OEE:
Dies liefert Aufträge der ausgewählten Maschine mit OEE-Werten (Productivity, Availability, Performance, Quality) pro Auftrag.
Variablen (Sensordaten) abfragen:
Anzeigeoptionen für Variablen
In den Display-Einstellungen der Variable:
Display
Beschreibung
Geeignet für
Benutzerdefinierter "All"-Wert
Wenn "Include All" aktiviert ist, lässt sich der Wert für "All" anpassen:
Fehlerbehebung bei Variablen
Variable zeigt keine Werte
Ursachen:
Query liefert keine Daten
Columns nicht konfiguriert
Lösung: Dieselbe Query zuerst in einem Panel testen.
Verkettete Variable aktualisiert sich nicht
Ursachen:
Refresh nicht korrekt eingestellt
Tippfehler im Variablennamen im Filter
Lösung: Refresh auf "On dashboard load" setzen und den Variablennamen im JSONata-Ausdruck überprüfen.
Ursache: Kein passender Format-Modifier verwendet
Lösung: ${variable:csv} für kommagetrennte oder ${variable:pipe} für Pipe-getrennte Werte verwenden.
Namenskonventionen
Kleinbuchstaben verwenden: site, nicht Site
Unterstriche verwenden: machine_uuid, nicht machineUuid
Aussagekräftige Namen: production_line, nicht pl
Daten in Variablen filtern, nicht nur in Panels
"On dashboard load" als Refresh für abhängige Variablen verwenden
Unnötige API-Aufrufe durch geeignetes Caching vermeiden
Nutzungserlebnis
Aussagekräftige Labels verwenden
Sinnvolle Standardwerte setzen
Technische Variablen vor Nutzenden verbergen
Variablen in logischer Reihenfolge anordnen (Standort > Maschine > Variable)
Zusammenfassung
Du hast gelernt, dynamische Dashboards mit Variablen zu erstellen:
Query-Variablen aus der ENLYZE API befüllen
Variablen für abhängige Dropdowns verketten
Variablen in Infinity-Queries mit ${variable}-Syntax verwenden
Multi-Select- und versteckte Hilfsvariablen erstellen
Nächste Schritte
Weiter mit:
Variablen-Query-Einstellungen
Häufige Root Selectors
$filter($.data, function($v){ $v.site = "${site}" })
$filter($.data, function($v){ $v.machine = "${machine}" })
Variablen-Modifier
Modifier
Ausgabe
Anwendungsfall
Refresh-Optionen
Beim Öffnen des Dashboards
Bei Änderung der Zeitauswahl
Zuletzt aktualisiert