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