anmeldezeit berechnen
ich hab ein problem!!!
in einem dbgriid filter ich datensätze raus (von verschiedenen benutzern) in der tabele gibt es die felder (datum, zeit :Tdatetime) und usernr!! nun jetzt will ich die anmeldezeiten von den verschiedenen benutzern berechnen!!! meine lösung weist einen grossen nachteil auf, sie geht jeden datensatz einzeln durch und das dauert bei einer größeren menge an datensätzen natürlich seine zeit!!! kann mir jemand helfen eine lösung zu finden die besser ist!!?? hier nochmal meine bisherige lösung
Delphi-Quellcode:
danke schonmal im voraus
var Arbeitszeit,tmp:TDateTime;
Tage:integer; begin if DBuserNR.Text<>'' then {DBuserNr : TDBedit; } begin Logdatei.First; Arbeitszeit:=0; repeat tmp:=0; if (tmp=0) and (Logdatei.Fields.Fields[6].AsString='1') and (Logdatei.Fields.Fields[1].AsString<>'') then begin tmp:=Logdatei.Fields.Fields[0].AsDateTime+Logdatei.Fields.Fields[1].AsDateTime; repeat Logdatei.Next; until (Logdatei.Fields.Fields[6].AsString='2') or Logdatei.Eof; if Logdatei.Eof then Arbeitszeit:=Arbeitszeit+Now-tmp; if Logdatei.Fields.Fields[6].AsString='2' then Arbeitszeit:=Arbeitszeit+(Logdatei.Fields.Fields[0].AsDateTime+Logdatei.Fields.Fields[1].AsDateTime)-tmp; end; Logdatei.Next; until Logdatei.Eof; Logdatei.First; Tage:=trunc(Arbeitszeit); Arbeitszeit:=Arbeitszeit-Tage; if Tage>0 then Label5.Caption:='Anmeldezeit: '+IntToStr(Tage); if Tage=1 then Label5.Caption:='Anmeldezeit: '+Label5.Caption+'Tag '; if Tage>1 then Label5.Caption:='Anmeldezeit: '+Label5.Caption+'Tage '; Label5.Caption:='Anmeldezeit von '+ComboBoxUSER.Text+': '+TimeToStr(Arbeitszeit)+' Std\Min\Sek'; end; end; moon |
Re: anmeldezeit berechnen
schnellste Möglichkeit wäre, dein gewünschte Auswertung direkt mit SQL in eine Query zu schreiben.
grez msch |
Re: anmeldezeit berechnen
na toll und wie??
das ist das problem!!! :lol: mfg moon |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:02 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