MinutesBetween (aus DateUtils) liefert manchmal ein Ergebnis, das um 1 vom erwarteten Ergebnis abweicht. So kann der Unterschied zwischen zwei TDateTime-Werten, die genau eine Minute auseinanderliegen, von der Funktion auch mal mit 0 angegeben werden. Der Grund dafür liegt in der üblichen Ungenauigkeit von Fließkommaoperationen.
Genauer ist nach meinen Erfahrungen in der Regel folgende Konstruktion:
Round(MinuteSpan(t1, t2))
Dabei sind t1 und t2 eben zwei TDateTime-Werte. Hier ist allerdings der aktuelle Rundungsmodus zu beachten, der von Round benutzt wird.
Abonnieren
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen