Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Negative Zeitwerte in TurboDB (https://www.delphipraxis.net/95750-negative-zeitwerte-turbodb.html)

TylerDurden 12. Jul 2007 14:28

Datenbank: TurboDB • Version: 4.32 • Zugriff über: ADO

Negative Zeitwerte in TurboDB
 
Hallo zusammen!

Ich erstell mir gerade ein Programm zur Zeiterfassung und möchte die Daten in einer Datenbank speichern.
Dort soll es mir dann meine Überstunden ausrechnen. Solange die Arbeitszeit grösser als die Sollzeit ist, funktioniert alles prima.
Ist diese jeoch kleiner, bekomme ich eine Fehlermeldung, das negative Zeiten nicht möglich sind.

Kann man das irgendwie einstellen, dass auch negative Zeitwerte zugelassen werden (wie bei Excel ja auch möglich)

Vielen Dank schon mal!

mkinzler 12. Jul 2007 14:31

Re: Negative Zeitwerte in TurboDB
 
Wie rechnest/speicherst du?

TylerDurden 12. Jul 2007 14:42

Re: Negative Zeitwerte in TurboDB
 
Ich rechne direkt in der Datenbank unter Calculation expression "Arbeitszeit - Sollzeit" und speichere den Wert mit dem Data Type "Time" in der Datenbank ab

mkinzler 12. Jul 2007 14:48

Re: Negative Zeitwerte in TurboDB
 
Ich würde das als Zeiteinheiten/Minuten/Industrieminuten in der Datenbank ablegen oder wenn es unbedingt als Zeitwert sein muß als Betrag und mit extra Kenner.

Christian Seehase 12. Jul 2007 15:54

Re: Negative Zeitwerte in TurboDB
 
Moin Tyler,

Zitat:

Zitat von TylerDurden
dass auch negative Zeitwerte zugelassen werden (wie bei Excel ja auch möglich)

:shock:

:gruebel:

Sei doch bitte mal so gut, und erkläre mir, wie das geht, nach der Möglichkeit suche ich schon seit Langem.

hoika 12. Jul 2007 16:17

Re: Negative Zeitwerte in TurboDB
 
Hallo,

nicht Time als Datentyp verwenden, sondern Integer.
Wenn Minuten ausreichen, das TDateTime in Minuten umrechnen
und als Integer speichern.
etwas so

Delphi-Quellcode:
EncodeTime(tdtTime, wHours, wMin, wSec, wMSec);
iMin:= (wHours*60)+wMin;

Heiko

TylerDurden 13. Jul 2007 07:22

Re: Negative Zeitwerte in TurboDB
 
Zitat:

Zitat von Christian Seehase
Sei doch bitte mal so gut, und erkläre mir, wie das geht, nach der Möglichkeit suche ich schon seit Langem.

Hallo Christian,

du gehst in Excel auf Extras und wählst den Punkt Optionen. Dann das Register Berechnungen und setzt im Feld "1904-Datumswerte" ein Häckchen. Und schon kannst du mit negativen Zeitwerten rechnen!


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz