Autor Beitrag
mexx
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1183



BeitragVerfasst: Di 16.05.06 08:27 
Was kommt eigentlich raus, wenn man zwei Fields einer Query, welche einen DateTime-Wert tragen von einander abzieht? Ein Sekundenwert?

_________________
Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 16.05.06 08:31 
Probier es aus. :wink:
mexx Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1183



BeitragVerfasst: Di 16.05.06 08:43 
Prob:

In SQL kann man einen Time-Wert von einem DateTime-Wert so abziehen.


ausblenden SQL-Anweisung
1:
DateTime - cast(DateTime as Time)					



Wie mache ich das in Delphi? Einen Time-Wert von einem DateTime abziehen. Wie bekomme ich das Date von dem DateTime weg?

_________________
Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Di 16.05.06 08:47 
In Delphi ist der DateTime-Wert zusammengesetzt aus der Anzahl der Tage als Vollstellen und der Zeit als Dezimalzahl. Du musst also nur den Dezimalteil nehmen:
 zeit := dt_wert - trunc(dt_wert); sollte damit eigentlich funktionieren.
mexx Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1183



BeitragVerfasst: Di 16.05.06 08:53 
03.04.2006 07:17:00 = 38810,303472222

07:30:00 = 0,3125


*grübel*


Ich will einfach nur die Differenz zwischen 03.04.2006 07:17:00 und 07:30:00.

_________________
Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Di 16.05.06 08:58 
user profile iconmexx hat folgendes geschrieben:
Ich will einfach nur die Differenz zwischen 03.04.2006 07:17:00 und 07:30:00.

Jo, die 38810 sind der Datumswert, die 0,30347 der Zeitwert. Einfach 0,3125 von 0,3125 abziehen und den Restwert in einen Time umwandeln, schon solltest Du rund 13 Minuten bekommen.
mexx Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1183



BeitragVerfasst: Di 16.05.06 11:39 
Aber wie kann man damit einen Tag wechsel ausrechnen? Wenn ich nun einen Time-Wert von um 5 habe und einen DateTime von 19 Uhr am VOR-Tag, dann rechnet er mir eine Dauer von -14h aus, ob wohl die Differenz zwischen beiden 10h beträgt. Angenommen ich wüsste, dass es sich um einen anderen Tag handelt, durch eine IF-Bedingung, wie könnte ich beide Werte voneinander subtrahieren, so dass die richtige Dauer ausgerechnet wird?

_________________
Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
oldmax
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 380


D3 Prof, D4 Prof
BeitragVerfasst: Di 16.05.06 12:59 
Wo ist das Problem? Frag doch einfach ab:
If Ergebnis <0 Then Ergebnis:=Ergebnis +24
oldmax

_________________
Zier dich nich so, ich krieg dich schon....
mexx Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1183



BeitragVerfasst: Di 16.05.06 13:02 
War nicht so schwer, DateTime - Time ergibt den richtigen Wert, wenn man dann noch den Bereich vor dem Komma wegnimmt, hat man alles was man braucht.

_________________
Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.