AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10 Min)
Thema durchsuchen
Ansicht
Themen-Optionen

Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10 Min)

Ein Thema von Karstadt · begonnen am 24. Apr 2006 · letzter Beitrag vom 25. Apr 2006
Antwort Antwort
Seite 3 von 4     123 4      
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#21

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 24. Apr 2006, 15:43
wie genauf funtioniert das?

ein cast auf TIME.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#22

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 24. Apr 2006, 17:28
select MA_name, sum(cast(MA_arbeiztszeit as TIME)) as summe from Tabelle group by MA_name;
Markus Kinzler
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 24. Apr 2006, 17:40
Ich habe mir das ganze nochmal angesehen und habe entdeckt, daß hier ein Denkfehler vorliegt. Daten vom Typ TIME sind ja Uhrzeiten, diese kann mann nicht addieren. Ich würde die Datenbank so anpassen. das du Beginn(Zeit) und Ende(Zeit) in die Tabelle schreibst und dann über die Dauer summierst. Dann sollte es funktionieren.

SQL-Code:
CREATE TABLE `projekte_ma` (
  `id_pma` int(10) unsigned NOT NULL auto_increment,
  `pma_ar_beginn` time default NULL,
  `pma_ar_ende` time default NULL,
  PRIMARY KEY (`id_pma`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select id_pma, sum( pma_ar_ende - pma_ar_beginn) / 3600 as summe from Tabelle group by id_pma;
Markus Kinzler
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#24

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 24. Apr 2006, 17:42
Addieren kann man sie wohl schon. Was genau da rauskommt, könnt ich jetzt nur bei Firebird sagen, da liegt das Buch neben mir

Das Problem ist wohl eher, was passiert bei mehr als 24 Stunden?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#25

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 24. Apr 2006, 17:45
Zitat:
Addieren kann man sie wohl schon. Was genau da rauskommt, könnt ich jetzt nur bei Firebird sagen, da liegt das Buch neben mir Wink
Ein Fehler:
Zitat von Firebird Server:
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
data type not supported for arithmetic.
Markus Kinzler
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#26

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 25. Apr 2006, 08:18
Funktioniert das bei euch mit eueren SQL komponenten? Ich gehe jetz anders vor.. ist aber sehr langsam..

Delphi-Quellcode:
With Tabelle do
begin
  First;
  While not EOF do
  begin
    //Lese die gesamtzeit aus und addiere
    next;
  end;
end;
Am ende habe ich das raus was ich haben wollte. Aber nun habe ich 1000 DS... oh
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#27

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 25. Apr 2006, 08:27
Ich würde wie schon erwähnt Beginn/Ende notieren oder halt die Zeit in Minuten in die Tabelle schreiben. Dann funktioniert das Sum() auf Jedenfall.
Markus Kinzler
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#28

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 25. Apr 2006, 08:38
ich würde den Wert in Sekunden speichern und diese dann aufsummieren.

Daraus sollte sich relativ einfach die Gesamtdauer berechnen lassen oder nicht?

29000 wären dann 8h 20 Min.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#29

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 25. Apr 2006, 08:42
Danke. Die Idee ist gut, werde dem entsprechend realisieren. Eine von meinen Fragen wurde aber nicht beantowrtet:


Funktioniert das bei euch mit ihren DB Komponenten die Zeit zu summieren oder ist das nur bei MYDAC (Komponente die ich benutze) so?
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#30

Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10

  Alt 25. Apr 2006, 09:13
Das mit dem summieren hat ja denke ich nichts mit den Komponenten, sondern vielmehr mit der Datenbankversion zu tun.
Also bei mir funktioniert es und ich benutze die ZEOS Komponenten.(ZEOS kann ich übrigens nur empfehlen)
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:22 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