« Zurück zu Produkt

Dokumentation

IPS_SetEventScheduleGroup

Benötigt: Symcon >= 3.2

 bool IPS_SetEventScheduleGroup (int $EreignisID, int $GruppenID, int $Tage) 

Parameterliste

EreignisID

ID des zu verändernden Ereignisses

GruppenID

Eindeutige ID für diese Gruppe. Die Sortierung wird anhand der ID vorgenommen. IDs müssen nur für dieses Ereignis eindeutig sein.

Tage

Addition der Tageswerte, die zur Gruppe gehören. Die Tageswerte können der Tabelle bei IPS_SetEventCyclic entnommen werden.

Rückgabewert

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

Beschreibung

Die Funktion setzt die Bitmaske Tage für die GruppenID eines Wochenplan Ereignisses mit der ID EreignisID. Es können in einer Gruppe beliebige Tage kombiniert werden. Dabei ist zu beachten, dass ein bestimmter Tag nur zu einer Gruppe zugehörig sein kann. In einer Gruppe können auch alle Tage (Wert = 127, EVENT_DAY_ALL) oder nur ein einzelner Tag definiert sein (z.B. 1, EVENT_DAY_MONDAY, für Montag). Wenn für ein Ereignis nicht alle Tage in Gruppen aufgeteilt wurden, so können für diese Tage keine Schaltpunkte definiert werden und der letzte ausgeführte Schaltpunkt bleibt bestehen.

Tag Wert Konstante
Montag 1 EVENT_DAY_MONDAY
Dienstag 2 EVENT_DAY_TUESDAY
Mittwoch 4 EVENT_DAY_WEDNESDAY
Donnerstag 8 EVENT_DAY_THURSDAY
Freitag 16 EVENT_DAY_FRIDAY
Samstag 32 EVENT_DAY_SATURDAY
Sonntag 64 EVENT_DAY_SUNDAY
Alle Tage 127 EVENT_DAY_ALL

Wenn der Wert von Tage Null (0) ist, wird die Gruppe mit der angegebenen GruppenID gelöscht. Dabei werden auch alle der Gruppe zugehörigen Schaltpunkte entfernt.

Beispiel

//Wochenplan Ereignis erstellen
$EreignisID = IPS_CreateEvent(EVENTTYPE_SCHEDULE);

//Anlegen von Gruppen
IPS_SetEventScheduleGroup($EreignisID, 0, EVENT_DAY_MONDAY + EVENT_DAY_TUESDAY + EVENT_DAY_WEDNESDAY + EVENT_DAY_THURSDAY + EVENT_DAY_FRIDAY); //Mo - Fr (31)
IPS_SetEventScheduleGroup($EreignisID, 1, EVENT_DAY_SATURDAY + EVENT_DAY_SUNDAY); //Sa + So (96)

//Gruppe mit ID 1 wieder löschen
IPS_SetEventScheduleGroup($EreignisID, 1, 0);
Haben Sie noch Fragen?