Der Formel-Trigger löst aus, wenn ein Formelausdruck wahr wird (true bzw. ungleich 0). Er eignet sich für Bedingungen, die ein einfacher Vergleichs-Trigger nicht ausdrücken kann, zum Beispiel Verknüpfungen mehrerer Channels.
Voraussetzungen
- Die Channels, die in der Bedingung vorkommen sollen.
- Kenntnis des Formelausdrucks. Der Ausdruck wird wie bei einer Formel aufgebaut.
So gehen Sie vor
- Öffnen Sie die Trigger-Verwaltung und fügen Sie mit + einen neuen Trigger hinzu.
- Wählen Sie den Typ Formel.
- Vergeben Sie einen Namen.
- Bauen Sie im Feld Steuernder Ausdruck den Formelausdruck mit der Werkzeugleiste auf.
- Prüfen Sie den Ausdruck mit dem Test-Button.
- Bestätigen Sie den Dialog und ordnen Sie den Trigger einer Aktion zu.
Felder
| Feld | Bedeutung | Hinweis |
|---|---|---|
| Id | Interne Nummer des Triggers | Nur zur Ansicht |
| Name | Name des Triggers in Auswahllisten | |
| Kommentar | Freie Dokumentation | Hat keine Funktion |
| Totzeit | Zeitspanne, in der der Trigger nach einer Auslösung gesperrt ist | |
| Steuernder Ausdruck | Bedingung, die ausgewertet wird | Beschreibung siehe Formelausdruck |
Wann der Trigger auslöst
- Der Ausdruck wird neu ausgewertet, wenn sich der Wert eines Channels ändert, der im Ausdruck als Auslöser wirkt. Welche Channels auslösen, legen Sie im Ausdruck fest, wie bei einer Formel.
- Die Auswertung erfolgt mit einer kurzen Verzögerung von 50 ms. Mehrere Änderungen in dieser Zeit führen zu einer Auswertung.
- Der Trigger merkt sich das letzte Ergebnis. Er löst nur aus, wenn das Ergebnis von falsch auf wahr wechselt.
- Wird der Ausdruck wieder falsch, wird der Trigger erneut scharf. Das gilt auch während der Totzeit.
- Ist das Ergebnis ungültig (
invalid) oder tritt bei der Auswertung ein Fehler auf, gilt es als falsch.
Hinweise und Grenzen
- Das Ergebnis des Ausdrucks wird nirgends gespeichert.
- Wird der Ausdruck wahr, während die Totzeit läuft, löst der Trigger nicht aus. Er löst frühestens bei der nächsten Auswertung nach Ablauf der Totzeit aus, falls der Ausdruck dann noch wahr ist. Ausgewertet wird nur bei einer Wertänderung eines Auslöser-Channels.
- Der Wert-Alter-Operator und der Systemzeit-Operator können den Trigger nicht auslösen, weil sie keine Änderung melden.

