Wir haben bei uns im Betrieb mittlerweile sehr viele Wizards im Einsatz und viel Erfahrung mit der Zenon-API (Object Model). Leider stoßen wir immer wieder an Grenzen, da wir die Dokumentation nicht eindeutig finden.

Wir pflegen bei uns eine Enge Verknüpfung von Visualisierung und PLC-Programm. So gibt es z.B. auf der PLC eine Struktur ST_HMI_BUTTON, in unterschiedlichen Ausprägungen.

z.B. ST_HMI_BUTTON_03:
.xValue : BOOL (*HMI => PLC*)
.xEnable : BOOL (*PLC => HMI, Button über Interlocking gesperrt*)
.xAvailable : BOOL (*PLC => HMI, Button ausgegraut, z.B. Optionsbaugruppe*)
.xSignalization : BOOL (*PLC => HMI, Button eingefärbt*)

Es gibt zu dieser Struktur ein passendes Symbol, welches wir als "Linked Symbol" einfügen und mit der Linking Rule beschalten, sowie gewisse Parameter ($-Eigenschaften), z.B. Interlocking oder Beschriftung, beschalten.

Problemstellung:
Wir möchten einen Wizard erstellen, welcher verschiedene HMI-Elemente automatisiert anpasst bzw. erstellt, damit jeder Button sofort nach Beschaltung funktionsfähig ist.
Hierzu gehört, dass jede ".xAvailable" Variable den gleichen Farbumschlag (Limit-Colours) erhält. Außerdem soll zu jeder vorhandenen ".XEnable" Variablen eine Interlocking angelegt werden.

Ich schaffe es bisher ein Interlocking, aus dem VSTA (C#) heraus anzulegen und eine Variable an das Interlocking zu hängen. Allerdings hört es damit dann auf.
Ich benötige Beispielcode.
Was ist noch anzulegen, welche "DynProperties" müssen erzeugt, bzw. beschaltet werden? Die bedingung ist immer gleich. Wie bekomme ich die Formel gesetzt?
.xEnable == TRUE, dann FREIGABE
.xEnable == FALSE, dann SPERRE

Für Ihre Hilfe wäre ich sehr dankbar.