Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Feiertage anzeigen (https://www.delphipraxis.net/40755-feiertage-anzeigen.html)

Catbytes 20. Feb 2005 15:20


Feiertage anzeigen
 
Hallo,

das Programm "Feiertage" zeigt einem die deutschen Feiertage eines Jahres an.

Da Open-Source, kann man den Code wunderbar für Kalenderprogramme o.ä. benutzen.

Nicht wundern, daß selbst Feste Feiertage eine eigene Funktion haben (z.B. 1. Weihnachtsfeiertag). Ich wollte nur, daß eben alles Standardmäßig ist. Und wenn doch mal ein Feiertag variabel werden sollte, langt es die Funktion anzupassen (bei den heutigen Politikern weiß man ja nie).

Version: 1.10 (vom 20.02.2005)
BS: Hier läuft Windows 2000 (sollte aber auf jedem modernen Windows-BS laufen - aber nicht getestet)

Download Demo-EXE inklusive Source: feiertage_anzeigen.zip (262 KB)

Die Implementierung der Feiertage ist relativ "unspektakulär" gelöst.

Bei Ideen oder Anregungen entweder hier im Forum oder an webmaster@catbytes.de senden.

Viel Spaß!

Luckie 20. Feb 2005 15:25

Re: Feiertage anzeigen
 
Unbrauchbar:
Zitat:

'01.01.2005' ist kein gültiges Datum.
Mein Datuumsformat ist: yyyy-mm-dd

Es läßt sich dann übrignes auch nicht mehr beenden, da die Meldung auch beim Schließen kommt und sich das Fesnter dann nicht schließt.

Sharky 20. Feb 2005 15:28

Re: Feiertage anzeigen
 
Hai Catbytes,

ich bin nur mal kurz über den Code geflogen, da das Programm bei mir das selebe macht wie bei Luckie (wir haben nämlich das richtige Datumsformat).

Als Tipp. Schaue dir einmal Delphi-Referenz durchsuchenEncodeDate an.

Catbytes 20. Feb 2005 17:00

Re: Feiertage anzeigen
 
Hallo,

danke an Luckie und Sharky ;-)

An diesen Umstand habe ich überhaupt nicht gedacht.

Der Code ist nun an ISO 8601 angepasst.

Alle Einstellungen der Systemsteuerung werden korrekt angezeigt.

Jetzt könnt ihr weiter testen...

Der Link ist mit der neuen Version angepast.

Sharky 20. Feb 2005 17:04

Re: Feiertage anzeigen
 
Hai Catbytes,

hast Du es an jedes Datumsformat angepasst oder nur speziell an die ISO Schreibweise? Es gibt ja auch Leute die verstellen ihren PC so das er das Datum so wie in "Kleinquetschenmombach" in Zentral-Hinter-Ober-Unter-Wassweissich-wo eingestellt haben ;-)

Pr0g 20. Feb 2005 17:12

Re: Feiertage anzeigen
 
Kann es sein, dass die Funktionen GetDOW_Str und GetWochentage das gleiche machen? Eine könntest du also löschen.


MfG Pr0g

Catbytes 20. Feb 2005 17:27

Re: Feiertage anzeigen
 
Zitat:

Zitat von Sharky
Hai Catbytes,

hast Du es an jedes Datumsformat angepasst oder nur speziell an die ISO Schreibweise? Es gibt ja auch Leute die verstellen ihren PC so das er das Datum so wie in "Kleinquetschenmombach" in Zentral-Hinter-Ober-Unter-Wassweissich-wo eingestellt haben ;-)

"Kleinquetschenmombach" :-D

Ich habe es, wie empfohlen, mit EncodeDate gelöst. Alle bei mir in der Systemsteuerung vorhandenen Datumsformate hat er korrekt angezeigt. Mit ISO meinte ich nur, daß es eben jetzt _auch_ ISO-Daten anzeigt (alle anderen natürlich auch).

Das das ist Deutschland auch schon "Pflicht" ist, wußte ich übrigens nicht. Ich ging von DIN5008 aus - das war zu meiner Schulzeit noch TT.MM.JJJJ - ist wohl mittlerweile an die ISO angepasst worden.

Zitat:

Zitat von Pr0g
Kann es sein, dass die Funktionen GetDOW_Str und GetWochentage das gleiche machen? Eine könntest du also löschen.

Oha - stimmt. Da ist wohl was durcheinander geraten. Damals habe ich wohl etwas "rumexperimentiert", wie es wohl am besten geht ;)

Gibt auch noch andere Funktionen, die in der Demo gar nicht vorhanden sind, wie z.B. "LebensAlter", die das Alter zurück gibt, wenn man ein Datum als TDateTime übergibt.

Sharky 21. Feb 2005 07:10

Re: Feiertage anzeigen
 
Zitat:

Zitat von Catbytes
....."Kleinquetschenmombach" :-D ...

Mein Lieblingsort bei solchen Sachen ;-)

Fein das Du das Programm auf unterschiedliche Datumsformate umgestellt hast :thumb:

Eine Anmerkungen zum Quellcode habe ich noch :stupid:

In deiner Methode TForm1.GetFeiertage rufst Du für jeden Feiertag StrToInt(Edit1.Text) auf.
Der Code wird wesentlich einfacher und leserlicher wenn Du dies nur einmal am Anfang der Methode machst und den Wert in einer lokalen Variablen speicherst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz