Kalender-Script V2.x - MEGA-Version für D-A-CH
Moderator: Co-Administratoren
-
- Beiträge: 1184
- Registriert: 09.01.2016, 17:42
- Wohnort: Sauerland
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
?? Da im Script die Eingabe der Jahreszahl vorgesehen ist wird diese logischerweise auch berücksichtigt... Macht doch sonst keinen Sinn
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
hallöchen,
also erstmal - danke für dieses tolle script!
ich habe ein kleines Detail mit dem ich unzufrieden bin. Das ist die Ausgabe des Datums des nächsten Urlaubs. Hier ist ja immer das Lange Datum mit Wochentag dabei. Ich verwende das Datum jedoch um mir automatisch die Heizung auf Partymoduls umzustellen, wenn ich denn nicht zuhause bin. Dafür muss ich jetzt immer auch den Wochentag weglöschen, der aber unterschiedliche Länge hat.
Kurzum, es ist kein Problem, da ich einfach ein 2-faches "Split" mache (einmal den Beistrich um 1. und 2. Datum zu trennen, und dann nach "leerzeichen" um dann den 2./1. Teil des 1./2. Datum zu verwenden).
Einfacher für Skripts wäre es natürlich, wenn man das Datum ohne Wochentag bekommen würde.
aber hier zur Erklärung das Script, es setzt eine Woche vor dem Urlaub jeden Tag den Urlaubsmodus (ist noch ein Überbleibsel zu Testzwecke, vermutlich würden weniger Versuche reichen, um auch sicher zu sein, dass die Daten übertragen wurden)
also erstmal - danke für dieses tolle script!
ich habe ein kleines Detail mit dem ich unzufrieden bin. Das ist die Ausgabe des Datums des nächsten Urlaubs. Hier ist ja immer das Lange Datum mit Wochentag dabei. Ich verwende das Datum jedoch um mir automatisch die Heizung auf Partymoduls umzustellen, wenn ich denn nicht zuhause bin. Dafür muss ich jetzt immer auch den Wochentag weglöschen, der aber unterschiedliche Länge hat.
Kurzum, es ist kein Problem, da ich einfach ein 2-faches "Split" mache (einmal den Beistrich um 1. und 2. Datum zu trennen, und dann nach "leerzeichen" um dann den 2./1. Teil des 1./2. Datum zu verwenden).
Einfacher für Skripts wäre es natürlich, wenn man das Datum ohne Wochentag bekommen würde.
aber hier zur Erklärung das Script, es setzt eine Woche vor dem Urlaub jeden Tag den Urlaubsmodus (ist noch ein Überbleibsel zu Testzwecke, vermutlich würden weniger Versuche reichen, um auch sicher zu sein, dass die Daten übertragen wurden)
Code: Alles auswählen
! Urlaub - abwesenheit
string Temperatur = "17";
if ((dom.GetObject("IST-Urlaub-01-Gestern").Variable()==0) && dom.GetObject("IST-Urlaub-01-Anwesend-TageBeginn").Variable() <= 7.0) {
string myDate = dom.GetObject("IST-Urlaub-01-Anwesend-Datum").Variable();
string myStart = myDate.StrValueByIndex(',', 1);
string myEnd = myDate.StrValueByIndex(',', 2);
string myStartDay = myStart.Substr(1,2);
string myStartMonth = myStart.Substr(4,2);
string myStartYear = myStart.Substr(9,2);
string myEndDay = myEnd.Substr(1,2);
string myEndMonth = myEnd.Substr(4,2);
string myEndYear = myEnd.Substr(9,2);
WriteLine(' ' # myStartDay # ' ' # myStartMonth # ' ' # myStartYear # ' ' # myEndDay # ' ' # myEndMonth # ' ' # myEndYear);
! von mittag an
string noon = "720";
! bis mitternacht
string midnight = "0";
string partyCmd = Temperatur # "," # noon # "," # myStartDay # "," # myStartMonth # "," # myStartYear # "," # midnight # "," # myEndDay # "," # myEndMonth # "," # myEndYear;
! obwohl ich die adressen weiß, kann ich nicht sagen, ob es sie gibt...
! somit umweg über namen
string GruppenPrefix = "INT000000";
string i;
object do_device;
string addr;
string cmd = "sleep 1 ";
foreach(i, system.GenerateEnum(1,6))
{
do_device = dom.GetObject("VirtualDevices.INT000000"#i#":1.PARTY_MODE_SUBMIT");
if (do_device) {
WriteLine(i # " " # partyCmd);
do_device.State(partyCmd);
}
}
}
WriteLine('finished');
Homematic Neuling
Programmier-Profi
83 Kanäle in 33 Geräten und 32 CUxD-Kanäle in 2 CUxD-Geräten:
9x HM-Sec-SCo, 2x HM-LC-Sw1PBU-FM, 5x HM-CC-VG-1, 5x HM-CC-RT-DN, 2x CUX28, 3x HM-TC-IT-WM-W-EU, 3x HM-LC-Sw1-Pl-DN-R1, 1x HM-Sec-SD-2, 1x HM-PB-6-WM55, 1x HM-LC-Sw2-FM, 2x HM-PB-2-WM55-2, 1x HM-Sec-SD-2-Team
Programmier-Profi
83 Kanäle in 33 Geräten und 32 CUxD-Kanäle in 2 CUxD-Geräten:
9x HM-Sec-SCo, 2x HM-LC-Sw1PBU-FM, 5x HM-CC-VG-1, 5x HM-CC-RT-DN, 2x CUX28, 3x HM-TC-IT-WM-W-EU, 3x HM-LC-Sw1-Pl-DN-R1, 1x HM-Sec-SD-2, 1x HM-PB-6-WM55, 1x HM-LC-Sw2-FM, 2x HM-PB-2-WM55-2, 1x HM-Sec-SD-2-Team
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Hallo,
ich habe mich jetzt auch an das tolle Script gewagt. Soweit funktioniert auch alles, bis auf den Countdown. ich habe den Countdown 1 mals Termin, den 06.11. eingetragen.
Jetzt wollte ich nur wissen, wieviele Tage es bis dahin noch sind. Dazu habe ich die Variable Ist-Countdown-01-Tage erstellt, aber leider wird sie nicht befüllt.
Als Script habe ich das Script Ver 2.0.1 laufen.
Hat jemand einen Tipp, wie es funktionieren kann. Trage ich diesen Termin bei den Feiertagen ein, funktioniert alles mit den dazugehörigen Variablen ohne Probleme.
ich habe mich jetzt auch an das tolle Script gewagt. Soweit funktioniert auch alles, bis auf den Countdown. ich habe den Countdown 1 mals Termin, den 06.11. eingetragen.
Jetzt wollte ich nur wissen, wieviele Tage es bis dahin noch sind. Dazu habe ich die Variable Ist-Countdown-01-Tage erstellt, aber leider wird sie nicht befüllt.
Als Script habe ich das Script Ver 2.0.1 laufen.
Hat jemand einen Tipp, wie es funktionieren kann. Trage ich diesen Termin bei den Feiertagen ein, funktioniert alles mit den dazugehörigen Variablen ohne Probleme.
So long
Marcus
Marcus
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Danke , hat geklappt. Läuft alles super
So long
Marcus
Marcus
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Hallo zusammen,
heute habe ich entdeckt das bei Ausführung des Kalenderskriptes bei mir eine Fehlermeldung in der Logdatei steht.
Ich nutze die neueste Raspberrymatic Version.
Das Skript sieht, wie folgt aus:
Ich kann keinen Fehler finden, und das Skript scheint auch zu funktionieren.
Hat einer ne Ahnung, wie ich dem Fehler auf die schliche komme?
Grüße
Sascha
heute habe ich entdeckt das bei Ausführung des Kalenderskriptes bei mir eine Fehlermeldung in der Logdatei steht.
Code: Alles auswählen
Feb 13 16:57:20 homematic-raspi user.debug script: Konfigurationsfehler in SV.KAL.Gelb.Heute
Das Skript sieht, wie folgt aus:
Code: Alles auswählen
!Kalendertag-Berechnung Version 2.0.5
!*********************************
!www.homematic-forum.de (c) by BadenPower
string hS1="D-NW";
string hS2="keine Auswahl";
string hS3="nicht benannt";
string lScriptName="Kalendertag-Berechnung Version 2.0.5";
string lON1="";
if(system.IsVar("lON1")){
lON1=lON1#"SYS-Protokoll;SYS-Landeskennung;SV.KAL.Jahr;SV.KAL.Schaltjahr;SV.KAL.Jahr.Tag;SV.KAL.KW;IST-Jahr-Woche-Beginn1Sonntag;IST-Jahr-Woche-Beginn1Montag;IST-Jahr-Woche-GeradeISO8601;IST-Jahr-Woche-GeradeBeginn1Sonntag;IST-Jahr-Woche-GeradeBeginn1Montag;IST-Monat-Auswahl;IST-Monat-Name;SV.KAL.Monat;SV.KAL.Tag;SV.KAL.Wochentag;IST-Wochentag-Name;IST-Wochentag-ZahlBeginn1Montag;IST-Wochentag-ZahlBeginn1Sonntag;IST-Wochentag-ZahlBeginn0Sonntag";
lON1=lON1#";SV.KAL.Wochenende.Heute;IST-Wochenende-Morgen;IST-Wochenende-Gestern;IST-Wochenende-Tage-Beginn;IST-Wochenende-Tage-Ende;SV.KAL.Werktag.Heute;IST-Werktag-Mo-Fr-Morgen;IST-Werktag-Mo-Fr-Gestern;IST-Werktag-Mo-Sa-Heute;IST-Werktag-Mo-Sa-Morgen;IST-Werktag-Mo-Sa-Gestern;IST-Sommerzeit;IST-Sommerzeit-TageBeginn;IST-Sommerzeit-TageEnde;IST-Sommerzeit-TageUmstellung;IST-Sommerzeit-DatumBeginn;IST-Sommerzeit-DatumEnde;IST-Sommerzeit-DatumUmstellung;SV.KAL.Jahreszeit;IST-Jahreszeit-Meteorologisch";
lON1=lON1#";SYS-Feiertag-TermineZusatz;SYS-Feiertag-Entfernen;SV.KAL.Feiertag.Heute;IST-Feiertag-Heute-Auswahl;IST-Feiertag-Heute-Name;SV.KAL.Feiertag.Morgen;IST-Feiertag-Morgen-Auswahl;IST-Feiertag-Morgen-Name;IST-Feiertag-Gestern;IST-Feiertag-Gestern-Auswahl;IST-Feiertag-Gestern-Name;IST-Feiertag-Übermorgen;IST-Feiertag-Übermorgen-Auswahl;IST-Feiertag-Übermorgen-Name;IST-Feiertag-Vorgestern;IST-Feiertag-Vorgestern-Auswahl;IST-Feiertag-Vorgestern-Name;IST-Feiertag-Nächster-Tage;IST-Feiertag-Nächster-Auswahl;IST-Feiertag-Nächster-Datum;IST-Feiertag-Nächster-Name";
lON1=lON1#";SYS-Festtag-Termine;IST-Festtag-Heute;IST-Festtag-Heute-Auswahl;IST-Festtag-Heute-Name;IST-Festtag-Morgen;IST-Festtag-Morgen-Auswahl;IST-Festtag-Morgen-Name;IST-Festtag-Gestern;IST-Festtag-Gestern-Auswahl;IST-Festtag-Gestern-Name;IST-Festtag-Übermorgen;IST-Festtag-Übermorgen-Auswahl;IST-Festtag-Übermorgen-Name;IST-Festtag-Vorgestern;IST-Festtag-Vorgestern-Auswahl;IST-Festtag-Vorgestern-Name;IST-Festtag-Nächster-Tage;IST-Festtag-Nächster-Auswahl;IST-Festtag-Nächster-Datum;IST-Festtag-Nächster-Name";
lON1=lON1#";SYS-Brauchtum-Termine;IST-Brauchtum-Heute;IST-Brauchtum-Heute-Auswahl;IST-Brauchtum-Heute-Name;IST-Brauchtum-Morgen;IST-Brauchtum-Morgen-Auswahl;IST-Brauchtum-Morgen-Name;IST-Brauchtum-Gestern;IST-Brauchtum-Gestern-Auswahl;IST-Brauchtum-Gestern-Name;IST-Brauchtum-Übermorgen;IST-Brauchtum-Übermorgen-Auswahl;IST-Brauchtum-Übermorgen-Name;IST-Brauchtum-Vorgestern;IST-Brauchtum-Vorgestern-Auswahl;IST-Brauchtum-Vorgestern-Name;IST-Brauchtum-Nächster-Tage;IST-Brauchtum-Nächster-Auswahl;IST-Brauchtum-Nächster-Datum;IST-Brauchtum-Nächster-Name";
lON1=lON1#";SYS-XTag-Termine;IST-XTag-Heute;IST-XTag-Heute-Auswahl;IST-XTag-Heute-Name;IST-XTag-Morgen;IST-XTag-Morgen-Auswahl;IST-XTag-Morgen-Name;IST-XTag-Gestern;IST-XTag-Gestern-Auswahl;IST-XTag-Gestern-Name;IST-XTag-Übermorgen;IST-XTag-Übermorgen-Auswahl;IST-XTag-Übermorgen-Name;IST-XTag-Vorgestern;IST-XTag-Vorgestern-Auswahl;IST-XTag-Vorgestern-Name;IST-XTag-Nächster-Tage;IST-XTag-Nächster-Auswahl;IST-XTag-Nächster-Datum;IST-XTag-Nächster-Name";
lON1=lON1#";IST-Sondertag-Heute;IST-Sondertag-Morgen;IST-Sondertag-Gestern;IST-Sondertag-Übermorgen;IST-Sondertag-Vorgestern;IST-Brückentag-Mo-Fr-WE-FT-Heute;IST-Brückentag-Mo-Fr-WE-FT-Morgen;IST-Brückentag-Mo-Fr-WE-FT-Gestern;IST-Brückentag-Mo-Fr-WE-FT-FT-Heute;IST-Brückentag-Mo-Fr-WE-FT-FT-Morgen;IST-Brückentag-Mo-Fr-WE-FT-FT-Gestern;IST-Brückentag-Mo-Sa-WE-FT-Heute;IST-Brückentag-Mo-Sa-WE-FT-Morgen;IST-Brückentag-Mo-Sa-WE-FT-Gestern;IST-Brückentag-Mo-Sa-WE-FT-FT-Heute;IST-Brückentag-Mo-Sa-WE-FT-FT-Morgen;IST-Brückentag-Mo-Sa-WE-FT-FT-Gestern";
lON1=lON1#";SYS-Urlaub-01-Termine;IST-Urlaub-01-Heute;IST-Urlaub-01-Morgen;IST-Urlaub-01-Gestern;IST-Urlaub-01-TageBeginn;IST-Urlaub-01-Anwesend-Heute;IST-Urlaub-01-Anwesend-Morgen;IST-Urlaub-01-Anwesend-Gestern;IST-Urlaub-01-Anwesend-TageBeginn;IST-Urlaub-01-Anwesend-TageEnde;IST-Urlaub-01-Anwesend-Datum;IST-Urlaub-01-Abwesend-Heute;IST-Urlaub-01-Abwesend-Morgen;IST-Urlaub-01-Abwesend-Gestern;IST-Urlaub-01-Abwesend-TageBeginn;IST-Urlaub-01-Abwesend-TageEnde;IST-Urlaub-01-Abwesend-Datum";
lON1=lON1#";SYS-Urlaub-02-Termine;IST-Urlaub-02-Heute;IST-Urlaub-02-Morgen;IST-Urlaub-02-Gestern;IST-Urlaub-02-TageBeginn;IST-Urlaub-02-Anwesend-Heute;IST-Urlaub-02-Anwesend-Morgen;IST-Urlaub-02-Anwesend-Gestern;IST-Urlaub-02-Anwesend-TageBeginn;IST-Urlaub-02-Anwesend-TageEnde;IST-Urlaub-02-Anwesend-Datum;IST-Urlaub-02-Abwesend-Heute;IST-Urlaub-02-Abwesend-Morgen;IST-Urlaub-02-Abwesend-Gestern;IST-Urlaub-02-Abwesend-TageBeginn;IST-Urlaub-02-Abwesend-TageEnde;IST-Urlaub-02-Abwesend-Datum";
lON1=lON1#";SYS-Urlaub-03-Termine;IST-Urlaub-03-Heute;IST-Urlaub-03-Morgen;IST-Urlaub-03-Gestern;IST-Urlaub-03-TageBeginn;IST-Urlaub-03-Anwesend-Heute;IST-Urlaub-03-Anwesend-Morgen;IST-Urlaub-03-Anwesend-Gestern;IST-Urlaub-03-Anwesend-TageBeginn;IST-Urlaub-03-Anwesend-TageEnde;IST-Urlaub-03-Anwesend-Datum;IST-Urlaub-03-Abwesend-Heute;IST-Urlaub-03-Abwesend-Morgen;IST-Urlaub-03-Abwesend-Gestern;IST-Urlaub-03-Abwesend-TageBeginn;IST-Urlaub-03-Abwesend-TageEnde;IST-Urlaub-03-Abwesend-Datum";
lON1=lON1#";SYS-Urlaub-04-Termine;IST-Urlaub-04-Heute;IST-Urlaub-04-Morgen;IST-Urlaub-04-Gestern;IST-Urlaub-04-TageBeginn;IST-Urlaub-04-Anwesend-Heute;IST-Urlaub-04-Anwesend-Morgen;IST-Urlaub-04-Anwesend-Gestern;IST-Urlaub-04-Anwesend-TageBeginn;IST-Urlaub-04-Anwesend-TageEnde;IST-Urlaub-04-Anwesend-Datum;IST-Urlaub-04-Abwesend-Heute;IST-Urlaub-04-Abwesend-Morgen;IST-Urlaub-04-Abwesend-Gestern;IST-Urlaub-04-Abwesend-TageBeginn;IST-Urlaub-04-Abwesend-TageEnde;IST-Urlaub-04-Abwesend-Datum";
lON1=lON1#";SYS-Urlaub-05-Termine;IST-Urlaub-05-Heute;IST-Urlaub-05-Morgen;IST-Urlaub-05-Gestern;IST-Urlaub-05-TageBeginn;IST-Urlaub-05-Anwesend-Heute;IST-Urlaub-05-Anwesend-Morgen;IST-Urlaub-05-Anwesend-Gestern;IST-Urlaub-05-Anwesend-TageBeginn;IST-Urlaub-05-Anwesend-TageEnde;IST-Urlaub-05-Anwesend-Datum;IST-Urlaub-05-Abwesend-Heute;IST-Urlaub-05-Abwesend-Morgen;IST-Urlaub-05-Abwesend-Gestern;IST-Urlaub-05-Abwesend-TageBeginn;IST-Urlaub-05-Abwesend-TageEnde;IST-Urlaub-05-Abwesend-Datum";
lON1=lON1#";IST-Urlaub-Heute;IST-Urlaub-Morgen;IST-Urlaub-Gestern;IST-Urlaub-TageBeginn";
lON1=lON1#";SYS-Ferien-01-Termine;IST-Ferien-01-Heute;IST-Ferien-01-Morgen;IST-Ferien-01-Gestern;IST-Ferien-01-TageBeginn;IST-Ferien-01-Anwesend-Heute;IST-Ferien-01-Anwesend-Morgen;IST-Ferien-01-Anwesend-Gestern;IST-Ferien-01-Anwesend-TageBeginn;IST-Ferien-01-Anwesend-TageEnde;IST-Ferien-01-Anwesend-Datum;IST-Ferien-01-Abwesend-Heute;IST-Ferien-01-Abwesend-Morgen;IST-Ferien-01-Abwesend-Gestern;IST-Ferien-01-Abwesend-TageBeginn;IST-Ferien-01-Abwesend-TageEnde;IST-Ferien-01-Abwesend-Datum";
lON1=lON1#";SYS-Ferien-02-Termine;IST-Ferien-02-Heute;IST-Ferien-02-Morgen;IST-Ferien-02-Gestern;IST-Ferien-02-TageBeginn;IST-Ferien-02-Anwesend-Heute;IST-Ferien-02-Anwesend-Morgen;IST-Ferien-02-Anwesend-Gestern;IST-Ferien-02-Anwesend-TageBeginn;IST-Ferien-02-Anwesend-TageEnde;IST-Ferien-02-Anwesend-Datum;IST-Ferien-02-Abwesend-Heute;IST-Ferien-02-Abwesend-Morgen;IST-Ferien-02-Abwesend-Gestern;IST-Ferien-02-Abwesend-TageBeginn;IST-Ferien-02-Abwesend-TageEnde;IST-Ferien-02-Abwesend-Datum";
lON1=lON1#";SYS-Ferien-03-Termine;IST-Ferien-03-Heute;IST-Ferien-03-Morgen;IST-Ferien-03-Gestern;IST-Ferien-03-TageBeginn;IST-Ferien-03-Anwesend-Heute;IST-Ferien-03-Anwesend-Morgen;IST-Ferien-03-Anwesend-Gestern;IST-Ferien-03-Anwesend-TageBeginn;IST-Ferien-03-Anwesend-TageEnde;IST-Ferien-03-Anwesend-Datum;IST-Ferien-03-Abwesend-Heute;IST-Ferien-03-Abwesend-Morgen;IST-Ferien-03-Abwesend-Gestern;IST-Ferien-03-Abwesend-TageBeginn;IST-Ferien-03-Abwesend-TageEnde;IST-Ferien-03-Abwesend-Datum";
lON1=lON1#";SYS-Ferien-04-Termine;IST-Ferien-04-Heute;IST-Ferien-04-Morgen;IST-Ferien-04-Gestern;IST-Ferien-04-TageBeginn;IST-Ferien-04-Anwesend-Heute;IST-Ferien-04-Anwesend-Morgen;IST-Ferien-04-Anwesend-Gestern;IST-Ferien-04-Anwesend-TageBeginn;IST-Ferien-04-Anwesend-TageEnde;IST-Ferien-04-Anwesend-Datum;IST-Ferien-04-Abwesend-Heute;IST-Ferien-04-Abwesend-Morgen;IST-Ferien-04-Abwesend-Gestern;IST-Ferien-04-Abwesend-TageBeginn;IST-Ferien-04-Abwesend-TageEnde;IST-Ferien-04-Abwesend-Datum";
lON1=lON1#";SYS-Ferien-05-Termine;IST-Ferien-05-Heute;IST-Ferien-05-Morgen;IST-Ferien-05-Gestern;IST-Ferien-05-TageBeginn;IST-Ferien-05-Anwesend-Heute;IST-Ferien-05-Anwesend-Morgen;IST-Ferien-05-Anwesend-Gestern;IST-Ferien-05-Anwesend-TageBeginn;IST-Ferien-05-Anwesend-TageEnde;IST-Ferien-05-Anwesend-Datum;IST-Ferien-05-Abwesend-Heute;IST-Ferien-05-Abwesend-Morgen;IST-Ferien-05-Abwesend-Gestern;IST-Ferien-05-Abwesend-TageBeginn;IST-Ferien-05-Abwesend-TageEnde;IST-Ferien-05-Abwesend-Datum";
lON1=lON1#";IST-Ferien-Heute;IST-Ferien-Morgen;IST-Ferien-Gestern;IST-Ferien-TageBeginn";
lON1=lON1#";SV.KAL.Grau.Termine;SV.KAL.Grau.Heute;SV.KAL.Grau.Morgen;IST-Abfall-Grau-Tage;IST-Abfall-Grau-Datum";
lON1=lON1#";SV.KAL.Gruen.Termine;SV.KAL.Gruen.Heute;SV.KAL.Gruen.Morgen;IST-Abfall-Grün-Tage;IST-Abfall-Grün-Datum";
lON1=lON1#";SV.KAL.Gelb.Termine;SV.KAL.Gelb.Heute;SV.KAL.Gelb.Morgen;IST-Abfall-Gelb-Tage;IST-Abfall-Gelb-Datum";
lON1=lON1#";SV.KAL.Braun.Termine;SV.KAL.Braun.Heute;SV.KAL.Braun.Morgen;IST-Abfall-Braun-Tage;IST-Abfall-Braun-Datum";
lON1=lON1#";SYS-Abfall-Blau-Termine;IST-Abfall-Blau-Heute;IST-Abfall-Blau-Morgen;IST-Abfall-Blau-Tage;IST-Abfall-Blau-Datum";
lON1=lON1#";SYS-Abfall-Rot-Termine;IST-Abfall-Rot-Heute;IST-Abfall-Rot-Morgen;IST-Abfall-Rot-Tage;IST-Abfall-Rot-Datum";
lON1=lON1#";SYS-Abfall-Glas-Termine;IST-Abfall-Glas-Heute;IST-Abfall-Glas-Morgen;IST-Abfall-Glas-Tage;IST-Abfall-Glas-Datum";
lON1=lON1#";SYS-Abfall-Sondermüll-Termine;IST-Abfall-Sondermüll-Heute;IST-Abfall-Sondermüll-Morgen;IST-Abfall-Sondermüll-Tage;IST-Abfall-Sondermüll-Datum";
lON1=lON1#";SYS-Abfall-Sperrmüll-Termine;IST-Abfall-Sperrmüll-Heute;IST-Abfall-Sperrmüll-Morgen;IST-Abfall-Sperrmüll-Tage;IST-Abfall-Sperrmüll-Datum";
lON1=lON1#";SYS-Abfall-Sonstiges-Termine;IST-Abfall-Sonstiges-Heute;IST-Abfall-Sonstiges-Morgen;IST-Abfall-Sonstiges-Tage;IST-Abfall-Sonstiges-Datum";
lON1=lON1#";IST-Abfall-Heute;IST-Abfall-Morgen";
lON1=lON1#";SYS-Zeitspanne-01-Termine;IST-Zeitspanne-01-Heute;IST-Zeitspanne-01-Morgen;IST-Zeitspanne-01-Gestern;IST-Zeitspanne-01-TageBeginn;IST-Zeitspanne-01-TageEnde;IST-Zeitspanne-01-Datum";
lON1=lON1#";SYS-Zeitspanne-02-Termine;IST-Zeitspanne-02-Heute;IST-Zeitspanne-02-Morgen;IST-Zeitspanne-02-Gestern;IST-Zeitspanne-02-TageBeginn;IST-Zeitspanne-02-TageEnde;IST-Zeitspanne-02-Datum";
lON1=lON1#";SYS-Zeitspanne-03-Termine;IST-Zeitspanne-03-Heute;IST-Zeitspanne-03-Morgen;IST-Zeitspanne-03-Gestern;IST-Zeitspanne-03-TageBeginn;IST-Zeitspanne-03-TageEnde;IST-Zeitspanne-03-Datum";
lON1=lON1#";SYS-Zeitspanne-04-Termine;IST-Zeitspanne-04-Heute;IST-Zeitspanne-04-Morgen;IST-Zeitspanne-04-Gestern;IST-Zeitspanne-04-TageBeginn;IST-Zeitspanne-04-TageEnde;IST-Zeitspanne-04-Datum";
lON1=lON1#";SYS-Zeitspanne-05-Termine;IST-Zeitspanne-05-Heute;IST-Zeitspanne-05-Morgen;IST-Zeitspanne-05-Gestern;IST-Zeitspanne-05-TageBeginn;IST-Zeitspanne-05-TageEnde;IST-Zeitspanne-05-Datum";
lON1=lON1#";SYS-Zeitspanne-06-Termine;IST-Zeitspanne-06-Heute;IST-Zeitspanne-06-Morgen;IST-Zeitspanne-06-Gestern;IST-Zeitspanne-06-TageBeginn;IST-Zeitspanne-06-TageEnde;IST-Zeitspanne-06-Datum";
lON1=lON1#";SYS-Zeitspanne-07-Termine;IST-Zeitspanne-07-Heute;IST-Zeitspanne-07-Morgen;IST-Zeitspanne-07-Gestern;IST-Zeitspanne-07-TageBeginn;IST-Zeitspanne-07-TageEnde;IST-Zeitspanne-07-Datum";
lON1=lON1#";SYS-Zeitspanne-08-Termine;IST-Zeitspanne-08-Heute;IST-Zeitspanne-08-Morgen;IST-Zeitspanne-08-Gestern;IST-Zeitspanne-08-TageBeginn;IST-Zeitspanne-08-TageEnde;IST-Zeitspanne-08-Datum";
lON1=lON1#";SYS-Zeitspanne-09-Termine;IST-Zeitspanne-09-Heute;IST-Zeitspanne-09-Morgen;IST-Zeitspanne-09-Gestern;IST-Zeitspanne-09-TageBeginn;IST-Zeitspanne-09-TageEnde;IST-Zeitspanne-09-Datum";
lON1=lON1#";SYS-Zeitspanne-10-Termine;IST-Zeitspanne-10-Heute;IST-Zeitspanne-10-Morgen;IST-Zeitspanne-10-Gestern;IST-Zeitspanne-10-TageBeginn;IST-Zeitspanne-10-TageEnde;IST-Zeitspanne-10-Datum";
lON1=lON1#";SYS-Countdown-01-Termin;IST-Countdown-01-Heute;IST-Countdown-01-Morgen;IST-Countdown-01-Gestern;IST-Countdown-01-Tage;IST-Countdown-01-Datum";
lON1=lON1#";SYS-Countdown-02-Termin;IST-Countdown-02-Heute;IST-Countdown-02-Morgen;IST-Countdown-02-Gestern;IST-Countdown-02-Tage;IST-Countdown-02-Datum";
lON1=lON1#";SYS-Countdown-03-Termin;IST-Countdown-03-Heute;IST-Countdown-03-Morgen;IST-Countdown-03-Gestern;IST-Countdown-03-Tage;IST-Countdown-03-Datum";
lON1=lON1#";SYS-Countdown-04-Termin;IST-Countdown-04-Heute;IST-Countdown-04-Morgen;IST-Countdown-04-Gestern;IST-Countdown-04-Tage;IST-Countdown-04-Datum";
lON1=lON1#";SYS-Countdown-05-Termin;IST-Countdown-05-Heute;IST-Countdown-05-Morgen;IST-Countdown-05-Gestern;IST-Countdown-05-Tage;IST-Countdown-05-Datum";
lON1=lON1#";SYS-Countdown-06-Termin;IST-Countdown-06-Heute;IST-Countdown-06-Morgen;IST-Countdown-06-Gestern;IST-Countdown-06-Tage;IST-Countdown-06-Datum";
lON1=lON1#";SYS-Countdown-07-Termin;IST-Countdown-07-Heute;IST-Countdown-07-Morgen;IST-Countdown-07-Gestern;IST-Countdown-07-Tage;IST-Countdown-07-Datum";
lON1=lON1#";SYS-Countdown-08-Termin;IST-Countdown-08-Heute;IST-Countdown-08-Morgen;IST-Countdown-08-Gestern;IST-Countdown-08-Tage;IST-Countdown-08-Datum";
lON1=lON1#";SYS-Countdown-09-Termin;IST-Countdown-09-Heute;IST-Countdown-09-Morgen;IST-Countdown-09-Gestern;IST-Countdown-09-Tage;IST-Countdown-09-Datum";
lON1=lON1#";SYS-Countdown-10-Termin;IST-Countdown-10-Heute;IST-Countdown-10-Morgen;IST-Countdown-10-Gestern;IST-Countdown-10-Tage;IST-Countdown-10-Datum";
}
object hO1=dom.GetObject(ID_SYSTEM_VARIABLES);string lCO1="";time lDateTime=(system.Date("%F %X")).ToTime();boolean lDoLoop1=true;string lGetError1;string lGetOut1;time hD1=(lDateTime.Format("%F")#" 06:00:00").ToTime();integer hI1=-1;
string hL1="";string hL2="";string hL3="";string hL4="";string hL5="";string hL6="";string hL7="";string hL8="";string hL9="Sonntag;Montag;Dienstag;Mittwoch;Donnerstag;Freitag;Samstag";string hL10="Januar;Februar;März;April;Mai;Juni;Juli;August;September;Oktober;November;Dezember";integer z1=0;integer z2=0;integer z3=0;string lSP1="";string lSP2="";string lSP3="";
boolean tB1=false;boolean tB2=false;boolean tB3=false;boolean tB4=false;boolean tB5=false;boolean tB6=false;boolean tB7=false;time tD1;time tD2;time tD3;integer tI1=0;integer tI2=0;integer tI3=0;integer tI4=0;integer tI5=0;integer tI6=0;integer tI7=0;integer tI8=0;integer tI9=0;integer tI10=0;
string tL1="";string tL2="";string tL3="";string tL4="";string tL5="";string tL6="";string tL7="";object tO1=null;object tO2=null;object tO3=null;object tO4=null;object tO5=null;string tS1="";string tS2="";string tS3="";string tS4="";string tS5="";string tS6="";string tS7="";string tS8="";string tS9="";var tV1;
string lCV1="";
if((system.IsVar("lCV1"))&&(system.IsVar("lSP1"))){
lCV1="lScriptName;hO1;lON1;lCO1;lDateTime;lDoLoop1;z1;z2;z3;lSP1;lSP2;lSP3;hD1;hI1;hL1;hL2;hL3;hL4;hL5;hL6;hL7;hL8;hL9;hL10;hS1;hS2;hS3;tB1;tB2;tB3;tB4;tB5;tB6;tB7;tD1;tD2;tD3;tI1;tI2;tI3;tI4;tI5;tI6;tI7;tI8;tI9;tI10;tL1;tL2;tL3;tL4;tL5;tL6;tL7;tO1;tO2;tO3;tO4;tO5;tS1;tS2;tS3;tS4;tS5;tS6;tS7;tS8;tS9;tV1";
if(lCV1.VarType()==4){foreach(lSP1,lCV1.Split(";")){if(system.IsVar(lSP1)==false){if(system.IsVar("lON1")){if(lON1.StrValueByIndex(";",0)<>""){if(hO1.Get(lON1.StrValueByIndex(";",0))){(hO1.Get(lON1.StrValueByIndex(";",0))).State("ACHTUNG: Skript-Variabel-Überlauf");}}}quit;}}}else{quit;}}else{quit;}
z1=0;foreach(lSP1,lON1.Split(";")){tS1="0-0-0";if(lSP1<>""){tO1=hO1.Get(lSP1);if(tO1){if(z1==-1){tS1="1";if((tO1.Value()==null)||(tO1.Value()=="")||(tO1.Value()=="???")){tS1=tS1#"-0";}else{tS1=tS1#"-1";}tS1=tS1#"-0";}else{tS1="1-0-0";}}}if(z1>0){lCO1=lCO1#";";}lCO1=lCO1#tS1;z1=z1+1;}
tL1="2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39";tB1=false;tI7=hD1.Year();if((tI7%400)==0){tB1=true;}else{if((tI7%100)==0){tB1=false;}else{if((tI7%4)==0){tB1=true;}}}
tB2=(lDateTime.IsDST()==1);tD1=(hD1.Format("%Y")#"-03-31 06:00:00").ToTime();tI7=(tD1.Format("%w")).ToInteger();tD2=((tD1-(tI7*86400)).Format("%F")#" 06:00:00").ToTime();if(hD1>tD2){tD1=((hD1.Year()+1).ToString(0)#"-03-31 06:00:00").ToTime();tI7=(tD1.Format("%w")).ToInteger();tD2=((tD1-(tI7*86400)).Format("%F")#" 06:00:00").ToTime();}
tD1=(hD1.Format("%Y")#"-10-31 06:00:00").ToTime();tI7=(tD1.Format("%w")).ToInteger();tD3=((tD1-(tI7*86400)).Format("%F")#" 06:00:00").ToTime();if(hD1>tD3){tD1=((hD1.Year()+1).ToString(0)#"-10-31 06:00:00").ToTime();tI7=(tD1.Format("%w")).ToInteger();tD3=((tD1-(tI7*86400)).Format("%F")#" 06:00:00").ToTime();}
tI2=(((tD2+86400)-(hD1)).ToInteger()/86400).ToInteger()-1;tI3=(((tD3+86400)-(hD1)).ToInteger()/86400).ToInteger()-1;tI1=tI2;tS2=tD2.Format("%d.%m.%Y");tS3=tD3.Format("%d.%m.%Y");tS1=tS2;if(tI2>tI3){tI1=tI3;tS1=tS3;}tI4=(hD1.Format("%w")).ToInteger();tI5=(hD1.Format("%u")).ToInteger();tI6=hD1.Month();
z1=0;while(z1<38){tI7=(tL1.StrValueByIndex(";",z1)).ToInteger();if(((lCO1.StrValueByIndex(";",tI7)).StrValueByIndex("-",0)).ToInteger()>0){tO1=hO1.Get(lON1.StrValueByIndex(";",tI7));if(tI7==2){tV1=hD1.Year();}if(tI7==4){tV1=hD1.Yearday();}if(tI7==5){tV1=(hD1.Format("%V")).ToInteger();}if(tI7==6){tV1=(hD1.Format("%U")).ToInteger();}if(tI7==7){tV1=(hD1.Format("%W")).ToInteger();}if(tI7==12){tV1=hL10.StrValueByIndex(";",(tI6-1));}if(tI7==13){tV1=tI6;}if(tI7==14){tV1=hD1.Day();}
if(tI7==16){tV1=hL9.StrValueByIndex(";",tI4);}if(tI7==17){tV1=tI5;}if(tI7==18){tV1=tI4+1;}if(tI7==19){tV1=tI4;}if(tI7==23){tV1=6-tI5;if(tV1<0){tV1=0;}}if(tI7==24){tV1=7-tI5;}if(tI7==32){tV1=tI2;}if(tI7==33){tV1=tI3;}if(tI7==34){tV1=tI1;}if(tI7==35){tV1=tS2;}if(tI7==36){tV1=tS3;}if(tI7==37){tV1=tS1;}if((tI7==3)||(tI7==8)||(tI7==9)||(tI7==10)||(tI7==11)||(tI7==15)||(tI7==20)||(tI7==21)||(tI7==22)||(tI7==25)||(tI7==26)||(tI7==27)||(tI7==28)||(tI7==29)||(tI7==30)||(tI7==31)||(tI7==38)||(tI7==39)){tI8=2;tV1=0;
if(tI7==3){if(tB1){tV1=1;}}if(tI7==8){if(((hD1.Format("%V")).ToInteger()%2)==0){tV1=1;}}if(tI7==9){if(((hD1.Format("%U")).ToInteger()%2)==0){tV1=1;}}if(tI7==10){if(((hD1.Format("%W")).ToInteger()%2)==0){tV1=1;}}if(tI7==11){tI8=12;tV1=tI6-1;}if(tI7==15){tI8=7;tV1=tI5-1;}if(tI7==20){if((tI5==6)||(tI5==7)){tV1=1;}}if(tI7==21){if((tI5==5)||(tI5==6)){tV1=1;}}if(tI7==22){if((tI5==7)||(tI5==1)){tV1=1;}}if(tI7==25){if((tI5<>6)&&(tI5<>7)){tV1=1;}}if(tI7==26){if((tI5<>5)&&(tI5<>6)){tV1=1;}}if(tI7==27){if((tI5<>1)&&(tI5<>7)){tV1=1;}}if(tI7==28){if(tI5<>7){tV1=1;}}if(tI7==29){if(tI5<>6){tV1=1;}}if(tI7==30){if(tI5<>1){tV1=1;}}if(tI7==31){if(tB2){tV1=1;}}
if(tI7==38){tI9=hD1.Year()-2000;tI10=hD1.Day();if((tI6==1)||(tI6==2)){tV1=3;}if(tI6==3){tV1=0;tI8=20;tL2="48;52;56;60;64;68;72;76;80;81;84;85;88;89;92;93;96;97";foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){tI8=19;}}tL2="3;7;11";foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){
tI8=21;}}if(tI10<tI8){tV1=3;}}if((tI6==4)||(tI6==5)){tV1=0;}if(tI6==6){tV1=1;tI8=21;tL2="20;24;28;32;36;40;44;48;49;52;53;56;57;60;61;64;65;68;69;72;73;76;77;78;80;81;82;84;85;86;88;89;90;92;93;94;96;97;98";foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){tI8=20;}}if(tI10<tI8){tV1=0;}}
if((tI6==7)||(tI6==8)){tV1=1;}if(tI6==9){tV1=2;tI8=22;tL2="1;2;3;5;6;7;10;11;14;15;18;19;22;23;26;27;30;31;34;35;38;39;43;47;51;55;59;63;67";foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){tI8=23;}}if(tI10<tI8){tV1=1;}}if((tI6==10)||(tI6==11)){tV1=2;}if(tI6==12){tV1=3;tI8=21;tL2="84;88;92;96";
foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){tI8=20;}}tL2="2;3;6;7;10;11;14;15;19;23;27;31;35;39;43;47";foreach(lSP1,tL2.Split(";")){if(tI9==lSP1.ToInteger()){tI8=22;}}if(tI10<tI8){tV1=2;}}tI8=4;}
if(tI7==39){tI8=4;tI9=(hD1.Month()*100)+hD1.Day();tV1=3;if((tI9>=301)&&(tI9<601)){tV1=0;}if((tI9>=601)&&(tI9<901)){tV1=1;}if((tI9>=901)&&(tI9<1201)){tV1=2;}}if(tO1.ValueType()==ivtInteger){if((web.webGetValueListCount(tO1.ValueList())).ToInteger()>tI8){tV1=tV1+1;}}}tO1.State(tV1);}z1=z1+1;}
if(((lCO1.StrValueByIndex(";",31)).StrValueByIndex("-",0)).ToInteger()>0){tO1=hO1.Get(lON1.StrValueByIndex(";",31));tI7=0;tI8=(lDateTime.Hour()*3600)+(lDateTime.Minute()*60)+lDateTime.Second();tB3=false;tB4=false;tD1=("1970-01-02 00:00:00").ToTime();if(((tI2==0)&&(tB2==false))||((tI2==1)&&(tI8>7200))){tB3=true;tB4=true;
if(tI2==0){tI7=7200-tI8;}else{tI7=93600-tI8;}tD1=tD1+tI7;}if(((tI3==0)&&(tB2))||((tI3==1)&&(tI8>10800))){tB3=true;if(tI3==0){tI7=10800-tI8;}else{tI7=97200-tI8;}tD1=tD1+tI7;}if(tB3){tI7=0;if(tB4){tI7=1;}if(tO1.ValueType()==ivtInteger){if((web.webGetValueListCount(tO1.ValueList())).ToInteger()>2){tI7=tI7+1;}}
tO2=dom.CreateObject(OT_PROGRAM);tO2.Name("AutoCreateTrigger");tO3=tO2.Rule();tO4=tO3.RuleDestination();tO4.BreakOnRestart(true);tO5=tO4.DestAddSingle();tO5.DestinationParam(19);tO5.DestinationDP(tO1.ID());tO5.DestinationValueType(tO1.ValueType());tO5.DestinationValue(tI7);tO5.DestinationValueParamType(ivtDelay);tO5.DestinationValueParam(tD1.ToString());tO2.ProgramExecute();dom.DeleteObject(tO2.ID());}}
if(((lCO1.StrValueByIndex(";",1)).StrValueByIndex("-",0)).ToInteger()>0){tS1="";tO1=hO1.Get(lON1.StrValueByIndex(";",1));if(tO1.ValueType()==ivtString){tS1=tO1.Value();}else{if((tO1.ValueType()==ivtInteger)&&(tO1.ValueSubType()==istEnum)){tS1=(tO1.ValueList()).StrValueByIndex(";",tO1.Value());}}}else{tS1=hS1;}if(tS1==""){tS3="";tS4="";tS5="";}else{tI1=tS1.Find("-");if(tI1>=0){tS3=tS1.Substr(0,tI1);tS2=tS1.Substr(tI1+1,((tS1.Length()-1)-tI1));tI2=tS2.Find("-");if(tI2>=0){tS4=tS1.Substr(0,tI1+tI2+1);tS5=tS1;}else{tS4=tS1;tS5="";}}else{tS3=tS1;tS4="";tS5="";}}
hL1=hL1#";01.01.";hL2=hL2#";Neujahr,Neujahrstag,01.01.";if((tS3=="A")||(tS4=="D-BW")||(tS4=="D-BY")){hL3=hL3#";0";}else{hL3=hL3#";1";}if((tS3=="D")||(tS3=="A")||(tS3=="CH")){hL4=hL4#";0";}
hL1=hL1#";02.01.";hL2=hL2#";Berchtoldstag,02.01.";hL3=hL3#";-1";if((tS4=="CH-BE")||(tS4=="CH-TG")||(tS4=="CH-VD")||(tS4=="CH-JU")||(tS4=="CH-FR")||(tS4=="CH-GE")||(tS4=="CH-GL")||(tS4=="CH-LU")||(tS4=="CH-OW")||(tS4=="CH-SH")||(tS4=="CH-SO")||(tS4=="CH-ZG")||(tS4=="CH-ZH")){hL4=hL4#";1";}
hL1=hL1#";06.01.";hL2=hL2#";Heilige Drei Könige,Erscheinungsfest,06.01.";if(tS4=="D-BW"){hL3=hL3#";1";}else{hL3=hL3#";0";}if((tS3=="A")||(tS4=="D-BW")||(tS4=="D-BY")||(tS4=="D-ST")||(tS4=="CH-TI")||(tS4=="CH-SZ")||(tS4=="CH-UR")){hL4=hL4#";2";}hL1=hL1#";14.02.";hL2=hL2#";Valentinstag,14.02.";hL3=hL3#";-1";
hL1=hL1#";19.03.";hL2=hL2#";Josefstag,19.03.";hL3=hL3#";-1";if((tS4=="CH-SZ")||(tS4=="CH-VS")||(tS4=="CH-NW")||(tS4=="CH-TI")||(tS4=="CH-UR")){hL4=hL4#";4";}
hL1=hL1#";01.05.";hL2=hL2#";Erster Mai,Tag der Arbeit,Maifeiertag,Staatsfeiertag,01.05.";if((tS3=="CH")||(tS4=="D-BY")||(tS4=="D-SN")){hL3=hL3#";1";}else{if(tS3=="A"){hL3=hL3#";3";}else{hL3=hL3#";0";}}if((tS3=="D")||(tS3=="A")||(tS4=="CH-BL")||(tS4=="CH-BS")||(tS4=="CH-JU")||(tS4=="CH-NE")||(tS4=="CH-ZH")||(tS4=="CH-SH")||(tS4=="CH-TG")||(tS4=="CH-TI")){hL4=hL4#";5";}
hL1=hL1#";04.05.";hL2=hL2#";Florian,04.05.";hL3=hL3#";-1";hL1=hL1#";24.06.";hL2=hL2#";Johannistag,24.06.";hL3=hL3#";-1";hL1=hL1#";01.08.";hL2=hL2#";Bundesfeier,01.08.";hL3=hL3#";-1";if(tS3=="CH"){hL4=hL4#";8";}hL1=hL1#";08.08.";hL2=hL2#";Augsburger Hohe Friedensfest,Augsburger Friedensfest,08.08.";hL3=hL3#";-1";if(tS5=="D-BY-A"){hL4=hL4#";9";}
hL1=hL1#";15.08.";hL2=hL2#";Mariä Himmelfahrt,Maria Himmelsfahrtstag,15.08.";if(tS4=="D-SL"){hL3=hL3#";1";}else{hL3=hL3#";0";}if((tS3=="A")||(tS4=="D-SL")||(tS5=="D-BY-A")||(tS5=="D-BY-1")||(tS4=="CH-LU")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-SZ")||(tS4=="CH-TI")||(tS4=="CH-UR")||(tS4=="CH-VS")||(tS4=="CH-ZG")||(tS4=="CH-AI")||(tS4=="CH-JU")){hL4=hL4#";10";}
hL1=hL1#";24.09.";hL2=hL2#";Rupert,Rupertikirtag,24.09.";hL3=hL3#";-1";hL1=hL1#";29.09.";hL2=hL2#";Michaelistag,29.09.";hL3=hL3#";-1";hL1=hL1#";03.10.";hL2=hL2#";Tag der deutschen Einheit,03.10.";hL3=hL3#";-1";if(tS3=="D"){hL4=hL4#";13";}hL1=hL1#";10.10.";hL2=hL2#";Tag der Volksabstimmung,10.10.";hL3=hL3#";-1";
hL1=hL1#";26.10.";hL2=hL2#";Nationalfeiertag,26.10.";hL3=hL3#";-1";if(tS3=="A"){hL4=hL4#";15";}hL1=hL1#";31.10.";hL2=hL2#";Reformationstag,Reformationsfest,Halloween,31.10.";if((tS4=="D-BB")||(tS4=="D-SN")){hL3=hL3#";1";}else{hL3=hL3#";0";}if((tS4=="D-BB")||(tS4=="D-MV")||(tS4=="D-SN")||(tS4=="D-ST")||(tS4=="D-TH")){hL4=hL4#";15";}
hL1=hL1#";01.11.";hL2=hL2#";Allerheiligen,Allerheiligentag,01.11.";if((tS4=="D-NW")||(tS4=="D-RP")||(tS4=="D-SL")){hL3=hL3#";1";}else{hL3=hL3#";0";}if((tS3=="A")||(tS4=="D-BW")||(tS4=="D-BY")||(tS4=="D-NW")||(tS4=="D-RP")||(tS4=="D-SL")||(tS4=="CH-GL")||(tS4=="CH-LU")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-SG")||(tS4=="CH-SZ")||(tS4=="CH-TI")||(tS4=="CH-UR")||(tS4=="CH-VS")||(tS4=="CH-ZG")||(tS4=="CH-AI")||(tS4=="CH-JU")){hL4=hL4#";17";}
hL1=hL1#";02.11.";hL2=hL2#";Allerseelen,Seelentag,02.11.";hL3=hL3#";-1";hL1=hL1#";11.11.";hL2=hL2#";Martinstag,Sankt Martin,11.11.";hL3=hL3#";-1";hL1=hL1#";15.11.";hL2=hL2#";Leopold,15.11.";hL3=hL3#";-1";hL1=hL1#";06.12.";hL2=hL2#";Nikolaus,Nikolaustag,06.12.";hL3=hL3#";-1";
hL1=hL1#";08.12.";hL2=hL2#";Mariä Empfängnis,08.12.";hL3=hL3#";-1";if((tS3=="A")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-UR")||(tS4=="CH-VS")||(tS4=="CH-ZG")||(tS4=="CH-AI")||(tS4=="CH-LU")||(tS4=="CH-SZ")||(tS4=="CH-TI")){hL4=hL4#";22";}hL1=hL1#";24.12.";hL2=hL2#";Heiliger Abend,Heilig Abend,24.12.";hL3=hL3#";-1";
hL1=hL1#";25.12.";hL2=hL2#";1. Weihnachtstag,Erster Weihnachtstag,1. Weihnachtsfeiertag,Erster Weihnachtsfeiertag,Christtag,Weihnachtstag,Weihnachten,25.12.";if((tS4=="D-BW")||(tS4=="D-BY")||(tS4=="D-BE")){hL3=hL3#";1";}else{if((tS4=="D-BB")||(tS4=="D-ST")){hL3=hL3#";2";}else{if(tS4=="D-TH"){hL3=hL3#";3";}else{if(tS3=="A"){hL3=hL3#";4";}else{if(tS3=="CH"){hL3=hL3#";5";}else{hL3=hL3#";0";}}}}}if((tS3=="D")||(tS3=="A")||(tS3=="CH")){hL4=hL4#";24";}
hL1=hL1#";26.12.";hL2=hL2#";2. Weihnachtstag,Zweiter Weihnachtstag,2. Weihnachtsfeiertag,Zweiter Weihnachtsfeiertag,Stefanitag,Stefanstag,26.12.";if((tS4=="D-BW")||(tS4=="D-BY")||(tS4=="D-BE")){hL3=hL3#";1";}else{if((tS4=="D-BB")||(tS4=="D-ST")){hL3=hL3#";2";}else{if(tS4=="D-TH"){hL3=hL3#";3";}else{if(tS3=="A"){hL3=hL3#";4";}else{if(tS3=="CH"){hL3=hL3#";5";}else{hL3=hL3#";0";}}}}}if((tS3=="D")||(tS3=="A")||(tS4=="CH-BE")||(tS4=="CH-BL")||(tS4=="CH-BS")||(tS4=="CH-GL")||(tS4=="CH-GR")||(tS4=="CH-LU")||(tS4=="CH-SG")||(tS4=="CH-SH")||(tS4=="CH-TG")||(tS4=="CH-TI")||(tS4=="CH-ZH")||(tS4=="CH-SZ")||(tS4=="CH-FR")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-ZG")){hL4=hL4#";25";}
hL1=hL1#";31.12.";hL2=hL2#";Silvester,31.12.";hL3=hL3#";-1";hL1=hL1#";OS-52";hL2=hL2#";Weiberfastnacht,OS-52";hL3=hL3#";-1";hL1=hL1#";OS-49";hL2=hL2#";Faschingssonntag,OS-49";hL3=hL3#";-1";hL1=hL1#";OS-48";hL2=hL2#";Rosenmontag,OS-48";hL3=hL3#";-1";hL1=hL1#";OS-47";hL2=hL2#";Faschingsdienstag,OS-47";hL3=hL3#";-1";
hL1=hL1#";OS-46";hL2=hL2#";Aschermittwoch,OS-46";hL3=hL3#";-1";hL1=hL1#";OS-7";hL2=hL2#";Palmsonntag,OS-7";hL3=hL3#";-1";hL1=hL1#";OS-3";hL2=hL2#";Gründonnerstag,OS-3";hL3=hL3#";-1";
hL1=hL1#";OS-2";hL2=hL2#";Karfreitag,OS-2";hL3=hL3#";-1";if((tS3=="D")||(tS4=="A-1")||(tS4=="CH-AG")||(tS4=="CH-AI")||(tS4=="CH-AR")||(tS4=="CH-BE")||(tS4=="CH-BL")||(tS4=="CH-BS")||(tS4=="CH-FR")||(tS4=="CH-GE")||(tS4=="CH-GL")||(tS4=="CH-GR")||(tS4=="CH-JU")||(tS4=="CH-LU")||(tS4=="CH-NE")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-SG")||(tS4=="CH-SH")||(tS4=="CH-SO")||(tS4=="CH-SZ")||(tS4=="CH-TG")||(tS4=="CH-UR")||(tS4=="CH-VD")||(tS4=="CH-ZG")||(tS4=="CH-ZH")){hL4=hL4#";34";}
hL1=hL1#";OS-1";hL2=hL2#";Ostersamstag,Karsamstag,OS-1";hL3=hL3#";-1";hL1=hL1#";OS+0";hL2=hL2#";Ostersonntag,OS+0";hL3=hL3#";-1";if(tS4=="D-BB"){hL4=hL4#";36";}
hL1=hL1#";OS+1";hL2=hL2#";Ostermontag,OS+1";hL3=hL3#";-1";if((tS3=="D")||(tS3=="A")||(tS4=="CH-AI")||(tS4=="CH-AR")||(tS4=="CH-BE")||(tS4=="CH-BL")||(tS4=="CH-BS")||(tS4=="CH-GE")||(tS4=="CH-GL")||(tS4=="CH-GR")||(tS4=="CH-JU")||(tS4=="CH-SG")||(tS4=="CH-SH")||(tS4=="CH-TG")||(tS4=="CH-TI")||(tS4=="CH-VD")||(tS4=="CH-ZH")||(tS4=="CH-SZ")||(tS4=="CH-UR")||(tS4=="CH-FR")||(tS4=="CH-LU")||(tS4=="CH-NE")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-ZG")){hL4=hL4#";37";}
hL1=hL1#";OS+39";hL2=hL2#";Christi Himmelfahrt,Christi Himmelfahrtstag,Christi-Himmelfahrtstag,Christi-Himmelfahrts-Tag,Himmelfahrtstag,Auffahrt,Vatertag,OS+39";if(tS4=="D-BB"){hL3=hL3#";1";}else{if(tS4=="D-MV"){hL3=hL3#";2";}else{if(tS4=="D-NW"){hL3=hL3#";3";}else{if((tS4=="D-BE")||(tS4=="D-HB")||(tS4=="D-HE")||(tS4=="D-HH")||(tS4=="D-NI")||(tS4=="D-SH")){hL3=hL3#";4";}else{if(tS3=="CH"){hL3=hL3#";5";}else{hL3=hL3#";0";}}}}}if((tS3=="D")||(tS3=="A")||(tS3=="CH")){hL4=hL4#";38";}
hL1=hL1#";OS+49";hL2=hL2#";Pfingstsonntag,OS+49";hL3=hL3#";-1";if(tS4=="D-BB"){hL4=hL4#";39";}
hL1=hL1#";OS+50";hL2=hL2#";Pfingstmontag,OS+50";hL3=hL3#";-1";if((tS3=="D")||(tS3=="A")||(tS4=="CH-AI")||(tS4=="CH-AR")||(tS4=="CH-BE")||(tS4=="CH-BL")||(tS4=="CH-BS")||(tS4=="CH-GE")||(tS4=="CH-GR")||(tS4=="CH-JU")||(tS4=="CH-SG")||(tS4=="CH-SH")||(tS4=="CH-TG")||(tS4=="CH-VD")||(tS4=="CH-ZH")||(tS4=="CH-GL")||(tS4=="CH-SZ")||(tS4=="CH-TI")||(tS4=="CH-UR")||(tS4=="CH-FR")||(tS4=="CH-LU")||(tS4=="CH-NE")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-ZG")){hL4=hL4#";40";}
hL1=hL1#";OS+56";hL2=hL2#";Dreieinigkeit,Trinitatis,OS+56";hL3=hL3#";-1";
hL1=hL1#";OS+60";hL2=hL2#";Fronleichnam,Fronleichnamstag,OS+60";if((tS4=="D-HE")||(tS4=="D-NW")||(tS4=="D-RP")||(tS4=="D-SL")){hL3=hL3#";1";}else{hL3=hL3#";0";}if((tS3=="A")||(tS4=="D-BW")||(tS4=="D-BY")||(tS4=="D-HE")||(tS4=="D-NW")||(tS4=="D-RP")||(tS4=="D-SL")||(tS5=="D-SN-1")||(tS5=="D-TH-1")||(tS4=="CH-AI")||(tS4=="CH-JU")||(tS4=="CH-LU")||(tS4=="CH-NW")||(tS4=="CH-OW")||(tS4=="CH-SZ")||(tS4=="CH-UR")||(tS4=="CH-VS")||(tS4=="CH-ZG")||(tS4=="CH-TI")){hL4=hL4#";42";}
hL1=hL1#";OS+68";hL2=hL2#";Herz-Jesu-Freitag,OS+68";hL3=hL3#";-1";hL1=hL1#";AD-14";hL2=hL2#";Volkstrauertag,AD-14";hL3=hL3#";-1";hL1=hL1#";AD-11";hL2=hL2#";Buß- und Bettag,AD-11";hL3=hL3#";-1";if(tS4=="D-SN"){hL4=hL4#";45";}hL1=hL1#";AD-7";hL2=hL2#";Totensonntag,Ewigkeitssonntag,AD-7";hL3=hL3#";-1";
hL1=hL1#";AD+0";hL2=hL2#";1. Advent,AD+0";hL3=hL3#";-1";hL1=hL1#";AD+7";hL2=hL2#";2. Advent,AD+7";hL3=hL3#";-1";hL1=hL1#";AD+14";hL2=hL2#";3. Advent,AD+14";hL3=hL3#";-1";hL1=hL1#";AD+21";hL2=hL2#";4. Advent,AD+21";hL3=hL3#";-1";hL1=hL1#";MT+0";hL2=hL2#";Muttertag,MT+0";hL3=hL3#";-1";hL1=hL1#";ED+0";hL2=hL2#";Erntedankfest,ED+0";hL3=hL3#";-1";
hI1=52;if(hL1.Find(";")==0){hL1=hL1.Substr(1,(hL1.Length()-1));}if(hL2.Find(";")==0){hL2=hL2.Substr(1,(hL2.Length()-1));}if(hL3.Find(";")==0){hL3=hL3.Substr(1,(hL3.Length()-1));}if(hL4.Find(";")==0){hL4=hL4.Substr(1,(hL4.Length()-1));}
tL1="41;40;61;81;101";tL2="-1;1;2;3;4";z1=0;while(z1<5){tI1=(tL1.StrValueByIndex(";",z1)).ToInteger();if(((lCO1.StrValueByIndex(";",tI1)).StrValueByIndex("-",0)).ToInteger()>0){tS1="";tO1=hO1.Get(lON1.StrValueByIndex(";",tI1));
if(tO1.ValueType()==ivtString){tS1=tO1.Value();}else{if((tO1.ValueType()==ivtInteger)&&(tO1.ValueSubType()==istEnum)){tS1=tO1.ValueList();}}if((tS1.Length()>1)&&(tS1<>"00.00.")){lSP1="";foreach(lSP1,tS1.Split(";")){tS2="";tS3="";tS4="";tI2=-1;tB1=false;
if(lSP1.Find("=")>=0){tS4=lSP1.StrValueByIndex("=",0);tS3=lSP1.StrValueByIndex("=",1);tB1=true;}else{tS4=lSP1;}tS2=tS4;if(tB1==false){z2=0;foreach(lSP2,hL2.Split(";")){foreach(lSP3,lSP2.Split(",")){if(lSP3==tS4){tI2=z2;}}z2=z2+1;}}tI3=(tL2.StrValueByIndex(";",z1)).ToInteger();
if(tI3>=0){if((tS2<>"")||(tI2>=0)){if(tI2==-1){hI1=hI1+1;tI2=hI1;if(hL1<>""){hL1=hL1#";";}hL1=hL1#tS2;if(tS3==""){tS3=hS3;}if(hL2<>""){hL2=hL2#";";}hL2=hL2#tS3#","#tS2;if(hL3<>""){hL3=hL3#";";}hL3=hL3#"-1";}if(tI3==1){if(hL4<>""){hL4=hL4#";";}hL4=hL4#tI2.ToString(0);}if(tI3==2){
if(hL5<>""){hL5=hL5#";";}hL5=hL5#tI2.ToString(0);}if(tI3==3){if(hL6<>""){hL6=hL6#";";}hL6=hL6#tI2.ToString(0);}if(tI3==4){if(hL7<>""){hL7=hL7#";";}hL7=hL7#tI2.ToString(0);}}}else{if(tI2>=0){tS6=tI2.ToString(0);tL3="";foreach(lSP2,hL4.Split(";")){if(lSP2<>tS6){if(tL3<>""){tL3=tL3#";";}tL3=tL3#lSP2;}}hL4=tL3;}}}}}z1=z1+1;}
tL1="1;1;1;1;1;1;1;1;1;1;2;2;2;2;2;2;2;2;2;2;3;3;3;3;3;3;3;3;3;3;4;4;4;4;4;5;5;5;5;5;6;7;8;9";tL2="316;321;326;331;336;341;346;351;356;361;438;444;450;456;462;468;474;480;486;492;368;375;382;389;396;403;410;417;424;431;138;155;172;189;206;227;244;261;278;295;41;61;81;101";tL3=(hD1+172800).Format("%Y%m%d")#";"#(hD1+86400).Format("%Y%m%d")#";"#hD1.Format("%Y%m%d")#";"#(hD1-86400).Format("%Y%m%d")#";"#(hD1-172800).Format("%Y%m%d");
tS2="";z1=0;while(z1<44){if((z1==10)||(z1==20)||(z1==30)||(z1==35)||(z1==40)){tS2="";}tB1=false;tB2=true;tI1=(tL1.StrValueByIndex(";",z1)).ToInteger();tI2=(tL2.StrValueByIndex(";",z1)).ToInteger();tL4="";tL5="";tL6="";tL7="";
if(tI1<>6){if(((lCO1.StrValueByIndex(";",tI2)).StrValueByIndex("-",0)).ToInteger()==0){tB2=false;}}if(tB2){tS1="";if((tI1==1)||(tI1==2)||(tI1==3)||(tI1==4)||(tI1==5)){tO1=hO1.Get(lON1.StrValueByIndex(";",tI2));if(tO1.ValueType()==ivtString){tS1=tO1.Value();}else{
if((tO1.ValueType()==ivtInteger)&&(tO1.ValueSubType()==istEnum)){tS1=tO1.ValueList();}else{tB1=true;}}if(tS1.Length()<4){tB2=false;}}else{if(tI1==6){tS1=hL4;}if(tI1==7){tS1=hL5;}if(tI1==8){tS1=hL6;}if(tI1==9){tS1=hL7;}if(tS1==""){tB2=false;}}if((tB1==false)&&(tB2)){lSP1="";
foreach(lSP1,tS1.Split(";")){tB2=true;tI4=0;tI5=0;tS3="";tS4="";tS5="";if((tI1==1)||(tI1==2)||(tI1==3)||(tI1==4)||(tI1==5)){tS7=lSP1;}else{tS3=lSP1;tS7=hL1.StrValueByIndex(";",(tS3.ToInteger()));}tS6="";if(tS7.Find("=")>=0){tS6=tS7.StrValueByIndex("=",0);tS3=tS7.StrValueByIndex("=",1);
if((tI1<>4)&&(tI1<>5)){tB2=false;}}else{tS6=tS7;}if(tS6.Find(",")>=0){tS4=tS6.StrValueByIndex(",",0);tS5=tS6.StrValueByIndex(",",1);tI2=2;if((tI1<>3)&&(tI1<>4)&&(tI1<>5)){tB2=false;}}else{tS4=tS6;tI2=1;}tB3=false;tB4=false;if(tB2){z2=1;while(z2<=tI2){tB2=false;tB5=true;tB6=false;
if(z2==1){tS6=tS4;}else{tS6=tS5;}if(tS6.Length()>=6){if((tS6.Substr(2,1)==".")&&(tS6.Substr(5,1)==".")){tB5=false;if((tS6.Length()==6)||(tS6.Length()==8)||(tS6.Length()==10)){tB2=true;tS7=tS6.Substr(3,2)#tS6.Substr(0,2);if(tS6.Length()==10){tS7=tS6.Substr(6,4)#tS7;}else{
if(tS6.Length()==8){tS7=(hD1.Format("%Y")).Substr(0,2)#tS6.Substr(6,2)#tS7;}else{tS7=hD1.Format("%Y")#tS7;tB6=true;}}if(z2==1){tS4=tS7;}else{tS5=tS7;}}}}if(tB5){tS7=tS6.Substr(0,3);
if((tS7=="TD+")||(tS7=="TD-")||(tS7=="OS+")||(tS7=="OS-")||(tS7=="AD+")||(tS7=="AD-")||(tS7=="MT+")||(tS7=="MT-")||(tS7=="ED+")||(tS7=="ED-")){tB2=true;if(tS6.Find(".")>=0){tS7=tS6.StrValueByIndex(".",0);tS8=tS6.StrValueByIndex(".",1);if((tS7.Length()>=4)&&((tS8.Length()==2)||(tS8.Length()==4))){
if(tS8.Length()==2){tS6=tS7#"."#(hD1.Format("%Y")).Substr(0,2)#tS8;}}else{tB2=false;}}else{tS7=tS6;tS6=tS7#"."#hD1.Format("%Y");tB6=true;}if(tB2){tS7=tS7.Substr(3,(tS7.Length()-3))#tS6.Substr((tS6.Length()-4),4);if(z2==1){tS4=tS6;}else{tS5=tS6;}}}else{tB2=false;}}if(tB2){
z3=tS7.Length()-1;while(z3>=0){tS6=tS7.Substr(z3,1);if((tS6<>"0")&&(tS6<>"1")&&(tS6<>"2")&&(tS6<>"3")&&(tS6<>"4")&&(tS6<>"5")&&(tS6<>"6")&&(tS6<>"7")&&(tS6<>"8")&&(tS6<>"9")){tB2=false;z3=0;}z3=z3-1;}}if((tB2)&&(tB5==false)){tI6=(tS7.Substr(6,2)).ToInteger();tI7=(tS7.Substr(4,2)).ToInteger();
if((tI6<1)||(tI6>31)||(tI7<1)||(tI7>12)||((tI6>30)&&((tI7==4)||(tI7==6)||(tI7==9)||(tI7==11)))||((tI7==2)&&(tI6>29))){tB2=false;}else{if((tI6==29)&&(tI7==2)&&(tB6==false)){tD1=(tS7.Substr(0,4)#"-"#tS7.Substr(4,2)#"-"#tS7.Substr(6,2)#" 06:00:00").ToTime();if(tD1.Format("%F")=="1970-01-01"){
tB2=false;}}}}if(tB2){if(z2==1){tB3=tB6;}else{tB4=tB6;}}else{z2=tI2;}z2=z2+1;}}if(tB2){z2=1;while(z2<=tI2){if(z2==1){tS6=tS4;tB6=tB3;}else{tS6=tS5;tB6=tB4;}tI6=1;while(tI6<>0){tB5=false;tS7=tS6.Substr(0,1);if((tS7=="T")||(tS7=="O")||(tS7=="M")||(tS7=="E")||(tS7=="A")){tB5=true;}
if(tB5){tS7=tS6.Substr((tS6.Length()-4),4);if(tS6.Substr(0,2)=="TD"){tD2=(tS7#"-"#hD1.Format("%m")#"-"#hD1.Format("%d")#" 06:00:00").ToTime();if(tD2.Format("%F")=="1970-01-01"){tD2=(tS7#"-02-28 06:00:00").ToTime();}}if(tS6.Substr(0,2)=="OS"){tI7=tS7.ToInteger();tI8=((19*(tI7%19))+(15+(((3*(tI7/100))+3)/4)-(((8*(tI7/100))+13)/25)))%30;tI8=tI8-((tI8/29)+(((tI8/28)-(tI8/29))*((tI7%19)/11)));
tI8=(21+tI8)+(7-(((21+tI8)-(7-((tI7+(tI7/4)+(2-(((3*(tI7/100))+3)/4)))%7)))%7));tS8=tS7#"-";if(tI8>31){tI8=tI8-31;tS8=tS8#"04-";}else{tS8=tS8#"03-";}if(tI8<10){tS8=tS8#"0";}tD2=(tS8#tI8.ToString(0)#" 06:00:00").ToTime();}if(tS6.Substr(0,2)=="AD"){tD1=(tS7#"-12-25 06:00:00").ToTime();
tD2=tD1-(((tD1.Format("%u")).ToInteger()+21)*86400);}if(tS6.Substr(0,2)=="MT"){tD1=(tS7#"-05-01 06:00:00").ToTime();tD2=(tS7#"-05-15 06:00:00").ToTime()-((tD1.Format("%u")).ToInteger()*86400);}if(tS6.Substr(0,2)=="ED"){tD1=(tS7#"-10-01 06:00:00").ToTime();
tD2=tD1+((7-(tD1.Format("%u")).ToInteger())*86400);}tI7=1;if(tS6.Substr(2,1)=="-"){tI7=-1;}tI8=(tS6.Substr(3,(tS6.Length()-8))).ToInteger()*86400;tD1=tD2+(tI8*tI7);tS6=tD1.Format("%Y%m%d");}
else{if((tS6.Substr(4,4)=="0229")){tI7=(tS6.Substr(4,4)).ToInteger();tI8=1;if((tI6==2)||(tI6==4)||(tI6==9)||(tI6==10)){tI8=-1;}tB7=true;while(tB7){if((tI7%400)==0){tB7=false;}else{if((tI7%100)==0){tB7=true;}else{if((tI7%4)==0){tB7=false;}}}if(tB7){tI7=tI7+tI8;}}tS6=tI7.ToString(0)#"0229";}}
tI7=tS6.ToInteger();if((z2==1)||(tI6==4)||(tI6==7)||(tI6==9)){tI4=tI7;}if((tI2==1)||((tI6==1)&&(z2==2))||(tI6==5)||(tI6==6)||(tI6==8)||(tI6==10)){tI5=tI7;}if(tI6==1){if(z2==1){if(tB5){tI3=(tS4.Substr((tS4.Length()-4),4)).ToInteger();}else{tI3=(tS4.Substr(0,4)).ToInteger();}}else{if(tB5){tI9=(tS5.Substr((tS5.Length()-4),4)).ToInteger();}else{tI9=(tS5.Substr(0,4)).ToInteger();}}}tI8=(tL3.StrValueByIndex(";",2)).ToInteger();if(tI2==1){if(tB3){if(tI4>tI8){if((tI6==1)||(tI6==2)){tI6=2;tI3=tI3-1;}else{tI6=1;}}else{if((tI6==1)||(tI6==3)){tI6=3;tI3=tI3+1;}else
{tI6=1;}}}else{tI6=1;}}else{if(z2==2){if(tI6==1){if((tB3)&&(tB4)){if(tI4>tI5){tI9=tI9+1;tI6=6;}else{if(tI4<tI8){tI3=tI3+1;tI6=7;}else{tI3=tI3-1;tI6=9;}}}else{if((tB3)||(tB4)){if(tB3){if(tI4>tI5){tI3=tI3-1;tI6=4;}}else{if(tI4>tI5){tI9=tI9+1;tI6=5;}}}else{if(tI4>tI5){tB2=true;tI6=0;}}}}else{if(tI6==4){if(tI4>tI5){tI3=tI3-1;}else{tI6=1;}}if(tI6==5){if(tI4>tI5){tI9=tI9+1;}else{tI6=1;}}if(tI6==6){if(tI4>tI5){tI9=tI9+1;}else{tI6=8;}}if(tI6==7){tI9=tI9+1;tI6=8;}else{if(tI6==8){if(tI4<tI8){tI3=tI3+1;tI6=7;}else{tI6=10;}}}if(tI6==9){tI9=tI9-1;tI6=10;}
else{if(tI6==10){if(tI5>((tL3.StrValueByIndex(";",4)).ToInteger())){tI3=tI3-1;tI6=9;}else{tI6=1;}}}}}}if((tI2==1)||((z2==2)&&(tI6==1))||(tI6==9)){if((tI1==3)||(tI1==4)||(tI1==5)){if(tS3<>"1"){tL4=tL4#";"#tI4.ToString(0);tL5=tL5#";"#tI5.ToString(0);}else{tL6=tL6#";"#tI4.ToString(0);tL7=tL7#";"#tI5.ToString(0);}}else{tL4=tL4#";"#tI4.ToString(0);tL5=tL5#";"#tI5.ToString(0);if((tI1==6)||(tI1==7)||(tI1==8)||(tI1==9)){tL6=tL6#";"#tS3;}}}if((tI6==2)||(tI6==3)||(tI6==4)||(tI6==7)||(tI6==9)){tS6=tS4.Substr(0,1);if((tS6=="T")||(tS6=="O")||(tS6=="M")||(tS6=="E")||(tS6=="A")){tS6=tS4.Substr(0,(tS4.Length()-4))#tI3.ToString(0);}
else{tS6=tI3.ToString(0)#tS4.Substr(4,4);}tS4=tS6;}if((tI6==5)||(tI6==6)||(tI6==8)||(tI6==10)){tS6=tS5.Substr(0,1);if((tS6=="T")||(tS6=="O")||(tS6=="M")||(tS6=="E")||(tS6=="A")){tS6=tS5.Substr(0,(tS5.Length()-4))#tI9.ToString(0);}else{tS6=tI9.ToString(0)#tS5.Substr(4,4);}tS5=tS6;}if(tI6==1){tI6=0;}}z2=z2+1;}}if(tB2==false){tB1=true;}}if(tL4.Find(";")==0){tL4=tL4.Substr(1,(tL4.Length()-1));}if(tL5.Find(";")==0){tL5=tL5.Substr(1,(tL5.Length()-1));}if(tL6.Find(";")==0){tL6=tL6.Substr(1,(tL6.Length()-1));}if(tL7.Find(";")==0){tL7=tL7.Substr(1,(tL7.Length()-1));}z2=1;
while(z2<=3){if(z2==2){tL4=tL6;tL5=tL7;}tI4=(tL3.StrValueByIndex(";",0)).ToInteger();tI5=(tL3.StrValueByIndex(";",1)).ToInteger();tI6=(tL3.StrValueByIndex(";",2)).ToInteger();tI7=(tL3.StrValueByIndex(";",3)).ToInteger();tI8=(tL3.StrValueByIndex(";",4)).ToInteger();tI3=99999999;tB2=false;tB3=false;tB4=false;tB5=false;tB6=false;tB7=false;tS4="-1";tS5="-1";tS6="-1";tS7="-1";tS8="-1";tS9="-1";if((tI1==6)||(tI1==7)||(tI1==8)||(tI1==9)){tB7=true;}if((z2<3)&&(tL4.Length()>0)){z3=0;foreach(lSP1,tL4.Split(";")){tI9=lSP1.ToInteger();
tI10=(tL5.StrValueByIndex(";",z3)).ToInteger();if((tI9<=tI4)&&(tI10>=tI4)){tB2=true;if(tB7){tS4=tL6.StrValueByIndex(";",z3);}}if((tI9<=tI5)&&(tI10>=tI5)){tB3=true;if(tB7){tS5=tL6.StrValueByIndex(";",z3);}}if((tI9<=tI6)&&(tI10>=tI6)){tB4=true;if(tB7){tS6=tL6.StrValueByIndex(";",z3);}}if((tI9<=tI7)&&(tI10>=tI7)){tB5=true;if(tB7){tS7=tL6.StrValueByIndex(";",z3);}}if((tI9<=tI8)&&(tI10>=tI8)){tB6=true;if(tB7){tS8=tL6.StrValueByIndex(";",z3);}}if((tI1<>3)&&(tI1<>4)&&(tI1<>5)){
if((tI9>=tI6)&&(tI9<tI3)){tI3=tI9;if(tB7){tS9=tL6.StrValueByIndex(";",z3);}}}z3=z3+1;}if((tI1<>3)&&(tI1<>4)&&(tI1<>5)){tI4=tI3;}}if((tI1==3)||(tI1==4)||(tI1==5)){tI4=tI3;if((z2<3)&&(tL4.Length()>0)){lDoLoop1=true;while(lDoLoop1){lDoLoop1=false;z3=0;foreach(lSP1,tL4.Split(";")){tI9=lSP1.ToInteger();tS3=tL5.StrValueByIndex(";",z3);tI10=tS3.ToInteger();if(tI3<>99999999){
tS3=tI3.ToString(0);tD1=((((tS3.Substr(0,4)#"-"#tS3.Substr(4,2)#"-"#tS3.Substr(6,2)#" 06:00:00").ToTime())-86400).Format("%F")#" 06:00:00").ToTime();tS3=tI4.ToString(0);tD2=((((tS3.Substr(0,4)#"-"#tS3.Substr(4,2)#"-"#tS3.Substr(6,2)#" 06:00:00").ToTime())+86400).Format("%F")#" 06:00:00").ToTime();
if(((tI9<=(tD1.Format("%Y%m%d")).ToInteger())&&(tI10>=(tD1.Format("%Y%m%d")).ToInteger()))||(tI9==(tD2.Format("%Y%m%d")).ToInteger())||((tI9>=(tD1.Format("%Y%m%d")).ToInteger())&&(tI9<=(tD2.Format("%Y%m%d")).ToInteger()))){if(tI9<tI3){tI3=tI9;lDoLoop1=true;}if(tI10>tI4){tI4=tI10;lDoLoop1=true;}}else{if((tI9<tI3)&&(tI10>=tI6)){tI3=tI9;tI4=tI10;lDoLoop1=true;}}}else{
if(tI10>=tI6){tI3=tI9;tI4=tI10;lDoLoop1=true;}}z3=z3+1;}}}}if(tB7){tS4=tS4#";"#tS5#";"#tS6#";"#tS7#";"#tS8#";"#tS9;}if(z2<>3){if(tB2){tS2=tS2#"1";}else{tS2=tS2#"0";}if(tB3){tS2=tS2#"1";}else{tS2=tS2#"0";}if(tB4){tS2=tS2#"1";}else{tS2=tS2#"0";}if(tB5){tS2=tS2#"1";}else{tS2=tS2#"0";}if(tB6){tS2=tS2#"1";}else{tS2=tS2#"0";}tS2=tS2#tI3.ToString(0);}else{tI5=tS2.Length();z3=tI5-26;while(z3<tI5){
if(tS2.Substr(z3,1)=="1"){tB2=true;}if(tS2.Substr(z3+1,1)=="1"){tB3=true;}if(tS2.Substr(z3+2,1)=="1"){tB4=true;}if(tS2.Substr(z3+3,1)=="1"){tB5=true;}if(tS2.Substr(z3+4,1)=="1"){tB6=true;}if(tI3>(tS2.Substr(z3+5,8)).ToInteger()){tI3=(tS2.Substr(z3+5,8)).ToInteger();}z3=z3+13;}tI4=tI3;}if(tI1==1){tL4="0;2;1;0;0;4;3;0;0;0;0;0;0;0;0;0;0;0;0;0";}if(tI1==2){tL4="0;2;1;3;0;5;4;0;0;0;0;0;0;0;0;0;0;0;0;0";}if(tI1==3){tL4="0;2;1;3;0;6;4;5;0;0;0;0;0;0;0;0;0;0;0;0";}if((tI1==4)||(tI1==5)){
if(z2==1){tL4="0;6;5;7;0;10;8;9;0;0;0;0;0;0;0;0;0;0;0;0";}if(z2==2){tL4="0;12;11;13;0;16;14;15;0;0;0;0;0;0;0;0;0;0;0;0";}if(z2==3){tL4="0;2;1;3;0;0;4;0;0;0;0;0;0;0;0;0;0;0;0;0";}}if((tI1==6)||(tI1==7)||(tI1==8)||(tI1==9)){tL4="10;4;1;7;13;18;16;0;11;12;5;6;2;3;8;9;14;15;17;19";}tI2=(tL2.StrValueByIndex(";",z1)).ToInteger();z3=0;while(z3<20){tI5=(tL4.StrValueByIndex(";",z3)).ToInteger();if(tI5<>0){tV1=null;
if(((lCO1.StrValueByIndex(";",tI2+tI5)).StrValueByIndex("-",0)).ToInteger()>0){tO1=hO1.Get(lON1.StrValueByIndex(";",tI2+tI5));if((z3==0)||(z3==1)||(z3==2)||(z3==3)||(z3==4)){tV1=0;if(z3==0){if(tB2){tV1=1;}}if(z3==1){if(tB3){tV1=1;}}if(z3==2){if(tB4){tV1=1;}}if(z3==3){if(tB5){tV1=1;}}if(z3==4){if(tB6){tV1=1;
}}if(tO1.ValueType()==ivtInteger){if((web.webGetValueListCount(tO1.ValueList())).ToInteger()>2){tV1=tV1+1;}}}if((z3==5)||(z3==6)||(z3==7)){if(tI3<>99999999){tS3=tI3.ToString();tD1=(tS3.Substr(0,4)#"-"#tS3.Substr(4,2)#"-"#tS3.Substr(6,2)#" 06:00:00").ToTime();}if(tI4<>99999999){tS3=tI4.ToString();tD2=(tS3.Substr(0,4)#"-"#tS3.Substr(4,2)#"-"#tS3.Substr(6,2)#" 06:00:00").ToTime();}
if(z3==5){tV1="";if(tI3<>99999999){tV1=(hL9.StrValueByIndex(";",(tD1.Format("%w")).ToInteger()))#", "#tD1.Format("%d.%m.%Y");}if((tI3<>tI4)&&(tI4<>99999999)&&((tI1==3)||(tI1==4)||(tI1==5))){tV1=tV1#" - "#(hL9.StrValueByIndex(";",(tD2.Format("%w")).ToInteger()))#", "#tD2.Format("%d.%m.%Y");}}if(z3==6){if(tB4){tV1=0;}
else{if(tB3){tV1=1;}else{if(tI3==99999999){tV1=tO1.ValueMax();}else{tV1=(((tD1+86400)-hD1).ToInteger()/86400).ToInteger()-1;}}}}if(z3==7){if(tI4==99999999){tV1=tO1.ValueMax();}else{tV1=(((tD2+86400)-hD1).ToInteger()/86400).ToInteger()-1;}}}if((z3==9)||(z3==11)||(z3==13)||(z3==15)||(z3==17)||(z3==19)||(z3==8)||(z3==10)||(z3==12)||(z3==14)||(z3==16)||(z3==18)){
if((z3==8)||(z3==9)){tI7=0;}if((z3==10)||(z3==11)){tI7=1;}if((z3==12)||(z3==13)){tI7=2;}if((z3==14)||(z3==15)){tI7=3;}if((z3==16)||(z3==17)){tI7=4;}if((z3==18)||(z3==19)){tI7=5;}tI8=(tS4.StrValueByIndex(";",tI7)).ToInteger();if((z3==9)||(z3==11)||(z3==13)||(z3==15)||(z3==17)||(z3==19)){tV1="";if(tI8>=0){tI7=(hL3.StrValueByIndex(";",tI8)).ToInteger();if(tI7<0){tI7=0;}tV1=(hL2.StrValueByIndex(";",tI8)).StrValueByIndex(",",tI7);}}if((z3==8)||(z3==10)||(z3==12)||(z3==14)||(z3==16)||(z3==18)){tV1=-1;tS6=tO1.ValueList();if(tI8>=0){tS5=hL2.StrValueByIndex(";",tI8);}else{tS5=hS2;}tI9=-1;tI7=0;
foreach(lSP1,tS6.Split(";")){foreach(lSP2,tS5.Split(",")){if(lSP2==lSP1){tV1=tI7;}}if(lSP1==hS2){tI9=tI7;}tI7=tI7+1;}if(tV1==-1){if(tI9==-1){tV1=tO1.Value();}else{tV1=tI9;}}}}tO1.State(tV1);}}z3=z3+1;}if((tI1<>4)&&(tI1<>5)){z2=3;}z2=z2+1;}}if(tB1){system.Exec("logger -t script -p user.debug Konfigurationsfehler in "#tO1.Name(),&lGetOut1,&lGetError1);if(((lCO1.StrValueByIndex(";",0)).StrValueByIndex("-",0)).ToInteger()>0){(hO1.Get(lON1.StrValueByIndex(";",0))).State("Konfigurationsfehler in: "#tO1.Name());}}}if(z1==40){hL8=tS2;}if((z1==9)||(z1==34)||(z1==39)||(z1==43)){tB2=false;tB3=false;tB4=false;tB5=false;tB6=false;tI3=tS2.Length();
if(tI3>0){tI4=99999999;z2=0;while(z2<tI3){if(tS2.Substr(z2,1)=="1"){tB2=true;}if(tS2.Substr(z2+1,1)=="1"){tB3=true;}if(tS2.Substr(z2+2,1)=="1"){tB4=true;}if(tS2.Substr(z2+3,1)=="1"){tB5=true;}if(tS2.Substr(z2+4,1)=="1"){tB6=true;}if(tI4>(tS2.Substr(z2+5,8)).ToInteger()){tI4=(tS2.Substr(z2+5,8)).ToInteger();}
z2=z2+13;}tL4="-1;-1;-1;-1;-1;-1;-1";if(z1==9){tL4="-1;367;366;-1;-1;-1;-1";}if(z1==34){tL4="-1;224;223;225;-1;-1;226";}if(z1==39){tL4="-1;313;312;314;-1;-1;315";}if(z1==43){tL4="124;122;121;123;125;-1;-1";}z2=0;while(z2<7){tI5=(tL4.StrValueByIndex(";",z2)).ToInteger();if(tI5<>-1){tV1=null;if(((lCO1.StrValueByIndex(";",tI5)).StrValueByIndex("-",0)).ToInteger()>0){tO1=hO1.Get(lON1.StrValueByIndex(";",tI5));
if((z2==0)||(z2==1)||(z2==2)||(z2==3)||(z2==4)){tV1=0;if(z2==0){if(tB2){tV1=1;}}if(z2==1){if(tB3){tV1=1;}}if(z2==2){if(tB4){tV1=1;}}if(z2==3){if(tB5){tV1=1;}}if(z2==4){if(tB6){tV1=1;}}if(tO1.ValueType()==ivtInteger){
if((web.webGetValueListCount(tO1.ValueList())).ToInteger()>2){tV1=tV1+1;}}}if(z2==6){if(tI4<>99999999){tS3=tI4.ToString();tD1=(tS3.Substr(0,4)#"-"#tS3.Substr(4,2)#"-"#tS3.Substr(6,2)#" 06:00:00").ToTime();}if(z2==6){if(tB4){tV1=0;}else{if(tB3){tV1=1;}else{if(tI3==99999999){tV1=tO1.ValueMax();}else{tV1=(((tD1+86400)-hD1).ToInteger()/86400).ToInteger()-1;}}}}}tO1.State(tV1);}}z2=z2+1;}}}z1=z1+1;}
if(hL8.Length()>0){tL1="126;127;128;129;130;131;132;133;134;135;136;137";tI1=(hD1.Format("%u")).ToInteger();tB1=false;tB2=false;tB3=false;tB4=false;tB5=false;
if(hL8.Substr(0,1)=="1"){tB1=true;}if(hL8.Substr(1,1)=="1"){tB2=true;}if(hL8.Substr(2,1)=="1"){tB3=true;}if(hL8.Substr(3,1)=="1"){tB4=true;}if(hL8.Substr(4,1)=="1"){tB5=true;}z1=0;while(z1<12){tI2=(tL1.StrValueByIndex(";",z1)).ToInteger();
if(((lCO1.StrValueByIndex(";",tI2)).StrValueByIndex("-",0)).ToInteger()>0){tO1=hO1.Get(lON1.StrValueByIndex(";",tI2));tV1=0;
if(z1==0){if((tB3==false)&&(((tB2)&&(tI1==1))||((tB4)&&(tI1==5)))){tV1=1;}}if(z1==1){if((tB2==false)&&(((tB1)&&(tI1==7))||((tB3)&&(tI1==4)))){tV1=1;}}if(z1==2){if((tB4==false)&&(((tB5)&&(tI1==6))||((tB3)&&(tI1==2)))){tV1=1;}}
if(z1==3){if((tB3==false)&&(((tB2)&&(tI1==1))||((tB4)&&(tI1==5))||((tB2)&&(tB4)&&(tI1>=2)&&(tI1<=4)))){tV1=1;}}if(z1==4){if((tB2==false)&&(((tB1)&&(tI1==7))||((tB3)&&(tI1==4))||((tB1)&&(tB3)&&(tI1>=1)&&(tI1<=3)))){tV1=1;}}if(z1==5){if((tB4==false)&&(((tB5)&&(tI1==6))||((tB3)&&(tI1==2))||((tB5)&&(tB3)&&(tI1>=3)&&(tI1<=5)))){tV1=1;}}
if(z1==6){if((tB3==false)&&(((tB2)&&(tI1==1))||((tB4)&&(tI1==6)))){tV1=1;}}if(z1==7){if((tB2==false)&&(((tB1)&&(tI1==7))||((tB3)&&(tI1==5)))){tV1=1;}}if(z1==8){if((tB4==false)&&(((tB5)&&(tI1==7))||((tB3)&&(tI1==2)))){tV1=1;}}
if(z1==9){if((tB3==false)&&(((tB2)&&(tI1==1))||((tB4)&&(tI1==6))||((tB2)&&(tB4)&&(tI1>=2)&&(tI1<=5)))){tV1=1;}}if(z1==10){if((tB2==false)&&(((tB1)&&(tI1==7))||((tB3)&&(tI1==5))||((tB1)&&(tB3)&&(tI1>=1)&&(tI1<=4)))){tV1=1;}}if(z1==11){if((tB4==false)&&(((tB5)&&(tI1==7))||((tB3)&&(tI1==2))||((tB5)&&(tB3)&&(tI1>=3)&&(tI1<=6)))){tV1=1;}}
if(tO1.ValueType()==ivtInteger){if((web.webGetValueListCount(tO1.ValueList())).ToInteger()>2){tV1=tV1+1;}}tO1.State(tV1);}z1=z1+1;}}
if(((lCO1.StrValueByIndex(";",0)).StrValueByIndex("-",0)).ToInteger()>0){(hO1.Get(lON1.StrValueByIndex(";",0))).State("Skript beendet: "#lScriptName);}
Hat einer ne Ahnung, wie ich dem Fehler auf die schliche komme?
Grüße
Sascha
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Danke Alchy,
habe gerade den Tippfehler in den Werten der Termine gefunden.
Grüße
Sascha
habe gerade den Tippfehler in den Werten der Termine gefunden.
Grüße
Sascha
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Nicht mir gebührt der Dank. Aber Hauptsache es läuft.
Alchy
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Hallo,
ich habe folgendes Problem zur Zeit, ich lege mir Systemvariablen als Werteliste an für die verschiedenen Abfalltonnen und auch Urlaub.
Als Beispiel SYS-Abfall-Gelb-Termine :
Firmware der CCU2 2.31.25, CCU2 neu gestarted.
Kennt jemand das Problem ?
Vielen Dank im Voraus
Thomas
ich habe folgendes Problem zur Zeit, ich lege mir Systemvariablen als Werteliste an für die verschiedenen Abfalltonnen und auch Urlaub.
Als Beispiel SYS-Abfall-Gelb-Termine :
- 02.03.2018; 29.03.2018; 27.04.2018; 26.05.2018; 22.06.2018; 20.07.2018; 18.08.2018; 14.09.2018; 12.10.2018; 09.11.2018; 07.12.2018
Firmware der CCU2 2.31.25, CCU2 neu gestarted.
Kennt jemand das Problem ?
Vielen Dank im Voraus
Thomas
Grüße aus Oberbayern
Thomas
Thomas
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Kalender-Script V2.x - MEGA-Version für D-A-CH
Das ist *IMHO* ein Bug, da das in deiner Wertzuweisung enthaltene Steuerzeichen (ENTER) dafür sorgt, das die Variable in der Klickibunti nicht mehr zu bearbeiten ist.
Alchy
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.