Placeholders
De nombreux champs de saisie de texte permettent d'utiliser des littéraux de modèle (template literals) de type ES2015 pour remplacer dynamiquement certaines parties du texte par des valeurs spécifiques. Au sein de ces littéraux de modèle, il est possible d'utiliser des espaces réservés prédéfinis.
Par exemple : Hello ${params.world}
Pour utiliser un espace réservé dans une URL (par exemple, l'attribut href d'un lien dans le widget de texte), utilisez $$ pour échapper la valeur en format URL (par exemple, $${property.customer_name}).
L'échappement à l'aide de $$ n'est pas nécessaire dans les champs de texte qui contiennent généralement une URL (par exemple HREF dans une colonne du widget de tableau). Dans ce cas, l'échappement est effectué automatiquement.
Globaux
Les espaces réservés globaux suivants sont disponibles :
${sessionId}${params.<urlParam>}
Cet espace réservé lit l’URL dans la barre d’adresse du navigateur et recherche les paramètres d’URL, par exemple #/dashboards/details?closeOnBackgroundClick=true${now}
Affiche la date et l'heure actuelles selon le format personnalisé défini par les paramètres régionaux
du navigateur, conformément à http://momentjs.com/docs/#/displaying/
, par exemple${now.format('DD.MM.YYYY HH:mm')}${today}
Affiche le jour actuel selon le format personnalisé de la locale
définie par le navigateur, conformément à http://momentjs.com/docs/#/displaying/
, par exemple :${today.format('DD.MM.YYYY')}${filterMatrix.<column>}/${filterMatrix.<propertyId>}
Affiche une liste séparée par des virgules des valeurs sélectionnées dans la matrice de filtrage.
Par exemple :${filterMatrix.department}
-> Développement, Gestion${filterMatrix[76]}-> Genève, Zurich
Avec un espace après la virgule :${filterMatrix.department.replaceAll(',', ', ')}-> Développement, Gestion${params.widget12345filter}
Affiche la valeur de filtre actuelle du tableau portant l'identifiant 12345.${language},${locale},${languages}
Langue actuellement utilisée, paramètres régionaux ou langues disponibles.
Objet / ligne actuel
Si un objet SKOOR est disponible (par exemple dans une ligne de tableau), les espaces réservés suivants peuvent être utilisés :
${object.id}${object.deviceId}${object.name}${object.type}${object.subType}${object.state}/${object.state.lightbulb(<size>)}/${object.state.format()}
taille en px${object.properties[<propertyId>]}/${object.properties.<propertyKey>}
L'index de l'énumération de la propriété peut être affiché à la place de la valeur à l'aide deenumIndex(par exemple,${object.properties.foo.enumIndex})${object.parameters.<parameterKey>}${object.values.<valueKey>}
les clés de valeur sont disponibles ici
Il est également possible d’accéder aux colonnes d’une source de données externe :
${columns[index]}
index commençant à 0${columns.<columnName>}/${columns ['<columnName>']}
Paramètre d’intervalle
Les paramètres d’intervalle peuvent être formatés à l’aide des formats Moment.js (http://momentjs.com/docs/#/displaying/).
${interval(params.<name>).begin.format(<format>)}${interval(params.<name>).end.format(<format>)}
Exemples :
#/dashboards/123?interval=2018-11${interval(params.interval)} → 01/11/2018 - 30/11/2018 (le résultat dépend des paramètres régionaux actuels)
${interval(params.interval).begin}-> 01/11/2018 (le résultat dépend des paramètres régionaux actuels)${interval(params.interval).end}-> 30/11/2018 (le résultat dépend des paramètres régionaux actuels)${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 janvier 2018${interval(params.interval).end.format('DD.MM.YYYY')}-> 04/02/2018
En savoir plus sur les intervalles
${interval(params.interval).begin.weekday(0).format('')}-> Récupère le premier jour ouvré du début de l'intervalle${interval(params.interval).begin.subtract(12, 'm').format('')}-> Soustrait 12 mois du début de l'intervalle
Valeurs par défaut
Si une valeur de remplacement n’est pas définie (par exemple, si un paramètre d’URL obligatoire est manquant), il est possible de définir une valeur par défaut à l’aide de l’opérateur logique « ou » ||.
Exemples :
${param.name || 'no name given'}-> Aucun nom indiqué${interval(params.interval || '2019-01')}-> 01/11/2018 - 30/11/2018 (l'affichage dépend des paramètres régionaux actuels)${params.interval || 'BETWEEN(2021,2025)'}→ 2021 - 2025 (si les plages sont autorisées dans un sélecteur de date)$(time(params.time || moment())}-> 22/01/2020 13:31
Expressions
Dans les widgets de graphiques et de tableaux, les valeurs peuvent être calculées à l'aide d'expressions.
Exemples :
Table widget: Subtract 25 from a SKOOR object value as ${utils.formatNumber(object.values.Temperature - 25)}Chart widget: Divide two values using their column names as ${utils.formatNumber(columns["Incidents"] / columns["Transactions"], 3)}
-> arrondit le résultat à 3 chiffres après la virgule
Mise en forme des cellules de tableau en fonction du contenu
Des espaces réservés peuvent être utilisés pour définir l'attribut « class » en fonction de la valeur de la cellule.
Cela permet de définir le nom de la classe CSS sur « negative » ou « positive » en fonction de la valeur de la cellule. Cette classe peut ensuite être utilisée dans le formulaire du tableau de bord pour mettre en forme la valeur en conséquence :


