![]() |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
wie genauf funtioniert das?
ein cast auf TIME. |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
SQL-Code:
select MA_name, sum(cast(MA_arbeiztszeit as TIME)) as summe from Tabelle group by MA_name;
|
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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
SQL-Code:
select id_pma, sum( pma_ar_ende - pma_ar_beginn) / 3600 as summe from Tabelle group by id_pma;
|
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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? |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
Zitat:
Zitat:
|
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
Funktioniert das bei euch mit eueren SQL komponenten? Ich gehe jetz anders vor.. ist aber sehr langsam..
Delphi-Quellcode:
Am ende habe ich das raus was ich haben wollte. Aber nun habe ich 1000 DS... oh :(
With Tabelle do
begin First; While not EOF do begin //Lese die gesamtzeit aus und addiere next; end; end; |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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.
|
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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. |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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? :?: |
Re: Arbeitszeit eines Mitarbeiter ausrechen (100 Stunden 10
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) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:30 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