Inhaltsverzeichnis

<texit info> author=Alexander Krause title=Clever2Link - Dataobjecs/Templates backgroundtext=Clever2Link recurse=on </texit>

Templates/Vorlagen

Die Template Funktion wird hauptsächlich durch das Ordner-Link Objekt realisiert. Der Grundlegende Ablauf sieht wie folgt aus:

  1. Erstellen einer Objektstruktur mit
    • Ordnern/Unterordnern
    • Datenpunkten
      • mit dynamischen Eigenschaften (siehe Unten)
  2. Erstellen eines Links, außerhalb der Struktur
    • target Eigenschaft ist die Objekt-Nummer vom Template-Objekt der Objektstruktur (ab Version 1.22.0 dataobjects kann auch auf Objekte mit der Eigenschaft „is“ verwiesen werden)
  3. Link auflösen

whz_template.jpg

dynamische Eigenschaften

Mitunter werden Templates auch innerhalb des gleichen Gerätes benutzt, dies bedeutet, dass die Eigenschaft address unterhalb jedes Links angepasst werden muß.

Beispiel

Aufgabe

Problem

Lösung

  1. jeder Link besitzt zu der Eigenschaft address eine 2te, welche den Raumindex angibt
    • z.B. rid für Raum-ID
  2. rid wird nun für jeden der 10 Links festgelegt, der Name spielt keine Rolle
    • 1. Link: name=raum[0],rid=0
    • 2. Link: name=raum[1],rid=1
    • 3. Link: name=raum[2],rid=2
  3. dynamische Eigenschaften in dem Template benutzen
    • name=Name, address=NVL_name_{200+$rid}
    • name=Sollwert, address=NVL_setpoint_{200+$rid}
    • name=Istwert, address=NVL_temperature_{200+$rid}
  4. beim Auflösen wird nun der Teil `{200+$rid}` durch 200, 201 usw. ersetzt

Syntax dynamischer Addressen

Beispiel

Regulärer Ausdruck Bedeutung Beispiel
[\w_] Konstante 123
abc_123
\$([\w_]+) Variable $rid
$Alter
[\+\-\.\/\%] Operator
+ Addieren
- Subtrahieren
. String-Addieren
/ Division
% Modulo
\|(%[\w]+) Formatierung |%02d

Beispiele dynamischer Eigenschaften

Auflösen