« Zurück zu Produkt

Dokumentation

IPS_SetEventConditionTimeRule

Benötigt: Symcon >= 4.4

 bool IPS_SetEventConditionTimeRule (int $EreignisID, int $BedingungsID, int $RegelID, int $Vergleich, int $Stunde, int $Minute, int $Sekunde) 

Parameterliste

EreignisID

ID des zu verändernden Ereignisses

BedingungsID

ID der Bedingung, welche die Regel beinhaltet

RegelID

Eindeutige ID für diese Regel. IDs müssen nur für diese Bedingung eindeutig sein.

Vergleich
Wert Konstante Beschreibung
0 EVENTCONDITIONCOMPARISON_EQUAL ==
1 EVENTCONDITIONCOMPARISON_NOTEQUAL !=
2 EVENTCONDITIONCOMPARISON_GREATER >
3 EVENTCONDITIONCOMPARISON_GREATEROREQUAL >=
4 EVENTCONDITIONCOMPARISON_SMALLER <
5 EVENTCONDITIONCOMPARISON_SMALLEROREQUAL <=
Stunde

Stundenwert (0..23) mit dem die aktuelle Zeit verglichen wird

Minute

Minutenwert (0..59) mit dem die aktuelle Zeit verglichen wird

Sekunde

Sekundenwert (0..59) mit dem die aktuelle Zeit verglichen wird

Rückgabewert

Konnte die Funktion erfolgreich ausgeführt werden, liefert sie als Ergebnis TRUE, andernfalls FALSE.

Beschreibung

Diese Funktion modifiziert die Regel mit der ID RegelID der Bedingung mit der ID BedingungsID des Ereignisses mit der ID EreignisID. Die Regel vergleicht die aktuelle Uhrzeit mit Stunde, Minute und Sekunde, entsprechend der Vergleichsoperation Vergleich. Falls keine Regel mit der ID RegelID existiert, wird eine erstellt.

Liegt einer der Werte außerhalb des gültigen Bereichs (Stunde < 0 oder > 23, Minute < 0 oder > 59, Sekunde < 0 oder > 59), wird die Regel mit der ID RegelID gelöscht. Existiert keine Regel mit dieser ID, wird ein Fehler ausgegeben.

Warning

Welche RegelID welche Regel beinhaltet kann via IPS_GetEvent nachgesehen werden.

Beispiel

// Erstelle eine Wurzelbedingung
IPS_SetEventCondition(12345, 0, 0, EVENT_CONDITION_OPERATION_AND);

// Fügt hinzu/Modifiziert die Regel mit der ID 2 beim Ereignis mit der ObjektID 12345
// Es muss genau 22:30 sein damit diese Regel erfüllt ist.
IPS_SetEventConditionTimeRule(12345, 0, 2, EVENTCONDITIONCOMPARISON_EQUAL, 22, 30, 0);

// Lösche die Regel mit der ID 1
IPS_SetEventConditionTimeRule(12345, 0, 1, 0, -1, 0, 0);
Haben Sie noch Fragen?