Frage zur Prozedur P_CZEITIST_EINZELTAGE_NEU

Alles, was den Programmierer beschäftigt

Moderator: SYNERPY

Antworten
miboe
Beiträge: 1295
Registriert: Fr Jul 28, 2006 9:13 am

Frage zur Prozedur P_CZEITIST_EINZELTAGE_NEU

Beitrag von miboe »

Guten Abend,

soweit ich es verstanden habe, ist das die Prozedur, die zum Einsatz kommt, wenn ich IST-Zeiten in der Zeiterfassung vollständig ohne Berücksichtigung der Planzeiten berechnen lassen will. Da ist es aber doch nicht wirklich sinnvoll, wenn man für die Pausen dann doch die Planzeiten zusätzlich berücksichtigt, oder?

Wenn man die Auswertung rein nach IST-Zeiten macht, ist es doch sehr wahrscheinlich, daß Mitarbeiter ihre Pausen auch mit Gehen und Kommen buchen. Das berücksichtigt die Prozedur sauber. Wenn nun aber der Mitarbeiter seine Pause - warum auch immer - um 10 Minuten nach hinten schieben mußte, liegt die KOMMEN Buchung am Pausenende 10 Minuten HINTER der Planzeit für das Pausenende. Und die Prozedur zieht ihm deswegen knallhart weitere 10 Minuten ab ... weil die Pause nämlich aus den Planzeiten mit Kennzeichen X berechnet wird.

Die Prozedur liesse sich mit sehr wenig Aufwand und EINEM zusätzlichen Feld entweder in BSZP oder BSZST für die Mindestpause genau dahin trimmen, daß sie das tut, was wir im anderen Thread schon diskutiert haben. Pausenzeiten laut Buchung abziehen oder wenn nötig, auf die Mindestpause hochrechnen. Und dabei die Planzeit mit Kennzeichen X ignorieren.

Wäre ja vielleicht einen Versuch wert, ob ihr das noch in die 2012 einbauen könnt.

Gruß
Michael
Nur wer das Unmögliche versucht, wird das Machbare erreichen!
--
Datenbank: 2012-A02
Programm: 4.2.5.65
OS: Win 7 Pro / Ubuntu 10.04.3
admin
Site Admin
Beiträge: 2673
Registriert: Di Feb 10, 2004 5:48 am
Wohnort: Bayreuth

Beitrag von admin »

Wenn die Mitarbeiter Pausen stempeln, warum sollten diese dann eingetragen werden? Normalerweise werden Pausen entweder nicht gestempelt und sind eingetragen oder werden gestempelt, sind dafür aber nicht eingetragen.
miboe
Beiträge: 1295
Registriert: Fr Jul 28, 2006 9:13 am

Beitrag von miboe »

Stimmt prinzipiell, nur sind wir dann wieder bei der Problematik, daß es keine Möglichkeit gibt, die reine Dauer der Pause irgendwo zu hinterlegen. Das ist aber - alleine schon mit Blick auf §4 Arbeitszeitgesetz - eine Sache, die zur Abbildung der Mindestpausen notwendig wäre.

Ich habe in einer Testdatenbank, die ich gerade nicht im Zugriff habe, deswegen unten keine Code-Fragemente, mal folgendes erfolgreich getestet:

1. Aus der 2012-B15 die genannte Prozedur übernommen und alles was mit der TOLKOMMEN und TOLGEHEN zu tun hat, rausgeschmissen. Die Prozedur war damit direkt kompatibel zur 2011-A02. Durch diesen Schritt wurden dann auch die Feiertage korrekt mit 8 Stunden IST bewertet, was die Prozedur in der original 2011-A02 nicht macht

2. Im Firmenstamm natürlich auf die IST-Berechnungsart A umgestellt

3. In der Prozedur im Bereich, wo die Pausen abgezogen werden (als der Block mit IF (stunden > 0) ... die beiden Blöcke, wo "künstliche" PKDATUM und PGDATUM erzeugt werden auskommentiert. Ergebnis davon: die Pausenplanzeiten werden nun auch nicht mehr berücksichtigt ...

4. (wenn man schon dran ist :) ) Am Ende von If (NFORTSETZUNG = 1) einen Codeblock eingebaut, der
4a) aus dem aktuellen BDATUM sich mit der passenden Prozedur das Pausenmodell aus BSMKW ermittelt
4b) dann wiederum mit einer vorhandenen Prozedur die Pausenzeit für dieses Modell in Minuten ermittelt, was ich dann als MINDESTpause für diesen Tag werte
4c) aus der ersten Kommen und der letzten Gehen Buchung die gesamte Anwesenheit errechnet, davon die zuvor ja errechneten TAGSTUNDEN abzieht und prüft, ob die so ermittelte gesamte Pause am Tag kleiner war als die Mindestpause
4d) wenn ja, wird die Differenz Mindestpause-ISTpause nochmal von TAGSTUNDEN und STD_PRODUKTIV abgezogen

Nicht sonderlich schön, aber es tut, wie ich es erwartet hatte ... bei Interesse kann ich heute abend gerne noch die Code-Fragmente posten.

Gruß
Michael
Nur wer das Unmögliche versucht, wird das Machbare erreichen!
--
Datenbank: 2012-A02
Programm: 4.2.5.65
OS: Win 7 Pro / Ubuntu 10.04.3
Antworten