Also Jungs, bin gerade wieder daheim und gleich wie versprochen, eure Scripte ausprobiert und angeschaut.
armine hat geschrieben:Hallo Peerli,
vielleicht ist mein Ansatz aufgrund seiner Schlichtheit leichter zu durchschauen?
Die durch die interne binäre Rechnerei verursachte Ungenauigkeit habe ich hoffentlich durch runden an der rechten Stelle unterbunden.
Du kannst für beide Zeiten einen Gültigkeitsbereich festlegen und auch die kleinstmögliche Diff. in Minuten.
vg armine
Hallo Armin.
Wenn ich bei Zeit 1 z.B. 20:00 eingebe, bekomme ich die Fehlermeldung, dass ich einen gültigen Wert zwischen 00:00 und 19:00 Uhr eingeben soll. Wenn ich aber 19:00 eingebe und bei Zeit 2 5:00, bekomme ich die Fehlermeldung, der Wert sollte zwischen 19:30 und 24:00 Uhr sein. Ich konnte aber in deinem Script nicht erkennen, dass der Wert eingegrenzt wurde. t_min 00:00 t_max 24:00?
Woran kann das liegen?
Der Schlüssel zum Erfolg ist die Funktion Num2Time().
Allerdings gibt es da auch ein kleines Problemchen mit der Ungenauigkeit beim rechnen...
Ich habe aber gerade keine Zeit dem auf den Grund zugehen. Im großen und ganzen passt es erstmal.
Hallo yuc2me.
Die Genauigkeit ist für meine Zwecke gerade wichtig, weil ich Arbeitszeiten habe, die z.B. so aussehen:
Dienstbeginn: 20:32
Dienstende: 6:21
Dienstzeit: 9:49
Pause: 0:30
Arbeitszeit: 9:19
Ist komisch...ist auch so
Nun habe ich mir ein wenig Gedanken darüber gemacht und herumgebastelt und bin zu folgender Rechnung gekommen:
Nehme ich gleich einmal oberes Beispiel...
Die Dienstzeit wäre 9:49
Wenn ich die Stunden und Minuten trenne, die Stunden bei 9 belasse und nur die Minuten (0,49 / 0,6) durch 0,6 teile, bekomme ich 0,82 (0,81666) heraus. Wenn ich beide mit einander addiere, ist der Wert (Dezimal) 9,82.
Mit diesem Wert kann ich rechnen.
Jetzt rechne ich die Pause noch hinzu bzw. ab (30/60=0,5), sind es 9,32.
Wenn ich jetzt die Nachkommastelle wieder mal 0,6 (mal 60/100) nehme, komme ich auf 0,192 (ich glaube man rundet mit Math.floor) gerundet auf 0,19 plus die 9 Std sind 9:19.
Habe ich was vergessen?
Die Rechnung ist schon verständlich, aber wie ich dies in einem Script unterbringe, weiss ich leider nicht.
Vielleicht du?
Gruss
Peerli