Hauptmenü

[FHZ] Feiertage?

Begonnen von Guest, 07 Mai 2009, 17:27:55

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Hallo.

Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
aktuell ein Feiertag vorliegt?

Für statische Feiertage (Weihnachten, 1. Mai etc.) ist das recht
trivial, denke ich, für bewegliche Feiertage (Ostern, Pfingsten etc.)
ist es etwas komplizierter, aber mit DateTime::Event::Easter (siehe
CPAN) sollte es recht einfach sein, zumindest für die Oster-bezogenen
Feiertage (von Aschermittwoch bis Pfingsten). Die restlichen paar
beweglichen Feiertage, von denen ich mal gehört habe, sollten auch
relativ einfach machbar sein, das sie immer einer zu "erster Sonntag im
März" ähnlichen Regel folgen.

Idealerweise könnte der Benutzer für bestimmte Feiertage angeben, ob sie
relevant sind oder nicht.

Anwendung: Weckfunktion, die nur an Arbeitstagen aktiv werden soll (also
nicht Wochenende und nicht gesetzlicher Feiertag).

Leider fehlt es mir momentan an drei Dingen, um es selbst zu
implementieren: Zeit, Zeit und Zeit ;-)
Im Ernst: Zeit, Kenntnisse der fhem-Interna, (aktive) Perl-Fähigkeiten.

Vorschlag, wie der Benutzer es konfigurieren könnte:
- Ein entsprechendes Modul muss aktiviert werden
- Das Modul liest eine Konfigurationsdatei

Für die Konfigurationsdatei stelle ich mir folgendes Format vor:
- Kommentarzeilen beginnen mit ^\s*# (also beliebiger
  Whitespace vor einem #)
- Jede andere Zeile definiert einen Feiertag, es gibt drei Typen:
  1) exaktes Datum: ^1\s+MM-DD\s+Name
     Beispiel: 1 12-24 Heiligabend
  2) relativ zu Ostersonntag: ^2\s+[-+]?[0-9]+\s+Name
     Beispiel: 2 +1 Ostermontag
     Beispiel: 2 49 Pfingstsonntag
     Beispiel: 2 -46 Aschermittwoch
  3) relativ im Monat: ^3\s+[+-]?[0-9]+\s+WWW\s+MM\s+Name
     Beispiel: 3 -1 Mon 03 Keine Ahnung
               (letzter Montag im März)
     Beispiel: 3 2 Tue 05 zweiter Dienstag im Mai
  Der Name ist nur zur Orientierung des Benutzers gedacht und könnte
  daher optional sein. Die 1,2 oder 3 am Anfang ist theoretisch nicht
  nötig, da die Unterscheidung auch per RegExp erfolgen könnte.
  Ist nur Pseudo-RegExp-Notation und \s sollte equivalent sein zu
  [[:space:]], also beliebigen Whitespace matchen (ein Space oder ein
  Tab).

Klingt das für Euch vernünftig?

Ciao,
Sven

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

Dr. Boris Neubert

                                             

Hallo,

Sven Mueller wrote:
> Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
> aktuell ein Feiertag vorliegt?

manchmal bin ich fuer pragmatische Loesungen. Die saehe hier fuer diese
Anforderung dann ganz platt so aus, die Liste der (fuer Deinen Standort
relevanten) Feiertage bis 2012 statisch in einer Datei oder im
Programmcode zu hinterlegen. Das leistet das Gewuenschte, ist vermutlich
10x so schnell im produktiven Einsatz, und ueberaus wartungsfreundlich.
Das mildert die durch fehlende Zeit und Perl-Kenntnisse entstehenden
Umsetzungshuerden ;-)

Gruesse,
Boris

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Guest

Originally posted by: <email address deleted>

Dr. Boris Neubert schrieb:
> Sven Mueller wrote:
>> Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
>> aktuell ein Feiertag vorliegt?
>
> manchmal bin ich fuer pragmatische Loesungen. Die saehe hier fuer diese
> Anforderung dann ganz platt so aus, die Liste der (fuer Deinen Standort
> relevanten) Feiertage bis 2012 statisch in einer Datei oder im
> Programmcode zu hinterlegen. Das leistet das Gewuenschte, ist vermutlich
> 10x so schnell im produktiven Einsatz, und ueberaus wartungsfreundlich.
> Das mildert die durch fehlende Zeit und Perl-Kenntnisse entstehenden
> Umsetzungshuerden ;-)

DAS halte ich für eine ganz schlechte Idee. Klar, es würde (evtl.) für
meine Zwecke reichen, aber nur bis ich vergesse, die Liste zu
aktualisieren, wenn sie sozusagen leer läuft.
10x so schnell ist auch nicht sonderlich wahrscheinlich.

Und wartungsfreundlich ist so eine Liste auch nicht gerade, denn alles,
was eine regelmäßige Wartung erfordert (obwohl es vermeidbar wäre), ist
nicht sinnvoll in der Automation.

Davon ab: Woher bekomme ich die Liste der Feiertage bis 2012?

Ciao,
Sven

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

rudolfkoenig

                                                   

> Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
> aktuell ein Feiertag vorliegt?

Da mich das Problem auch schon laenger wurmt, und mir gerade danach
war, habe ich Svens Vorschlag implementiert und ins CVS eingecheckt
(95_holiday.pm). Kurze Anleitung:

Datei xxx.holiday nach dem oben beschriebenen Syntax in FHEM
Verzeichnis anlegen.
"Instanz" Definieren:
  define xxx holiday
Abfrage des heutigen Wertes:
  { Log 1, "Heute ist " . $value{xxx} eq "none" ? "kein Urlaubstag" :
$value{xxx} }
Abfrage / Pruefen anderer Werte
  get xxx 12-24

Ostern-abhaengige Werte (Typ 2) gibt es nur dann, wenn man
"DateTime::Event::Easter" installiert hat, die anderen gibt es auch
ohne diesen schrecklichen Modul. Und es gibt noch ein Typ "4" mit
Intervall, Beispiel "4 12-01 12-21 Winterurlaub".

Die Werte werden bei jede Abfrage neu berechnet (die Datei wird
jeweils eingelesen), das aktuelle Wert ($value{xxx}) einmal taeglich,
das habe ich aber noch nicht getestet.

Kommentare? Doku?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

Dr. Boris Neubert

                                             

Sven Mueller wrote:
> Dr. Boris Neubert schrieb:
>> Sven Mueller wrote:
>>> Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
>>> aktuell ein Feiertag vorliegt?

> Davon ab: Woher bekomme ich die Liste der Feiertage bis 2012?

Bis 2018...

http://www.feiertage.net/
http://de.wikipedia.org/wiki/Feiertage_in_Deutschland

Gruesse,
Boris

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

rudolfkoenig

                                             

Rudolf Koenig wrote:
>> Wäre es möglich, in FHEM eine Funktion mit einzubauen, die prüft, ob
>> aktuell ein Feiertag vorliegt?

> Kommentare? Doku?

Es gibt in Deutschland drei Klassen von Feiertagen:

1. kalenderfixe Termine (Tag der deutschen Einheit= 03.10.)
2. osterbezogene Termine (Christi Himmelfahrt= Ostersonntag + 39 Tage)
3. Buß- und Bettag = Mittwoch vor dem 23. November

Habe mir jetzt mal nur den Code angesehen. Wie wird die
Berechnungsvorschrift fuer Buß- und Bettag abgebildet?

Gruesse,
Boris


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

rudolfkoenig

                                                   

> Habe mir jetzt mal nur den Code angesehen. Wie wird die
> Berechnungsvorschrift fuer Buß- und Bettag abgebildet?

Gar nicht. Da fehlt wohl der Typ 5. Kommst Du aus Sachsen? :-)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

Dr. Boris Neubert

                                             

Rudolf Koenig wrote:
>> Habe mir jetzt mal nur den Code angesehen. Wie wird die
>> Berechnungsvorschrift fuer Buß- und Bettag abgebildet?
>
> Gar nicht. Da fehlt wohl der Typ 5. Kommst Du aus Sachsen? :-)

Noe, Hessen. Aber nach Murphys Gesetz wird es am naechsten Buss- und
Bettag eine Fehlermeldung aus Sachsen geben ;-)

Gruesse,
Boris

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Guest

Originally posted by: <email address deleted>

Rudolf Koenig schrieb:
>> Habe mir jetzt mal nur den Code angesehen. Wie wird die
>> Berechnungsvorschrift fuer Buß- und Bettag abgebildet?
>
> Gar nicht. Da fehlt wohl der Typ 5. Kommst Du aus Sachsen? :-)

Hmm, den Typ 3 umarbeiten?

3 [+-]N WeekDay Month Day

Nth $WeekDay before (-) or after (+) date (month,day)?

Das kann immernoch benutzt werden, um den n-ten Montag eines Monats oder
 den vorletzten Dienstag eines Monats abzubilden:

3 1 Mon 01 31
(erster Montag nach dem 31.1.)
3 -1 Tue 03 01
(letzter Dienstag im Februar)
Wenn wir definieren, dass ein genauer Hit (1.3. ist ein Dienstag) nicht
als letzter Dienstag vor einem Termin (bzw. erster Montag nach einem
Termin) gezählt wird. (Wird genauer Hit erlaubt, müsste als Datum
jeweils der 01.02. bzw. 29.02. angegeben werden)
Soweit ich mich erinnere, liegt Buß- und Bettag nie auf dem 23.11.

Nunja, davon ab ist mir ein klitzkleines Problemchen aufgefallen in
Deinem Code:
Der Februar kann auch 29 Tage haben ;-)
Fix:

      my $dt=DateTime->new(year=>(1900+$lt[5]));
      $md[1]=29 if $dt->is_leap_year();

Eingefügt in Zeile 96, direkt unterhalb von:
my @md = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

Ansonsten versuche ich gerade den restlichen Code zu verstehen, um obige
Änderung einpflegen zu können (dann käme auch ein richtiger Patch).
Werde aber frühestens morgen wieder dazu kommen ein wenig reinzuschauen.

Ciao,
Sven

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

rudolfkoenig

                                                   

> Hmm, den Typ 3 umarbeiten?
Bitte nicht, sonst ist Typ 3 zu kompliziert. Lieber Typ 5 verwenden

> Der Februar kann auch 29 Tage haben ;-)
Das ist mir auch bekannt :-), und ich wollte das ich mit
  $md++ if($fd[5]%4 == 0);
loesen, was natuerlich eher
  $md++ if($fd[5]%4 == 0 && $fd[4] == 1);
sein soll. Und ich ziehe diese Loesung dem DateTime Krempel vor, auch
wenn es nicht perfekt ist (2100 wird falsch berechnet). Ich mag
DateTime naemlich weiterhin nicht :-/

> dann käme auch ein richtiger Patch
Bitte auch die Doku patchen :-)

Gruss,
  Rudi
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

Guest

Originally posted by: <email address deleted>

Hi,

Rudolf Koenig:
>   $md++ if($fd[5]%4 == 0 && $fd[4] == 1);
> sein soll. Und ich ziehe diese Loesung dem DateTime Krempel vor, auch
> wenn es nicht perfekt ist (2100 wird falsch berechnet). Ich mag
> DateTime naemlich weiterhin nicht :-/
>
Die Leute, die in den 70ern ihren COBOL-Kram programmiert haben, haben
auch nicht gedacht, dass der bis zur Jahrtausendwende überleben wird.
:-P

Aber eine Schaltjahr-Funktion ist wirklich nicht schwer, und außerdem
dokumentiert der Aufruf einer solchen viel besser als ein kryptisches
"$fd[5]%4 == 0", was da eigentlich vor sich geht.

sub schaltjahr($) {
   my($jahr) = @_;
   return 0 if $jahr % 4;       # 2009
   return 1 unless $jahr % 400; # 2000
   return 0 unless $jahr % 100; # 2100
   return 1;                    # 2012
}

--
Matthias Urlichs  |  {M:U} IT Design @ m-u-it.de  |   smurf@smurf.noris.de
Disclaimer: Das Zitat wurde zufällig ausgewählt.  |   http://smurf.noris.de
 - -
Wer die Geometrie begreift, vermag in dieser Welt alles zu verstehen.
      -- Galileo Galilei

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

rudolfkoenig

                                                   

> Die Leute, die in den 70ern ihren COBOL-Kram programmiert haben, haben
> auch nicht gedacht, dass der bis zur Jahrtausendwende überleben wird.

Danke für die Ehre, aber 2100 werde ich (wahrscheinlich) nicht mehr
erleben :-)

> Aber eine Schaltjahr-Funktion ist wirklich nicht schwer, und außerdem
> dokumentiert der Aufruf einer solchen viel besser als ein kryptisches
> "$fd[5]%4 == 0", was da eigentlich vor sich geht.

Damit bin ich aber vollkommen einverstanden, und deswegen habe ich das
auch genauso uebernommen.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~-

rudolfkoenig

Originally posted by: <email address deleted>

Ich habe momentan keinen Zugang zu meinem normalen FHEM Zeug, aber anbei
ein - nur auf Syntax-Fehler geprüfter - Patch, der trotz Deiner
Abneigung gegen DateTime relativ viel DateTime benutzt (ist ohnehin
schon ein Requirement für das Modul, soweit ich gesehen habe, und es ist
halt relativ bequem). Bei der Gelegenheit wurde auch die Berechnung der
Schaltjahre an DateTime ausgelagert.

Eine Datei in contrib für bayrische Feiertage ist auch gleich noch
dabei. (Da ist auch ein Kommentar mit drin für Buß- und Bettag).

Doku ist erweitert. (commandref.html)

Wer Fehler findet darf sie selbst fixen oder an mich melden ;-)

Überflüssige rechtliche Angaben:
Copyright/Verwertungsrechte trete ich an Dich ab, Rudolf, Lizenz für
meinen Code wie für Deinen (jeweils soweit rechtlich möglich, weitere
Verwertung durch mich bleibt vorbehalten).

Ciao,
Sven

Rudolf Koenig schrieb:
>> Hmm, den Typ 3 umarbeiten?
> Bitte nicht, sonst ist Typ 3 zu kompliziert. Lieber Typ 5 verwenden
>
>> Der Februar kann auch 29 Tage haben ;-)
> Das ist mir auch bekannt :-), und ich wollte das ich mit
>   $md++ if($fd[5]%4 == 0);
> loesen, was natuerlich eher
>   $md++ if($fd[5]%4 == 0 && $fd[4] == 1);
> sein soll. Und ich ziehe diese Loesung dem DateTime Krempel vor, auch
> wenn es nicht perfekt ist (2100 wird falsch berechnet). Ich mag
> DateTime naemlich weiterhin nicht :-/
>
>> dann käme auch ein richtiger Patch
> Bitte auch die Doku patchen :-)
>
> Gruss,
>   Rudi
> >

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
To post to this group, send email to fhem-users@googlegroups.com
To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
-~----------~----~----~----~------~----~------~--~---


diff -u -r1.1 95_holiday.pm
--- FHEM/95_holiday.pm   8 May 2009 16:14:03 -0000   1.1
+++ FHEM/95_holiday.pm   19 May 2009 08:51:02 -0000
@@ -93,6 +93,8 @@
       my %wd = ("Sun"=>0, "Mon"=>1, "Tue"=>2, "Wed"=>3,
                 "Thu"=>4, "Fri"=>5, "Sat"=>6);
       my @md = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
+      my $dt=DateTime->new(year=>(1900+$lt[5]));
+      $md[1]=29 if $dt->is_leap_year();
       my $wd = $wd{$a[2]};
       if(!defined($wd)) {
         Log 1, "Wrong timespec: $l";
@@ -106,7 +108,6 @@
       } elsif($a[1] < 0) {          # N'th day from the end
         my $d = $fd[3] - ($a[1]+1)*7;
         my $md = $md[$fd[4]];
-        $md++ if($fd[5]%4 == 0);
         next if($d > $md || $d < $md-6);
       }
 
@@ -118,6 +119,43 @@
       if($args[1] le $fordate && $args[2] ge $fordate) {
         $found = $args[3];
         last;
+      }
+    } elsif($l =~ m/^5/) { # nth weekday since MM-DD / before MM-DD
+      my @a = split(" +", $l, 6);
+      # arguments: 5
+      my %wd = ("Sun"=>0, "Mon"=>1, "Tue"=>2, "Wed"=>3,
+                "Thu"=>4, "Fri"=>5, "Sat"=>6);
+      my $wd = $wd{$a[2]};
+      if(!defined($wd)) {
+        Log 1, "Wrong timespec: $l";
+        next;
+      }
+      next if $wd != $fd[6]; # check wether weekday matches today
+      my $yday=$fd[7];
+      # create DateTime of the target date
+      my $tgt=DateTime->new(year => 1900+$fd[5], month => $a[4], day => $a[3], hour => 1);
+      my $tgtmin=$tgt;
+      my $tgtmax=$tgt;
+      my $cd=DateTime->new(year => 1900+$fd[5], month => $fd[4], day => $fd[3], hour => 1);
+      if ( $a[1] =~ /^-([0-9])*$/ ) {
+        $tgtmin->subtract(weeks => $1);
+        $tgtmax->subtract(weeks => $1-1);
+   # needs to be lower than max and greater than or equal to min
+        if ( ($cd->epoch() ge $tgtmin->epoch()) && ( $cd->epoch() lt $tgtmax->epoch()) ) {
+      $found=$a[5];
+      last;
+   }
+      } elsif ( $a[1] =~ /^\+?([0-9])*$/ ) {
+        $tgtmin->add(weeks => $1-1);
+        $tgtmax->add(weeks => $1);
+   # needs to be lower than or equal to max and greater min
+        if ( ($cd->epoch() gt $tgtmin->epoch()) && ( $cd->epoch() le $tgtmax->epoch()) ) {
+      $found=$a[5];
+      last;
+   }
+      } else {
+        Log 1, "Wrong distance spec: $l";
+        next;
       }
     }
   }
diff -u -r1.63 commandref.html
--- docs/commandref.html   11 May 2009 16:23:38 -0000   1.63
+++ docs/commandref.html   19 May 2009 08:51:02 -0000
@@ -2964,6 +2964,15 @@
             4 01-06 31-06 Summer holiday

           [/list]
           
+      
  • 5

    +          Date relative, weekday fixed holiday. Arguments: <nth>
    +          <weekday> <day> <month> <holiday-name>

    +          Examples:

    +          
      +            5 -1 Wed 23 11 Buss und Bettag (first Wednesday before Nov, 23rd)

      +            5 1 Mon 31 01 First Monday after Jan, 31st (1st Monday in February)

      +          
    +          

  •      [/list]
         See also he.holiday in the contrib directory for official holidays in the
         german country of Hessen.
    diff -u contrib/by.holiday
    --- contrib/by.holiday   2009-05-19 10:32:10.552085500 +0200
    +++ contrib/by.holiday   2009-05-19 10:39:52.000000000 +0200
    @@ -0,0 +1,18 @@
    +# Siehe auch
    +# http://de.wikipedia.org/wiki/Feiertage_in_Deutschland
    +
    +1 01-01 Neujahr
    +1 01-06 Heilige Drei Koenige
    +1 05-01 Tag der Arbeit
    +1 08-15 Mariae Himmelfahrt (nur bei ueberwiegend katholischer Bevoelkerung)
    +1 10-03 Tag der deutschen Einheit
    +1 11-01 Allerheiligen
    +1 12-25 1. Weihnachtstag
    +1 12-26 2. Weihnachtstag
    +
    +2 -2 Karfreitag
    +2  1 Ostermontag
    +2 39 Christi Himmelfahrt
    +2 50 Pfingsten
    +2 60 Fronleichnam
    +#5 -1 Wed 23 11 Buss- und Bettag (nur in Sachsen)

    rudolfkoenig

    Originally posted by: <email address deleted>

    Hi,

    Sven Mueller:
    > +            5 1 Mon 31 01 First Monday after Jan, 31st (1st Monday in February)


    Äh. Wie schreibe ich dann den ersten Montag im März?

    Würde da evtl. "5 0 Mon 01 03" funktionieren?

    --
    Matthias Urlichs  |  {M:U} IT Design @ m-u-it.de  |   smurf@smurf.noris.de
    Disclaimer: Das Zitat wurde zufällig ausgewählt.  |   http://smurf.noris.de
     - -
    In der Tat sind die Kosten für den Besitz von Windows NT sehr gering.
    Das Problem ist nur, daß man Windows NT nicht besitzt sondern nur eine
    Lizenz, es zu nutzen.

    --~--~---------~--~----~------------~-------~--~----~
    You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
    To post to this group, send email to fhem-users@googlegroups.com
    To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
    For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
    -~----------~----~----~----~------~----~------~--~-

    Guest

    Originally posted by: <email address deleted>

    5 -1 Mon 08 03 erster Montag im März

    5 1 Mon 28 02 kann auch 29.2. liefern

    Aber

    3 1 Mon 03 erster Montag im März

    wäre wohl einfacher.

    Wie ich schonmal schrieb: Die Regeln mit Typ 3 lassen sich alle auch
    (irgendwie) als Typ 5 ausdrücken, denke ich. Mit Außnahme von Rudolf's
    netter "3 0 Mon 03 alle Montage im März" Variante.

    Matthias Urlichs schrieb:
    > Hi,
    >
    > Sven Mueller:
    >> +            5 1 Mon 31 01 First Monday after Jan, 31st (1st Monday in February)

    >
    > Äh. Wie schreibe ich dann den ersten Montag im März?
    >
    > Würde da evtl. "5 0 Mon 01 03" funktionieren?
    >

    --~--~---------~--~----~------------~-------~--~----~
    You received this message because you are subscribed to the Google Groups "FHEM users on Linux" group.
    To post to this group, send email to fhem-users@googlegroups.com
    To unsubscribe from this group, send email to fhem-users+unsubscribe@googlegroups.com
    For more options, visit this group at http://groups.google.com/group/fhem-users?hl=en
    -~----------~----~----~----~------~----~------~--~-