Hallo Carsten,
du störst ganz gewiss nicht. Die
Regeln für Schaltjahre sind nunmal etwas komplexer. Und wenn du einen Monatsübertrag machst, warum dann nicht auch einen Jahresübertrag, anstelle das Jahr einfach auf 2007 zu setzen?
Nachtrag:
Dein Code scheint zu funktionieren, wenn man den Jahresübertrag korrigiert. Aber da ein Datum intern als der ganzzahlige Teil eines float-Wertes geführt wird, geht es alles auch einfacher:
Delphi-Quellcode:
uses
Types; // TIntegerDynArray
const
MAXDAYS = 1000;
var
i, iStart: Integer;
ida: TIntegerDynArray;
begin
iStart := Trunc(EncodeDate(2006, 1, 1));
SetLength(ida, MAXDAYS);
for i := Low(ida) to High(ida) do
ida[i] := iStart + i;
end;
Grüße vom marabu