Thema: Delphi Industrieminuten

Einzelnen Beitrag anzeigen

StepByStep

Registriert seit: 12. Nov 2014
Ort: Schleswig-Holstein
61 Beiträge
 
Delphi 7 Professional
 
#1

Industrieminuten

  Alt 22. Jan 2015, 08:00
Delphi-Version: XE2
Guten Morgen zusammen,

bevor die Frage aufkommen sollte: Ja, ich habe die SuFu genutzt.

Mein Problem ist folgendes:
Ich möchte zwei TDateTimes vergleichen und mir die Differenz in Stunden ausgeben lassen.
Mir sind die Funktionen YearBetween, HoursBetween, etc. bekannt und leider auch zu ungenau.
Deshalb habe ich eine eigene Funktion geschrieben:

Delphi-Quellcode:
function TXmlfunction.GetDate(dtVon, dtBis: TDateTime): string;
var
  dtDate: TDateTime;
  sHour: string;
  sTime: string;
begin
  dtDate := (dtBis - dtVon);
  sHour := TimeToStr(dtDate);
  sTime := FloatToStr(StrToFloat(sHour[1] + sHour[2]) + StrToFloat(sHour[4] + sHour[5]) / 60);
  result := sTime;
end;
Das Problem was sich nun stellt ist, dass wenn ich beispielsweise folgende Rechnung habe:

22.01.2015 10:00:00 - 21.01.2015 10:00:00,

dann ist das Ergebnis 0, da er durch den Befehl TimeToStr() nur die Stunden nimmt.
Ich kann aber nicht DateTimeToStr() nutzen, weil ich so nur Müll rausbekomme.

Frage: Wie stelle ich das jetzt am geschicktesten an?

Gruß
Jan
Jan
  Mit Zitat antworten Zitat