Hallo zusammen,
in einem Access 2007 Bericht habe ich für verschiedene Mitarbeiter eine Liste mit :
Datum, Login, Logout, Tätigkeit ( Arbeit/Krank/Urlaub), Arbeitszeit ( berechnet über login und logout)
das funktioniert so sehr gut.
Als zusammenfassung wird die Anzahl der Tage mit Urlaub, Krank und Arbeit gezählt.
Wenn jetzt ein Mitarbeiter sich am gleichen Tag mehrmals An- und Abmeldet, dann habe ich zu viele Arbeitstage in der Summe.
Das ist beispielsweise so bei einer Arbeitsunterbrechung zur Mittagspause die jedoch nicht jeder immer macht.
Wie kann ich also die Tätigkeit "Arbeit" zählen und diese doppelzählung zu vermeiden?
Grüße
Laucha
[Anhang gelöscht durch Administrator]
Hallo Laucha
Wahrscheinlich legst du bei jeder deiner Anmeldung einen neuen Datensatz mit dem Tagesdatum an, auf dem du dann die Berechnung deiner Arbeitstage ausführtst, was nun dazu führt das die Arbeitstage zu hoch berechnet.
Das Tagesdatum gehört in eine Tabelle 1:n die Erfasten Stunden in eine zweite Tabelle (An.- Abmeldungen)
ZitatWahrscheinlich legst du bei jeder deiner Anmeldung einen neuen Datensatz mit dem Tagesdatum an, auf dem du dann die Berechnung deiner Arbeitstage ausführst
Das ist der richtige Weg - die Anzahl der Arbeitstage ergibt sich aus der Anzahl der (nach Datum) gruppierten Datensätze.
ZitatDas Tagesdatum gehört in eine Tabelle 1:n die Erfasten Stunden in eine zweite Tabelle (An.- Abmeldungen)
Das ist der umständliche Weg - und mit Mehraufwand verbunden.
Hallo Maxel
ZitatZitatWahrscheinlich legst du bei jeder deiner Anmeldung einen neuen Datensatz mit dem Tagesdatum an, auf dem du dann die Berechnung deiner Arbeitstage ausführst
Das ist der richtige Weg - die Anzahl der Arbeitstage ergibt sich aus der Anzahl der (nach Datum) gruppierten Datensätze.
Wenn dem so wäre würde das Ergebnis nicht erhaus kommen
Zitat von Laucha:
ZitatWenn jetzt ein Mitarbeiter sich am gleichen Tag mehrmals An- und Abmeldet, dann habe ich zu viele Arbeitstage in der Summe.
Das ist beispielsweise so bei einer Arbeitsunterbrechung zur Mittagspause die jedoch nicht jeder immer macht.
Hallo Maxel und Stapi,
die Stundendaten bekomme ich monatlich in einer Excel-Datei aus einem anderen Programm. Die Stundendaten liegen in meiner Access Anwendung alle in einer Tabelle. In der Tabelle gibt es einen Eintrag immer mit: Datum, Personalnummer, Login, Logoff, Tätigkeitsschlüssel.
Es gibt dann noch Tabellen zu Mitarbeiterdaten, Nachtstundendefinition und Tätigkeiten. Ich bin ganz froh, dass alles gut funktioniert, denn ich hab schon recht lange gebraucht bis mit den Nacht- und Sonntagsstunden alles funktioniert hat.
Für mein Problem hatte ich eher eine Lösung mit einer Formel im Steuerelementinhalt gedacht nach dem Motto:
"Zähle die Tage an denen Arbeitszeit steht aber gleiche Tage nicht doppelt zählen"
Mit Gruppieren hab ich´s schon probiert, hat aber nicht hingehauen.
Der Fall mehrerer Einträge ist in meinem Fall eher ein Problem bei wenigen Mitarbeitern und ich wollte da nicht gleich mit der großen Nadel umstricken.
ZitatMit Gruppieren hab ich´s schon probiert, hat aber nicht hingehauen
Und wie Du das gemacht hast, solltest Du dem Forum anvertrauen.
Denn warum das nicht geklappt hat, wird hier schnell ermittelt.
Hallo 69bruno,
Das Datum habe ich im Bericht über Gruppieren/Sortieren versucht zu gruppieren. Die Arbeitstage, Urlaubstage und Feiertage werden in der zum Bericht gehörenden Abfrage nach dem Schlüssel angezeigt (Arb_Tage: Wenn([Tätigkeit]="Arbeitszeit";1)) und die zähle das im Bericht einfach zusammen. So bekomme ich im Seitenkopf die jeweiligen Tage im gewählten Zeitraum.
Hallo mal wieder. Nach kurzer Abwesenheit melde ich mich zurück.
Da ich jetzt mal davon ausgehe, dass du für den Bericht alle Daten brauchst und nicht bereits die Abfrage gruppiert werden kann, bleibt wohl erst mal nur die Variante der Aggregatfunktion oder die des Unterberichtes, der auf einer gruppierten Abfrage beruht.......