Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Bestimmen, ob Datum ein Wochenendtag ist


seifman - Do 16.10.03 20:17
Titel: Bestimmen, ob Datum ein Wochenendtag ist
Hi Folks!

Ich habe folgendes Problem. Über den MonthCalendar habe ich einen bestimmten Bereich an Tagen ausgewählt. Das Programm soll mir ausgeben, wie viele Tage das sind. Das funktioniert auch soweit. Jedoch möchte ich auch, daß Wochenendtage nicht berücksichtigt werden. Ich benötige also einen Algorithmus, welcher aus den Daten herausfiltert, bei welchem es sich um einen Samstag oder Sonntag handelt.

Vielen Dank im Voraus.


Gausi - Do 16.10.03 21:18

Hallo,
das ist nicht schwer, denn Delphi liefert da die nötigen Funkitonen:

Delphi-Quelltext
1:
2:
if DayOfTheWeek(monthcalender1.date)=6 then [..]// Samstag
if DayOfTheWeek(monthcalender1.date)=7 then [..]// Sonntag

oder alternativ

Delphi-Quelltext
1:
2:
if DayOfWeek(monthcalender1.date)=7 then [..]// Samstag
if DayOfWeek(monthcalender1.date)=1 then [..]// Sonntag

Beide Funktionen sind im Unit SysUtils.


seifman - Do 16.10.03 21:43

Vielen Dank!


Killmag10 - So 19.10.03 21:59

ich hab hier zu den Thema noch ne frage !


wenn das datum zb 10.10.98 ist nimt er dann nicht den wochentag der am 1998 war statt den von 2098 ?

wenn ja, wann springt er wieder auf das 19. jahrhuntert ?
und was kann ich dagegen tun ?


grayfox - Mo 20.10.03 02:41

hallo killmag!

sieh dir mal die variable 'TwoDigitYearCenturyWindow' an. mit deren hilfe solltest dein problem leicht lösen können. in der online-hilfe von StrToDate findest eine erklärung dazu.
am einfachsten ist es allerdings, wenn du die jahreszahl 4 stellig machst. so macht sie die wenigsten probleme

mfg, stefan
ps: ins 19. jhdt (1801 - 1900)? oder meinst du ins 20. jhdt? :wink:


joerg68 - Mo 20.10.03 11:14

@ seifman
Wie sieht es denn in Deinem Programm mit Feiertagen aus. Mußt das nicht berücksichtig werden :wink:

Gruß
Jörg


seifman - Mo 20.10.03 19:22

Danke der Nachfrage. Aber für die Feiertage habe ich schon etwas bekommen. Es funzt jetzt auch erstmal so, wie ich es mir vorgestellt hatte.