Platzhalter
Viele Texteingabefelder können ES2015-ähnliche Vorlagenliterale verwenden, um Teile des Textes dynamisch durch bestimmte Werte zu ersetzen. Innerhalb dieser Vorlagenliterale können vordefinierte Platzhalter verwendet werden.
zB Hello ${params.world}
Um einen Platzhalter innerhalb einer URL zu verwenden (z. B. eine Link-Href im Text-Widget), verwenden Sie $$
, um den Wert mit einem URL-Escapezeichen zu versehen (z. B. $${property.customer_name}
).
In Textfeldern, die normalerweise eine URL enthalten (z. B. HREF in der Spalte des Tabellen-Widgets), ist die Verwendung von $$
nicht erforderlich. Dort erfolgt die Flucht automatisch.
Global
Folgende globale Platzhalter stehen zur Verfügung:
${sessionId}
${params.<urlParam>}
Dieser Platzhalter liest die URL in der Adressleiste des Browsers und sucht nach URL-Parametern, z. B. #/dashboards/details?closeOnBackgroundClick=true${now}
Druckt das aktuelle Datum und die aktuelle Uhrzeit gemäß dem vom Browser definierten Gebietsschema
Benutzerdefiniertes Format gemäß http://momentjs.com/docs/#/displaying/
zB${now.format('DD.MM.YYYY HH:mm')}
${today}
Druckt den aktuellen Tag gemäß dem vom Browser definierten Gebietsschema
Benutzerdefiniertes Format gemäß http://momentjs.com/docs/#/displaying/
zB${today.format('DD.MM.YYYY')}
${filterMatrix.<column>}
/${filterMatrix.<propertyId>}
Druckt eine durch Kommas getrennte Liste der ausgewählten Werte aus der Filtermatrix.
z.B
${filterMatrix.department}
-> Entwicklung,Management
${filterMatrix[76]}
-> Genf,Zürich
Mit Leerzeichen nach dem Komma:
${filterMatrix.department.replaceAll(',', ', ')}
-> Entwicklung, Management
Aktuelles Objekt/Zeile
Wenn ein SKOOR-Objekt vorhanden ist (z. B. in einer Tabellenzeile), können folgende Platzhalter verwendet werden:
${object.id}
${object.deviceId}
${object.name}
${object.type}
${object.subType}
${object.state}
/${object.state.lightbulb(<size>)}
/${object.state.format()}
Größe in px${object.properties[<propertyId>]}
/${object.properties.<propertyKey>}
Der Eigenschafts-Enum-Index anstelle des Werts kann mitenumIndex
gedruckt werden (z. B.${object.properties.foo.enumIndex})
${object.parameters.<parameterKey>}
${object.values.<valueKey>}
Wertschlüssel finden Sie hier
Es ist auch möglich, auf Spalten einer externen Datenquelle zuzugreifen:
${columns[index]}
Index beginnend bei 0${columns.<columnName>}
/${columns ['<columnName>']}
Intervallparam
Intervallparameter können mit momentJS-Formaten formatiert werden ( http://momentjs.com/docs/#/displaying/ ).
${interval(params.<name>).begin.format(<format>)}
${interval(params.<name>).end.format(<format>)}
Beispiele:
#/dashboards/123?interval=2018-11
${interval(params.interval) → 01.11.2018 - 30.11.2018 (Ausgabe hängt vom aktuellen Gebietsschema ab)
${interval(params.interval).begin
-> 01.11.2018 (Ausgabe hängt vom aktuellen Gebietsschema ab)${interval(params.interval).end
-> 30.11.2018 (Ausgabe hängt vom aktuellen Gebietsschema ab)${interval(params.interval).begin.format('DD.MM.YYYY')
-> 01.11.2018${interval(params.interval).end.format('DD.MM.YYYY')}
-> 30.11.2018${interval(params.interval).begin.format('YYYY')}
-> 2018
#/dashboards/123?interval=2018-W5
${interval(params.interval).begin.format('DD.MM.YYYY')}
-> 29.01.2018${interval(params.interval).end.format('DD.MM.YYYY')}
-> 04.02.2018
Standardwerte
Wenn kein Platzhalterwert definiert ist (z. B. ein erforderlicher URL-Parameter fehlt), kann mithilfe des logischen Operator oder ||
ein Standardwert festgelegt werden .
Beispiele:
${param.name || 'no name given'}
-> Kein Name angegeben${interval(params.interval || '2019-01')}
-> 01.11.2018 - 30.11.2018 (Ausgabe hängt vom aktuellen Gebietsschema ab)$(time(params.time || moment())}
-> 22.01.2020 13:31
Ausdrücke
In den Diagramm- und Tabellen-Widgets können Werte mithilfe von Ausdrücken berechnet werden.
Beispiele:
${(object.values.Temperature - 25)}
${(columns["Incidents"] / columns["Transactions"]).toFixed(3)}
->.toFixed(3)
rundet das Ergebnis auf 3 Nachkommastellen
Inhaltsabhängiger Tabellenzellenstil
Mit Platzhaltern kann das Klassenattribut basierend auf dem Wert der Zelle festgelegt werden.
Dadurch wird der CSS-Klassenname abhängig vom Zellenwert entweder negativ oder positiv gesetzt. Dies kann dann im Dashboard-Formular verwendet werden, um den Wert entsprechend zu formatieren: