Details zu Datenpunktgruppen
Für die Datenpunktgruppen gibt es einen internen Datenpunkttyp _DpGroup:
_DpGroup
Blatt | Typ | Beschreibung |
---|---|---|
.Dps | dyn_string | Datenpunktfilter (z.B. "Messwert.C*") |
.Types | dyn_string | Datenpunkttypfilter (DPT-Name) |
.Level | int | int == 1 bei einer Hauptgruppe, sonst 0 |
Dps und Types laufen immer parallel, d.h. zu jedem Element von Dps gehört ein Element von Types und umgekehrt.
Es gibt drei Möglichkeiten:
-
Types[n]!="", Dps[n]!="" : wird nach DPE-Pattern in DP-Typ gefiltert.
-
Types[n]=="", Dps[n]!="" : werden alle DP-Typen nach DP-Pattern durchgesucht.
-
Types[n]!="", Dps[n]=="" : In dem Fall ist der Filter eine Gruppe. In diesem Fall ist eine max. 20-stufige Verschachtelung erlaubt (d.h. z.B. Gruppe1 enthält als Typ-Filter Gruppe2, Gruppe2 enthält als Typ-Filter Gruppe3,... usw., max 20-mal), sonst wird eine Fehlermeldung ausgegeben. (Damit wird auch eine Endlosschleife abgefangen, also wenn Typ-Filter für gruppe1 ist gruppe2 und Typ-Filter für gruppe2 ist gruppe1.)
Die Datenpunktnamen des Typs werden wie folgt automatisch vergeben:
_DpGroupNNNNN_Art, wobei NNNNN eine fortlaufende Nummer (wird automatisch durch das Panel erstellt) ist, Art ist entweder Public (Öffentlich) oder ein Benutzername (Privat).
Die Datenpunkte _DpGroupNNNNN_Public können von allen Benutzer verwaltet werden, die Datenpunkte _DpGroupNNNNN_Benutzername nur durch den Eigentümer (z.B. DpGroupNNNNN_root durch User root).