Wie hier
http://www.delphipraxis.net/internal...117206#1117206 heraus gearbeitet sollte obige Funktion wie nachfolgend geändert werden.
Delphi-Quellcode:
function WeekOfDate(A: TDateTime): Integer;
var
Day: Integer;
Y,M,D: Word;
begin
A := Int(A);
Day := DayOfWeekGerman(A);
DecodeDate(A +4 -Day, Y, M, D);
Result := Round(((A +8 -Day) - EncodeDate(Y, 1, 1)) / 7);
end;
Man muß also aus dem TDateTime A den Nachkommateil, eg. Zeitangaben, löschen. Das erledigen wir mit dem A := Int(A);
Gruß Hagen