AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Anzahl Stunden berechnen

Ein Thema von weeweewee · begonnen am 20. Aug 2009 · letzter Beitrag vom 21. Aug 2009
Antwort Antwort
weeweewee

Registriert seit: 20. Aug 2009
6 Beiträge
 
#1

Anzahl Stunden berechnen

  Alt 20. Aug 2009, 18:56
Hallo Zusammen,

habe folgendes Problem: (Delphi 2009/Win32)

Ich möchte die Anzahl der Stunden und Minuten innerhalb einer Zeitspanne errechnen.

Beispiel:

Arbeitszeit:

16:30 - 03:30 Uhr

Zwischen 20:00 und 06:00 gibt es Zuschläge; Wieviele Stunden und Minuten liegen in dem Bereich?
(in diesem Fall 7,5 (Industrie)Std.)
Ich kann sicherlich mit jeder Menge If..Then zur Lösung kommen - geht es vielleicht einfacher?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Anzahl Stunden berechnen

  Alt 20. Aug 2009, 19:04
Schau dir mal die Unit Dateutils an
Markus Kinzler
  Mit Zitat antworten Zitat
SirTwist

Registriert seit: 28. Sep 2006
198 Beiträge
 
Delphi XE Professional
 
#3

Re: Anzahl Stunden berechnen

  Alt 21. Aug 2009, 11:13
Hi,

Du könntest ein Array[0..1439] of Integer machen und in jedes Feld eintragen, mit welchem Faktor die jeweilige Tagesminute zu bewerten ist. Wahlweise auch für eine ganze Woche, dann ist es ein Array[0..10079]. Geschickterweise baust Du Dir noch eine Zugriffsfunktion, in der Du nicht die Minute angibst, sondern Wochentag, Stunde, Minute oder halt TDateTime.

Ja, das klingt aufwändig, aber zum einen sind das grad 20-40 kByte und du musst sie nur einmal füllen. Danach ratterst Du in einer for-Schleife vom Startzeitpunkt bis zum Endzeitpunkt über jede Minute hinweg und addierst die Bewertungen auf.

Achtung: für eine Zeiterfassung hat sich (bei mir!) TTime bzw. TDateTime als sehr fehleranfällig herausgestellt. Ich speichere das Datum als TDate und die Start- und Stoppzeiten getrennt als Integerwert, also genau von 0 (als 00:00) bis 1439 (als 23:59).

Viel Spaß!
  Mit Zitat antworten Zitat
Kruemel_02

Registriert seit: 24. Jan 2007
Ort: Friedrichshafen
37 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Anzahl Stunden berechnen

  Alt 21. Aug 2009, 11:34
Zeitdifferenz in Minuten berechnen

8)
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Anzahl Stunden berechnen

  Alt 21. Aug 2009, 11:41
Zitat von SirTwist:
Achtung: für eine Zeiterfassung hat sich (bei mir!) TTime bzw. TDateTime als sehr fehleranfällig herausgestellt.
Jo ... Das Dateformat kann tricky sein -.-"
a) TTime = TDate = TDateTime = Double
b) Wenn Sie mit Gleitkommazahlen arbeiten, sollten Sie beachten, dass sie im Arbeitsspeicher nicht immer präzise dargestellt werden... (+ Rechenfehler & Ungenauigkeiten beim multiplizieren und teilen)

Zitat:
... Array[0..1439] ... ganze Woche, dann ist es ein Array[0..10079] ...
Wenn schon so n Array. Währe es dann nicht einfacher bzw. leichter zu handeln/verstehen ein array[0..6] of TagesArray zu machen? (oder auch 1..7 je nach Geschmack ^^)
So sehe ich gleich Tag,Minute und muss nicht den Tag aus der Minute heraus errechnen (div 1440)... naja aber das kommt wohl auf die Restliche Vorgehensweise drauf an ^^
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
SirTwist

Registriert seit: 28. Sep 2006
198 Beiträge
 
Delphi XE Professional
 
#6

Re: Anzahl Stunden berechnen

  Alt 21. Aug 2009, 11:57
Zitat von TeronG:
Zitat:
... Array[0..1439] ... ganze Woche, dann ist es ein Array[0..10079] ...
Wenn schon so n Array. Währe es dann nicht einfacher bzw. leichter zu handeln/verstehen ein array[0..6] of TagesArray zu machen? (oder auch 1..7 je nach Geschmack ^^)
So sehe ich gleich Tag,Minute und muss nicht den Tag aus der Minute heraus errechnen (div 1440)... naja aber das kommt wohl auf die Restliche Vorgehensweise drauf an ^^
Das war nur zur Verdeutlichung. ICH würde das kapseln und Zugriffsfunktionen bauen, die als Parameter die Formate akzeptieren, die in der restlichen Anwendung auch benutzt werden. Dann ist die interne Darstellung erstmal egal. Aber die Implementierungsdetails sind natürlich jedem selbst überlassen
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:10 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