![]() |
FormatDateTime funktioniert auf einmal nicht mehr
Delphi-Quellcode:
var
stunden,minuten: integer; durchschnittprotag,totalminuten: integer; i:integer; s:string;
Delphi-Quellcode:
DurchschnittproTag ergibt in Minuten 504.
durchschnittprotag:=totalminuten div cdRechnen.fieldbyname('ANTEIL_TAG').AsInteger;
s:=formatdatetime('hh:nn',durchschnittprotag div 24); if i=1 then ed_schnitt_1.text:=s: Wenn ich den FormatDateiTime anwenden wie im Beispiel oben bekomme ich komischerweise immer : 00:00. Warum das? Ich verstehs nicht. In einer anderen Prozedur verwende ich den praktisch gleichen Befehl und funktioniert... seht ihr einen Fehler? |
Re: FormatDateTime funktioniert auf einmal nicht mehr
vielleicht so?
Delphi-Quellcode:
Grüße
s:=formatdatetime('hh:nn',durchschnittprotag /24);
Klaus |
Re: FormatDateTime funktioniert auf einmal nicht mehr
Hallo,
Zitat:
Delphi-Quellcode:
Gruß Hawkeye
FormatDateTime('hh:nn', durchschnittprotag * 60 / 86400);
|
Re: FormatDateTime funktioniert auf einmal nicht mehr
Funktioniert tatsächlich so, aber wie kommst du auf 86400?
Ich kann dir nicht folgen... Zitat:
|
Re: FormatDateTime funktioniert auf einmal nicht mehr
Wieviel sec. hat denn der Tag. :wink:
|
Re: FormatDateTime funktioniert auf einmal nicht mehr
FormatDateTime('hh:nn', xxx) kann maximal 23:59 liefern, da der ganzzahlige Anteil (entspricht den Tagen) intern abgetrennt wird.
Also kann man folgendes schreiben:
Delphi-Quellcode:
s:= Format('%d Tage', [Int(x)])+formatdatetime('hh:nn', Frac(x));
|
Re: FormatDateTime funktioniert auf einmal nicht mehr
Hallo shmia,
nimm Trunc statt Int, dann paßt es:
Delphi-Quellcode:
Gruß Hawkeye
s:= Format('%d Tage ', [Trunc(x)])+formatdatetime('hh:nn', Frac(x));
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz