Ostern und andere Feiertage! (Feiertagsberechnung)

Es gibt fixe Feiertage, die lassen sich einfach berechnen. Denken wir nur an Weihnachten oder an den Nationalfeiertag (CH: 1. August, A: 26. Oktober, D: 3. Oktober) Auch der Muttertag (zweiter Sonntag im Mai) lässt sich mit relativ wenig Aufwand ermittlen. Schwierig wird’s bei Ostern und davon abgeleiteten Tagen (wie: Karfreitag, Aschermittwoch, Pfingsten, Dreifaltigkeit, Himmelfahrt, Fronleichnam): Ostern ist nämlich abhängig von der Mondphase (1. Vollmond nach Frühlingsanfang) und somit kommen wir zum Thema der astronomischen Berechnungen, wenn wir Ostern korrekt berechnen wollen. Wer sich mit spärischer Trigonometrie nicht auskennt und sich dafür auch keinen feuchten Dreck interessiert (und das dürften die meisten sein), dem können die angehängten Routinen eine wertvolle Hilfe sein, eine Feiertagstabelle pro Jahr zu erstellen. Im wesentlichen besteht das angehängte Objekt aus einer Tabelle mit Datum, Feiertagsbezeichnung, Wichtig:Boolean und Wochentag und einer Funktion InitFeiertage, die für das angegebene Jahr die wichtigen und ggf. auch unwichtigen Feiertage berechnet. Einmal initialisiert kann die Tabelle für mögliche Liefer- oder Arbeitstage herangezogen werden. (Kein Schwein liefert Waren am Ostermontag und an Aschermittwoch sind ohnehin alle noch besoffen.) Berechnet werden alle möglichen Daten. Das heisst, auch nur lokal gültige Feiertege von Deutschland, Österreich und der Schweiz. Ist ein Feiertag abhängig von der Nation, wird das im Code entsprechend als "nur " gekennzeichnet. Somit können Sie als Österreichischer Anwender einfach den deutschen und schweizerischen Nationalfeiertag ausklammern etc. Die Option “Wichtig=False” initialisiert auch sog. Feiertage, die uns in der Regel nicht interessieren weil wir dann nicht frei haben. So zum Beispiel den Weltmilchtag, Tag des Nichtrauchens, Portiunkula, Tag der älteren Menschen etc. Das angehängte Navision-Objekt mit der Feiertageberechnung (Table und Form) unterliegt dem Shareware-Prinzip, ist also nicht (ganz) kostenlos. Das heisst, Sie dürfen es beliebig verwenden, verändern und an Navision Enduser verkaufen, vorausgesetzt, Sie erfüllen die folgenden Bedingungen: 1. Kaufen Sie eine Postkarte Ihres Wohn-(Arbeits-)ortes. 2. Auf dieser Postkarte vermerken Sie die Adresse Ihres Lieblings-Restaurants, sowie der besonders empfehlenswertesten Speisen/Getränke. 3. Das ganze schicken Sie dann an mich, Marcus Fabian, Holzgasse 29, CH-3322 Schönbühl Wenn Sie diese Bedingungen nicht erfüllen, passiert natürlich gar nix, aber ich fände es lieb, wenn Sie mir diesen kleinen Gefallen tun würden. So, und jetzt wünsche ich viel Vergnügen beim herausfinden, wann denn nun Ostern im Jahre 3127 ist. (Das wollte doch ohnehin schon jeder wissen, oder)? Übrigens: Die Berechungen der Mondphasen (also Ostern) ist gültig, bis zum Jahr 8000. Wer mehr Jahre braucht, soll mir doch bitte im Jahr 7998 ein e-mail schicken, ok? download Marcus Fabian m.fabian@thenet.ch

Hallo Marcus! Echt genial… Mfg Orlando

Stimmt, der Vorwurf ist durchaus berechtigt. Es ist in der Tat so, dass sich 2.6-Objekte nicht in eine 2.01 oder DB einlesen lassen. Grund dafür ist die erweiterte Struktur, wie zum Beispiel mehrsprachige Konstanten, die’s in 2.0x noch nicht gegeben hat. Ich häng’ Dir ein Objekte für Version 2.01 im Bereich 50000 mal an. Falls Du das FOB immer noch nicht importieren kannst, was durchaus möglich ist, denn es wurde mit einer Schweizer Version erstellt und Navision prüft auch den Country code, kannst Du’s mit der Textversion probieren. Nur compilieren nicht vergessen. Tschüss Marcus download Marcus Fabian m.fabian@thenet.ch