Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

AW: Ungültiges Argument zum Codieren des Datums

  Alt 21. Jan 2011, 15:13
Du hast die Standardstrategie zur Fehlersuche noch nicht angewendet!
Wenn in einer komplexen Sourcecodezeile ein unerklärlicher Fehler auftritt,
dann sollte man mehrere Zeilen daraus machen:
Delphi-Quellcode:
var
  idTag, idMonat, idJahr: Integer;
  LetzterTag : TDateTime;
begin
  LetzterTag := EncodeDate(2011, 12, 1); // 1. Zeile
  LetzterTag := LetzterTag - 1.0; // 2. Zeile
  DecodeDate(LetzterTag,idJahr,idMonat,idTag);
  value := idTag;
end;
Tritt der Fehler nun in Zeile 1 oder Zeile 2 auf?
Wahrscheinlich Zeile 1, oder?

Nächster Schritt: Scriptfunktion soweit vereinfachen, bis nur noch die fehlerhafte Zeile übrig bleibt:
Delphi-Quellcode:
var
  LetzterTag : TDateTime;
begin
  LetzterTag := EncodeDate(2011, 12, 1);
end;
Vielleicht wurde die Funktion EncodeDate() abweichend zum Delphi-Standard implementiert; das lässt sich leicht überprüfen:
Delphi-Quellcode:
var
  LetzterTag : TDateTime;
begin
  LetzterTag := EncodeDate(1, 12, 2011);
end;
Andreas
  Mit Zitat antworten Zitat