Beispiele für Initialisierungen
Wochenzeitplan/week für FB_BA_ScheduleBinary
Von Montag bis Sonntag wird eine Funktion um 6:00 Uhr eingeschaltet. Täglich um 18:00 Uhr wird sie ausgeschaltet. Falls diese Funktion nach 18 Uhr extern eingeschaltet wurde, so wird um 0:00 Uhr erneut ausgeschaltet.
// Monday
Schedule.aWeek[E_BA_Weekday.eMonday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nSecond := 0;
// Tuesday
Schedule.aWeek[E_BA_Weekday.eTuesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nSecond := 0;
// Wednesday
Schedule.aWeek[E_BA_Weekday.eWednesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nSecond := 0;
// Thursday
Schedule.aWeek[E_BA_Weekday.eThursday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nSecond := 0;
// Friday
Schedule.aWeek[E_BA_Weekday.eFriday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nSecond := 0;
// Saturday
Schedule.aWeek[E_BA_Weekday.eSaturday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nSecond := 0;
// Sunday
Schedule.aWeek[E_BA_Weekday.eSunday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nSecond := 0;
Wochenzeitplan für FB_BA_ScheduleMultistate
Von Montag bis Sonntag wird um 23:00 Uhr und 0:00 Uhr der Wert 2 vorgegeben, um 5:00 Uhr jedoch der Wert 1.
// Monday
Schedule.aWeek[E_BA_Weekday.eMonday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nSecond := 0;
// Tuesday
Schedule.aWeek[E_BA_Weekday.eTuesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nSecond := 0;
// Wednesday
Schedule.aWeek[E_BA_Weekday.eWednesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nSecond := 0;
// Thursday
Schedule.aWeek[E_BA_Weekday.eThursday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nSecond := 0;
// Friday
Schedule.aWeek[E_BA_Weekday.eFriday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nSecond := 0;
// Saturday
Schedule.aWeek[E_BA_Weekday.eSaturday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSaturday,3].stTime.nSecond := 0;
// Sunday
Schedule.aWeek[E_BA_Weekday.eSunday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,1].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,2].uValue.udiVal := 2;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eSunday,3].uValue.udiVal := 1;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nHour := 5;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eSunday,3].stTime.nSecond := 0;
Kombination der Ausnahme im Datumsbereich mit einem Wochenzeitplan für FB_BA_ScheduleAnalog
Dieses Beispiel stellt eine Kombination eines Datumsbereiches in Verbindung mit einer Wochenzeitschaltuhr dar.
Im Datumsbereich vom 1. März 2026 bis zum 31.September 2026 wird an jedem Tag um 0:00 Uhr der analoge Wert 14,0 vorgegeben.
Außerhalb dieses Datumsbereiches ist der Wochenzeitschaltplan aktiv. Von Montag bis Freitag wird um 6:00 Uhr der Wert 22,0, um 18:00 Uhr der Wert 16,0 und um 0:00 Uhr der Wert 14,5 ausgegeben.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay01;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 0;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.rVal := 14.0;
// Monday
Schedule.aWeek[E_BA_Weekday.eMonday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,1].uValue.rVal := 22.0;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,2].uValue.rVal := 16.0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,3].uValue.rVal := 14.5;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nSecond := 0;
// Tuesday
Schedule.aWeek[E_BA_Weekday.eTuesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].uValue.rVal := 22.0;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].uValue.rVal := 16.0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].uValue.rVal := 14.5;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eTuesday,3].stTime.nSecond := 0;
// Wednesday
Schedule.aWeek[E_BA_Weekday.eWednesday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].uValue.rVal := 22.0;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].uValue.rVal := 16.0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].uValue.rVal := 14.5;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eWednesday,3].stTime.nSecond := 0;
// Thursday
Schedule.aWeek[E_BA_Weekday.eThursday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,1].uValue.rVal := 22.0;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,2].uValue.rVal := 16.0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eThursday,3].uValue.rVal := 14.5;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eThursday,3].stTime.nSecond := 0;
// Friday
Schedule.aWeek[E_BA_Weekday.eFriday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,1].uValue.rVal := 22.0;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nHour := 6;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,1].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,2].uValue.rVal := 16.0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nHour := 18;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eFriday,3].uValue.rVal := 14.5;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eFriday,3].stTime.nSecond := 0;
Ausnahme/Exception Datum/Date
Die folgenden Beispiele zeigen mögliche Varianten für die Ausnahme Datum von einem Zeitschaltplan mit einem binären Zeitschalteintrag auf.
Variante 01
Die Ausnahme Datum ist immer aktiv. Es wird täglich um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 02
Für das gesamte Jahr 2025 wird täglich um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 125;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 03
Im Februar wird an jedem Tag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 04
An jedem 29. eines Monats um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 05
Jeden Montag wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 06
Am 29. März wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 07
Im Jahr 2025 wird immer am 29. eines Monats um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 125;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 08
Der 29. eines Monats muss auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 09
Im April 2025 wird an jedem Tag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 125;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eApril;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 10
Im April wird an jedem Montag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eApril;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 11
Im Jahr 2030 wird an jedem Montag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 130;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 12
Am 29. Mai 2030 wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 130;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eMay;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 13
Im Jahr 2030 wird im Mai an jedem Montag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 130;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eMay;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 14
Im Jahr 2030 muss der 29. eines Monats auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 130;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 15
Der 29. April muss auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 255;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eApril;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 16
Der 28. Februar 2025 müsste auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird. Innerhalb des Bausteins wird überprüft, ob die Einschaltbedingung korrekt ist. Da der 28. Februar 2025 auf einem Freitag liegt, wird der Wochentag eDayOfWeek auf Freitag korrigiert, so dass am Freitag, den 28. Februar 2025 um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eDate;
Schedule.aException[1].uDate.stDate.nYear := 125;
Schedule.aException[1].uDate.stDate.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDate.nDay := E_BA_Day.eDay28;
Schedule.aException[1].uDate.stDate.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Ausnahme/Exception Woche und Tag/WeekNDay
Die folgenden Beispiele zeigen mögliche Varianten für die Ausnahme Woche und Ausnahme Tag mit einem binären Zeitschalteintrag auf.
Variante 01
Die Ausnahme WeekNDay ist immer aktiv. Es wird an jedem Tag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 02
Im August wird an jedem Tag um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.eAugust;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 03
An den Tagen 8-14 eines jeden Monats wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.eWeek2;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 04
An jedem Montag wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 05
An den Tagen 29-31 im März wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.eWeek5;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.Unspecified;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 06
An jedem Montag im März wird um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 07
Einer der Tage 29-31 eines Monats muss auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.eWeek5;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Variante 08
Einer der Tage 1-7 im März muss auf einem Montag liegen, damit um 6:00 Uhr ein- und um 18:00 Uhr ausgeschaltet wird.
Schedule.aException[1].eType := E_BA_DateValChoice.eWeekNDay;
Schedule.aException[1].uDate.stWeekNDay.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stWeekNDay.eWeekOfMonth := E_BA_Week.eWeek1;
Schedule.aException[1].uDate.stWeekNDay.eWeekday := E_BA_Weekday.eMonday;
Schedule.aException[1].aEntry[1].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[1].stTime.nHour := 6;
Schedule.aException[1].aEntry[1].stTime.nMinute := 0;
Schedule.aException[1].aEntry[1].stTime.nSecond := 0;
Schedule.aException[1].aEntry[1].uValue.bVal := TRUE;
Schedule.aException[1].aEntry[2].eState := E_BA_SchedEntryState.eValue;
Schedule.aException[1].aEntry[2].stTime.nHour := 18;
Schedule.aException[1].aEntry[2].stTime.nMinute := 0;
Schedule.aException[1].aEntry[2].stTime.nSecond := 0;
Schedule.aException[1].aEntry[2].uValue.bVal := FALSE;
Autokorrektur Initialisierungen
Bei fehlerhaften Initialisierungen findet innerhalb des Funktionsbausteins eine Autokorrektur statt. Die folgenden Beispiele stellen mögliche Initialisierungen zur Autokorrektur dar.
DateRange
Beispiel 01
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 255;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 255;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.Unspecified;
Automatische Korrektur, weil kein spezifischer Zeitraum angegeben ist.
Schedule.aException[1].eType := E_BA_DateValChoice.Invalid;
Beispiel 02
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 127;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eMonday;
Automatische Korrektur, die Datumsbereiche werden getauscht und die Wochentage korrigiert.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay30;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eWednesday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 127;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eWednesday;
Beispiel 03
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 125;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eTuesday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.Unspecified;
Automatische Korrektur. die Wochentage werden bei Falschangabe angepasst.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 125;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eTuesday;
Beispiel 04
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 222;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := 123;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := 126;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := 222;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 220;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := 121;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := 145;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := 127;
Automatische Korrektur, bei Jahr, Monat und Tag werden die höchsten, gültigen Einträge genommen - 31.12.2100. Der Wochentag wird dem resultierenden Datum angepasst.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 200;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eDecember;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eFriday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 200;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eDecember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eFriday;
Beispiel 05
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 124;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay30;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.Unspecified;
Automatische Korrektur, die Monatstage werden angepasst. Der Wochentag wird dem resultierenden Datum angepasst.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 124;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eThursday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eFebruary;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay28;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eSaturday;
Beispiel 06
Schedule.aWeek[E_BA_Weekday.eMonday,1].eState := E_BA_SchedEntryState.Invalid;
Schedule.aWeek[E_BA_Weekday.eMonday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHour := 30;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nMinute := 120;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nSecond := 124;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHundredths := 124;
Schedule.aWeek[E_BA_Weekday.eMonday,2].eState := E_BA_SchedEntryState.eUndefined;
Schedule.aWeek[E_BA_Weekday.eMonday,2].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHour := 11;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nMinute := 12;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nSecond := 13;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHundredths := 14;
Schedule.aWeek[E_BA_Weekday.eMonday,3].eState := E_BA_SchedEntryState.eNull;
Schedule.aWeek[E_BA_Weekday.eMonday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHour := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nMinute := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nSecond := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHundredths := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,4].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,4].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nHour := 99;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nMinute := 111;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nSecond := 222;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nHundredths := 100;
Automatische Korrektur, Sortierung beim Wochenzeitplan nach dargestellter Reihenfolge in den Einträgen: E_BA_SchedEntryState.eValue > E_BA_SchedEntryState.eNull > E_BA_SchedEntryState.eUndefined. Aus E_BA_SchedEntryState.Invalid wird E_BA_SchedEntryState.eUndefined.
Die Uhrzeiten werden angepasst.
Schedule.aWeek[E_BA_Weekday.eMonday,1].eState := E_BA_SchedEntryState.eValue;
Schedule.aWeek[E_BA_Weekday.eMonday,1].uValue.bVal := TRUE;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHour := 23;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nMinute := 59;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nSecond := 59;
Schedule.aWeek[E_BA_Weekday.eMonday,1].stTime.nHundredths := 99;
Schedule.aWeek[E_BA_Weekday.eMonday,2].eState := E_BA_SchedEntryState.eNull;
Schedule.aWeek[E_BA_Weekday.eMonday,2].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHour := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nMinute := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nSecond := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,2].stTime.nHundredths := 0;
Schedule.aWeek[E_BA_Weekday.eMonday,3].eState := E_BA_SchedEntryState.eUndefined;
Schedule.aWeek[E_BA_Weekday.eMonday,3].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHour := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nMinute := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nSecond := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,3].stTime.nHundredths := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,4].eState := E_BA_SchedEntryState.eUndefined;
Schedule.aWeek[E_BA_Weekday.eMonday,4].uValue.bVal := FALSE;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nHour := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nMinute := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nSecond := 255;
Schedule.aWeek[E_BA_Weekday.eMonday,4].stTime.nHundredths := 255;
Beispiel 07
Schedule.aException[1].eType := E_BA_DateValChoice.Invalid;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 127;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eMonday;
Automatische Korrektur, der Datumsbereich wird getauscht und die Wochentage korrigiert.
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay30;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eWednesday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 127;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eWednesday;
Beispiel 08
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 125;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.Unspecified;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.Unspecified;
Automatische Korrektur, die Wochentage werden angepasst
Schedule.aException[1].eType := E_BA_DateValChoice.eDateRange;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nYear := 125;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eMonth := E_BA_Month.eMarch;
Schedule.aException[1].uDate.stDateRange.stDateFrom.nDay := E_BA_Day.eDay31;
Schedule.aException[1].uDate.stDateRange.stDateFrom.eDayOfWeek := E_BA_WeekDay.eMonday;
Schedule.aException[1].uDate.stDateRange.stDateTo.nYear := 126;
Schedule.aException[1].uDate.stDateRange.stDateTo.eMonth := E_BA_Month.eSetember;
Schedule.aException[1].uDate.stDateRange.stDateTo.nDay := E_BA_Day.eDay29;
Schedule.aException[1].uDate.stDateRange.stDateTo.eDayOfWeek := E_BA_WeekDay.eTuesday;