Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Datum miteinander vergleichen


O'rallY - Mo 17.02.03 16:04
Titel: Datum miteinander vergleichen
Gibt es eine Funktion, die zwei Datums-Typen miteindander vergleicht oder eine Funktion die z.B. die Stunden angibt, die seit was-weiß-ich-wann vergangen sind, wenn man ein Datum übergibt. So könnte man dann. Oder sogar Sekunden?


DaRkFiRe - Mo 17.02.03 17:09

Ich glaube, man kann die TDateiTime Variablen wie Date() und Time() einfach wie Extended-Daten-Typen benutzen - einfach subtrahieren und addieren - dann einfach per DecodeDate oder DecodeTime entschlüsseln et voilà...


HeLe - Mo 17.02.03 17:11

die prozeduren decodedate und decodetime dürften dich wohl wunschlos glücklich machen.
ok, die vergleichen nichts, deshalb mußt du (trick 16,9) erstmal die differenz zwischen den beiden tdatetime variablen ermitteln (tdatetime ist einfach als synonym für double definiert) und dann erst das ergebnis dekodieren!

PS: Ooops, da war jemand schneller :)


smiegel - Mo 17.02.03 17:17

Hallo,

als kleine Anregung eine Funktion, die Dir die Stunden zwischen 2 Datums angibt:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
funtion Stunden(const von, bis:TDateTime):Integer;
begin
  Result:=Trunc((von-bis)*24.0);
end; // Stunden


var
  std:Integer;
  ...
  std:=Stunden(EncodeDate(2003, 2, 17)+EncodeTime(12, 0, 0, 0), now));
  ...


O'rallY - Mo 17.02.03 21:10

thx @all