Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
Delphi 8 Architect
|
Re: Start- und Enddatum einer Kalenderwoche ermitteln
15. Dez 2003, 15:44
Weil Weihnachten naht ( ) ,als Ansatz hier ein bisserl source von mir, den Rest (Umkehrung von GetKalenderwoche) mußt Du Dir dann selbst basteln
Delphi-Quellcode:
function VierterJanuar(DasDatum : TDate):TDate;
begin
Result := StrToDate('04.01.'+copy(DateToStr(DasDatum),7,MaxInt));
end;
function MyDayOfWeek(DasDatum: TDateTime):Integer;
begin
Result := IntIf((DayOfWeek(DasDatum)-1 > 0),DayOfWeek(DasDatum)-1,7);
end;
function GetKalenderWoche(DasDatum:TDateTime): Integer;
var ErsterMontag : TDate;
begin
ErsterMontag := VierterJanuar(DasDatum)-MyDayOfWeek(VierterJanuar(DasDatum))+1;
if DasDatum < ErsterMontag
then ErsterMontag := VierterJanuar(DasDatum-10)-MyDayOfWeek(VierterJanuar(DasDatum-10))+1;
Result := (trunc(DasDatum-ErsterMontag) div 7)+1;
if Result = 53 then begin
if (DasDatum-MyDayOfWeek(DasDatum)+1) = (VierterJanuar(GetLastDay(DasDatum)+1)-MyDayOfWeek(VierterJanuar(GetLastDay(DasDatum)+1))+1)
then Result := 1;
end;
end;
Gruß
Tim Leuschner Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
|