{"id":55000314,"date":"2005-12-01T00:00:00","date_gmt":"2020-05-06T15:18:11","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=314"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Projektzeitverwaltung_Teil_2","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/","title":{"rendered":"Projektzeitverwaltung, Teil 2"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<h3>Zusammenfassung<\/h3>\n<p>Erweitern Sie die Projektzeitverwaltung um Funktionen zur Auswertung der eingegebenen Daten.<\/p>\n<h3>Techniken<\/h3>\n<p>Formulare, Berichte<\/p>\n<h3>Voraussetzungen<\/h3>\n<p>Access 2000 oder h&ouml;her<\/p>\n<h3>Beispieldateien<\/h3>\n<p><a href=''fileadmin\/files\/acc0605ml01.zip''>Projektzeitverwaltung_FE_Controller.mdbProjektzeitverwaltung_FE_User.mdbProjektzeitverwaltung_BE.mdb<\/a><\/p>\n<h3><\/h3>\n<p><b>Andr&eacute; Minhorst, Duisburg<\/b><\/p>\n<p><b>Im ersten Teil der Beitragsreihe zum Thema Projektzeitverwaltung haben Sie die wichtigsten Techniken f&uuml;r die Eingabe der Projektzeiten kennen gelernt. Im vorliegenden Beitrag erfahren Sie, wie Sie die Datenbank so aufteilen, dass Mitarbeiter und &#8222;Controller&#8220; mit separaten Frontends auf die Daten zugreifen k&ouml;nnen &#8211; die einen schreiben, die anderen werten aus. Au&szlig;erdem erweitern Sie das Frontend zur Auswertung um einige wichtige Funktionen.<\/b><\/p>\n<p>Die im ersten Teil vorgestellte Version der Projektzeitverwaltung besteht lediglich aus einer einzigen Datenbank &#8211; an den Einsatz im Mehrbenutzerbetrieb ist damit also nicht zu denken.<\/p>\n<p>Ganz davon abgesehen soll die Datenbank ja nicht nur f&uuml;r den klassischen Mehrbenutzerbetrieb ausgelegt werden, sondern auch f&uuml;r unterschiedliche Benutzergruppen verschiedene Frontends anbieten.<\/p>\n<p>Da Sie ja m&ouml;glicherweise die erste Version der Projektzeitverwaltung verwendet haben, um Projektzeiten einzutragen, finden Sie nachfolgend eine Anleitung, wie Sie diese Datenbank aufteilen und die eingegebenen Daten weiterverwenden k&ouml;nnen.<\/p>\n<h3>Backend erstellen<\/h3>\n<p>Erzeugen Sie also zun&auml;chst eine neue, leere Access-Datenbank und importieren Sie dort alle Tabellen der Version des ersten Teils der Beitragsreihe. Dazu rufen Sie den Men&uuml;eintrag Datei\/Externe Daten\/Importieren&#8230; auf und w&auml;hlen im anschlie&szlig;end erscheinenden Dialog die alte Version der Projektzeitverwaltung aus. Anschlie&szlig;end importieren Sie die ben&ouml;tigten Tabellen, sodass sich im Datenbankfenster der neu erstellten Datenbank ein Bild wie in Bild 1 ergibt.<\/p>\n<p><IMG height=\"304\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic001.png\" width=\"494\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 1:  Datenbankfenster der Backend-Datenbank<\/span><\/b><\/p>\n<h3>Frontend mit Backend verkn&uuml;pfen<\/h3>\n<p>Anschlie&szlig;end k&ouml;nnen Sie die betroffenen Tabellen aus dem Datenbankfenster der ehemaligen &#8222;All-in-One&#8220;-Datenbank l&ouml;schen, um diese direkt im folgenden Zug mit den Tabellen des Backends zu verkn&uuml;pfen. Das l&auml;uft &uuml;ber den Men&uuml;eintrag Datei\/Externe Daten\/Tabellen verkn&uuml;pfen&#8230;, der Rest entspricht prinzipiell dem soeben durchgef&uuml;hrten Import-Vorgang.<\/p>\n<p>Das Datenbankfenster des Frontends sieht nun wie in Bild 2 aus. Die Pfeile markieren die verkn&uuml;pften Tabellen. In der fertigen Beispieldatenbank finden Sie zus&auml;tzlich die vier Tabellen tblNachnamen, tblOrte, tblStrassen und tblVornamen &#8211; neben den beiden Modulen clsBeispieldaten und mdlBeispieldaten sowie einigen Abfragen handelt es sich hierbei um die Werkzeuge, um ausreichend Testdaten anzulegen.<\/p>\n<p><IMG height=\"343\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic002.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 2:  Datenbankfenster des Frontends zur Projektzeiteingabe f&uuml;r die Mitarbeiter<\/span><\/b><\/p>\n<p><IMG height=\"338\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic003.png\" width=\"395\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 3:  Formular zum Anlegen, Bearbeiten und L&ouml;schen von Projekten<\/span><\/b><\/p>\n<p>Sie finden damit ein etwas umfangreicheres Beispiel f&uuml;r das Anlegen von Testdaten &#8211; Grundlagen dazu haben Sie ja bereits im Beitrag Beispieldaten generieren (Shortlink 303) kennen gelernt.<\/p>\n<p>Sie ben&ouml;tigen nun zwei verschiedene Frontends der Datenbank. Das Frontend zur Projektzeiteingabe f&uuml;r jeden einzelnen Mitarbeiter ist prinzipiell fertig, Sie m&uuml;ssen nur noch die bereits im ersten Teil des Beitrags beschriebenen Formulare zum Verwalten von Mitarbeitern und Projekten herausnehmen &#8211; nat&uuml;rlich nicht, bevor Sie eine Kopie des Frontends namens Projektzeitverwaltung_FE_Controller.mdb erstellt haben, das im folgenden Kapitel erweitert wird. Welche Datenbankobjekte in dem Benutzerfrontend &uuml;brig bleiben sollen, schauen Sie sich am einfachsten in der Beispieldatenbank Projektzeitverwaltung_FE_User.mdb an.<\/p>\n<p>Das Controller-Frontend enth&auml;lt drei Formulare, mit denen Sie Projekte, Mitarbeiter und Kunden verwalten k&ouml;nnen.<\/p>\n<h2>Projekte verwalten<\/h2>\n<p>Das Formular frmProjekte dient dem Verwalten der Projekte, deren Projektzeiten ermittelt werden sollen (siehe Bild 3). Es bietet wie auch die nachfolgend vorgestellten Formulare die M&ouml;glichkeit, einen anderen Datensatz mit einem Kombinationsfeld zur Schnellsuche auszuw&auml;hlen.<\/p>\n<p>Die Schaltfl&auml;chen unter den Daten des jeweiligen Datensatzes dienen dem Anlegen eines neuen (Neu) und dem L&ouml;schen des aktuell angezeigten Datensatzes (L&ouml;schen).<\/p>\n<p>Mit OK und Abbrechen l&auml;sst sich das Formular schlie&szlig;en &#8211; wahlweise mit oder ohne &uuml;bernahme eventuell get&auml;tigter &auml;nderungen. <\/p>\n<h2>Mitarbeiter verwalten<\/h2>\n<p>Das Formular zum Verwalten der Mitarbeiter erm&ouml;glicht nicht nur das Anlegen, L&ouml;schen und Bearbeiten der Mitarbeiterdatens&auml;tze, sondern auch noch das Zuordnen der Projekte, die ein Mitarbeiter bearbeiten d&uuml;rfen soll (siehe Bild 4).<\/p>\n<p>Dies ist eine wichtige Eigenschaft im Hinblick auf das Benutzerfrontend: Sie erinnern sich, dass das Benutzerfrontend zur Eingabe der Projektzeiten einen Dialog enthielt, mit dem die Mitarbeiter die Projekte und deren Reihenfolge ausw&auml;hlen k&ouml;nnen, die im Hauptformular der Anwendung angezeigt werden sollen.<\/p>\n<p><IMG height=\"498\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic004.png\" width=\"428\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 4:  Verwalten von Mitarbeitern und Zuordnen der jeweiligen Projekte<\/span><\/b><\/p>\n<p><IMG height=\"378\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic005.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 5:  R&uuml;ckblick auf den ersten Teil der Beitragsreihe: Das Hauptformular zur Projektzeiteingabe und der Dialog zum Verwalten der angezeigten Projekte<\/span><\/b><\/p>\n<p>Falls nicht, schauen Sie sich noch einmal Abb. 5 an. Der momentan im Vordergrund befindliche Dialog zeigt alle Projekte an, die dem Mitarbeiter im Dialog aus Bild 4 zugeordnet wurden. Sie k&ouml;nnen damit als Controller also festlegen, f&uuml;r welche Projekte der Mitarbeiter &uuml;berhaupt arbeiten soll.<\/p>\n<h2>Verwalten der Kunden<\/h2>\n<p>Auch die Kunden wollen verwaltet werden. Der Aufbau des dazu verwendeten Formulars ist dem zuvor beschriebenen &auml;hnlich &#8211; mit dem Unterschied, dass die dem Kunden zugeordneten Projekte nicht entfernt und wieder hinzugef&uuml;gt werden k&ouml;nnen (siehe Bild 6).<\/p>\n<p><!--30percent--><\/p>\n<p>Daf&uuml;r l&auml;sst sich mit einem Doppelklick auf einen Eintrag der Projektliste das jeweilige Projekt im entsprechenden Formular anzeigen.<\/p>\n<p>Bestenfalls l&auml;sst sich mit der Projektzeitverwaltung direkt ermitteln, wie teuer ein Projekt in der internen Endabrechnung ist. Die Zeiten, die Mitarbeiter mit den verschiedenen Projekten verbringen, werden ebenso gespeichert wie die T&auml;tigkeitsarten. Fehlt noch eine Gr&ouml;&szlig;e, die den Wert der geleisteten Arbeit umrei&szlig;t &#8211; also irgendeine Zahl, die sich in Euro ausdr&uuml;cken l&auml;sst.<\/p>\n<p>Die vorliegende Anwendung erm&ouml;glicht eine relativ flexible Herangehensweise: Es l&auml;sst sich je Mitarbeiter und T&auml;tigkeitsart ein Stundensatz festlegen.<\/p>\n<p>So k&ouml;nnen Sie im extremsten Fall tats&auml;chlich jede Kombination aus Mitarbeiter und T&auml;tigkeit mit einem individuellen Stundensatz belegen.<\/p>\n<p>Aber auch praxisn&auml;here Einstellungen sind m&ouml;glich &#8211; wie etwa das Festlegen eines festen Stundensatzes f&uuml;r eine bestimmte T&auml;tigkeit oder f&uuml;r einen bestimmten Mitarbeiter.<\/p>\n<p><IMG height=\"452\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic006.png\" width=\"430\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 6:  Verwalten von Kunden und Anzeigen ihrer Projekte<\/span><\/b><\/p>\n<p><IMG height=\"183\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic007.png\" width=\"496\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 7:  Tabellen zum Festlegen der Stundens&auml;tze je Mitarbeiter und T&auml;tigkeitsart<\/span><\/b><\/p>\n<p><IMG height=\"562\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic008.png\" width=\"438\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 8:  Flexibles Einstellen der Stundens&auml;tze je Mitarbeiter und T&auml;tigkeitsart<\/span><\/b><\/p>\n<p>F&uuml;r diese Flexibilit&auml;t sorgen die drei Tabellen tblMitarbeiter, tblTaetigkeitsarten und tblStundensaetze, deren Beziehungen Sie Bild 7 entnehmen k&ouml;nnen.<\/p>\n<p>Die flexible Handhabung erfordert ein wenig Hirnschmalz f&uuml;r die Gestaltung eines einfachen Formulars. Das Formular aus Bild 8 zeigt alle Kombinationen aus Mitarbeitern und T&auml;tigkeitsarten sowie den jeweiligen Stundensatz an.<\/p>\n<p>Auch wenn die Ansicht in der Abbildung einen anderen Eindruck erzeugt, l&auml;sst sich der Stundensatz individuell anpassen. Um diese &auml;nderung vorzunehmen, stellen Sie f&uuml;r die Optionsgruppe im oberen Bereich des Formulars die erste Option ein. Der Stundensatz l&auml;sst sich dann f&uuml;r jede Kombination einzeln einstellen.<\/p>\n<p>Falls Sie die ganze Stundensatz-Geschichte ein wenig einfacher halten m&ouml;chten, verwenden Sie eine der beiden anderen Optionen. Wenn Sie etwa die Option T&auml;tigkeitsart w&auml;hlen und dann den Stundensatz f&uuml;r eine T&auml;tigkeitsart eines Mitarbeiters &auml;ndern, wird diese automatisch auch f&uuml;r alle anderen Mitarbeiter angepasst.<\/p>\n<p>Das Gleiche gilt f&uuml;r die Mitarbeiter: Wenn Sie die dritte Option markieren und dann einen Stundensatz anpassen, wird dieser f&uuml;r alle anderen Kombinationen mit dem gleichen Mitarbeiter auf diesen Stundensatz eingestellt.<\/p>\n<p>Das funktioniert nat&uuml;rlich nicht von allein &#8211; ein wenig VBA ist dazu schon vonn&ouml;ten. Die entsprechende Prozedur, die beim Eintreten des Ereignisses Nach Aktualisierung des Textfeldes mit dem Stundensatz ausgel&ouml;st wird, sieht wie in Quellcode 1 aus.<\/p>\n<p>Eine Select Case-Verzweigung pr&uuml;ft, welcher Wert in der Optionsgruppe ausgew&auml;hlt ist, und sorgt f&uuml;r die Ausf&uuml;hrung der passenden Codezeilen. Ist die erste Option ausgew&auml;hlt, kann die Routine direkt wieder beendet werden, da nur der ohnehin ge&auml;nderte Datensatz betroffen ist.<\/p>\n<p>Wenn aber beispielsweise die zweite Option aktiv ist, l&ouml;st dies zwei Aktionsabfragen aus: Die erste aktualisiert alle Datens&auml;tze der Tabelle tblStundensaetze, die die gleiche T&auml;tigkeitsart wie der im Formular angepasste Datensatz haben, auf den entsprechenden Stundensatz.<\/p>\n<p>Die zweite Abfrage versucht, diesen Stundensatz f&uuml;r alle vorhandenen Mitarbeiter in Kombination mit der betreffenden T&auml;tigkeitsart hinzuzuf&uuml;gen &#8211; was in den meisten F&auml;llen scheitern d&uuml;rfte, da die Tabelle einen eindeutigen Index &uuml;ber die beiden Felder TaetigkeitsartID und MitarbeiterID enth&auml;lt.<\/p>\n<p><b>Quellcode 1: Anpassen der Stundens&auml;tze von Gruppen von Mitarbeitern oder T&auml;tigkeitsarten<\/b><\/p>\n<pre>Private Sub Stundensatz_AfterUpdate()\r\n    Dim db As DAO.Database\r\n    Dim lngMitarbeiterID As Long\r\n    Dim lngTaetigkeitsartID As Long\r\n    Dim lngStundensatzID As Long\r\n    Dim intStundensatz As Integer\r\n    intStundensatz = Me!Stundensatz\r\n    lngStundensatzID = Me.StundensatzID\r\n    Set db = CurrentDb\r\n    Select Case Me.Parent.ogrStundensaetze\r\n        Case 1\r\n            Exit Sub\r\n        Case 2\r\n            lngTaetigkeitsartID = Me.TaetigkeitsartID\r\n            db.Execute \"UPDATE tblStundensaetze SET Stundensatz = \" & intStundensatz _                & \" WHERE TaetigkeitsartID = \" & lngTaetigkeitsartID _                & \" AND NOT StundensatzID = \" & lngStundensatzID\r\n            On Error Resume Next\r\n            db.Execute \"INSERT INTO tblStundensaetze(MitarbeiterID, TaetigkeitsartID, \" _                & \"Stundensatz) SELECT MitarbeiterID, \" & lngTaetigkeitsartID _                & \" AS TaetigkeitsartID, \" & intStundensatz _                & \" AS Stundensatz FROM tblMitarbeiter\"\r\n            On Error GoTo 0\r\n        Case 3\r\n            lngMitarbeiterID = Me.MitarbeiterID\r\n            db.Execute \"UPDATE tblStundensaetze SET Stundensatz = \" & intStundensatz _                & \" WHERE MitarbeiterID = \" & lngMitarbeiterID & \" AND NOT StundensatzID = \" _                & lngStundensatzID\r\n            On Error Resume Next\r\n            db.Execute \"INSERT INTO tblStundensaetze(MitarbeiterID, TaetigkeitsartID, \" _                & \"Stundensatz) SELECT \" & lngMitarbeiterID _                & \" AS MitarbeiterID, TaetigkeitsartID, \" & intStundensatz _                & \" AS Stundensatz FROM tblTaetigkeitsarten\"\r\n            On Error GoTo 0\r\n    End Select\r\n    Set db = Nothing\r\nEnd Sub<\/pre>\n<p>Der Sinn des Ganzen ist, dass eventuell neu angelegte und noch nicht beim Festlegen von Stundens&auml;tzen ber&uuml;cksichtigte Mitarbeiter direkt mit dem f&uuml;r diese T&auml;tigkeitsart g&uuml;ltigen Stundensatz bedacht werden.<\/p>\n<p>Die wichtigsten Funktionen einer Anwendung wie die Projektzeitverwaltung sind die Auswertungen.<\/p>\n<h2>Pivot-Tabellen<\/h2>\n<p>Wie Sie im Beitrag Pivot-Tabellen mit Access (Shortlink 311) lesen k&ouml;nnen, bieten Pivot-Tabellen sehr gute M&ouml;glichkeiten, Daten wie die der Projektzeitverwaltung auszuwerten. Die Beispiele dieses Beitrags besch&auml;ftigen sich mit der Projektzeitverwaltung, daher sei an dieser Stelle auf den genannten Beitrag verwiesen.<\/p>\n<p><IMG height=\"205\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic009.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 9:  Datenherkunft des Berichts zur Ausgabe der T&auml;tigkeiten je Mitarbeiter<\/span><\/b><\/p>\n<h2>Berichte<\/h2>\n<p><IMG height=\"375\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic010.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 10:  Der Bericht zur Ausgabe der T&auml;tigkeiten eines Mitarbeiters in der Entwurfsansicht<\/span><\/b><\/p>\n<p>Eine andere und Ihnen vermutlich gel&auml;ufigere Art der Auswertung sind Berichte. Im Rahmen der Projektzeitverwaltung lernen Sie zwei unterschiedliche Berichte kennen.<\/p>\n<h3>Ausgabe der T&auml;tigkeiten von Mitarbeitern<\/h3>\n<p>Der erste Bericht gibt eine &uuml;bersicht &uuml;ber die an einem Tag verrichteten T&auml;tigkeiten eines Mitarbeiters. Die Datenherkunft des Berichts enth&auml;lt die Tabellen tblProjekte, tblProjektzeiten, tblMitarbeiter und tblTaetigkeitsarten und ist wie in Bild 9 aufgebaut.<\/p>\n<p>Der Bericht selbst ist wie in Bild 10 gegliedert. Er enth&auml;lt zwei Gruppierungen mit Gruppenkopf. Die erste sorgt f&uuml;r eine getrennte Auflistung aller T&auml;tigkeiten nach Mitarbeitern, die zweite fasst die T&auml;tigkeiten eines Kalendertages zusammen.<\/p>\n<p>Der Gruppenkopf der Mitarbeiter-Gruppierung zeigt lediglich den Nachnamen und den Vornamen an. F&uuml;r die Gruppierung nach Kalendertagen sorgt die Einstellung aus dem Dialog Sortieren und gruppieren aus Bild 10: <\/p>\n<p>F&uuml;r die Eigenschaft Gruppieren nach w&auml;hlen Sie f&uuml;r eine Gruppierung nach Tagen den Eintrag Tag aus.<\/p>\n<p>Damit der Gruppenkopf neben den Spalten&uuml;berschriften als Startzeit auch ein Datum und nicht noch zus&auml;tzlich die Uhrzeit anzeigt, setzen Sie das Format dieses Textfeldes auf Datum, lang.<\/p>\n<p>F&uuml;r beide Gruppierungen stellen Sie au&szlig;erdem den Wert der Eigenschaft Zusammenhalten auf Ganze Gruppe ein.<\/p>\n<p>Das Ergebnis sieht schlie&szlig;lich wie in Bild 11 aus.<\/p>\n<h3>Ausgabe der Ums&auml;tze nach Kunden und Projekten<\/h3>\n<p><IMG height=\"325\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic011.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 11:  Anzeige der T&auml;tigkeiten eines Mitarbeiters<\/span><\/b><\/p>\n<p>Wesentlich interessanter als die Ausgabe der T&auml;tigkeiten einzelner Mitarbeiter ist die Aufarbeitung der Ums&auml;tze nach Kunden und Projekten. Wegen der zweifachen m:n-Beziehung zwischen den Tabellen tblProjektzeiten und tblStundensaetze wirkt auch die Datenherkunft dieses Berichts etwas un&uuml;bersichtlich, was sich aber auf den zweiten Blick relativiert (siehe Bild 12).<\/p>\n<p>Nicht sichtbar sind die Felder, deren Beteiligung zwangsl&auml;ufig ist &#8211; daf&uuml;r finden Sie in der Abbildung die interessanten, da berechneten Felder: Die Zeit ergibt sich aus der Differenz der Endzeit und der Startzeit einer T&auml;tigkeit und wird als Zeit, 24Std formatiert.<\/p>\n<p>Multipliziert mit dem Stundensatz der entsprechenden Kombination aus Mitarbeiter und T&auml;tigkeitsart ergibt das den Umsatz f&uuml;r diese T&auml;tigkeit.<\/p>\n<p><IMG height=\"240\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic012.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 12:  Datenherkunft des Berichts zur Ausgabe der Ums&auml;tze nach Kunden und Projekten<\/span><\/b><\/p>\n<p>Da Berichte gelegentlich etwas hinten anstehen, soll dieser einmal in voller L&auml;nge vorgestellt werden. Die Datenherkunft kennen Sie nun bereits und damit ist auch schon ein gro&szlig;es St&uuml;ck Arbeit erledigt.<\/p>\n<p>Und so geht es weiter:<\/p>\n<p>Die Entwurfsansicht des Berichts sollte nun etwa wie in Bild 13 aussehen.<\/p>\n<p><IMG height=\"393\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic013.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 13:  Entwurfsansicht der Berichts zur Anzeige der Ums&auml;tze nach Kunden und Projekten<\/span><\/b><\/p>\n<p><IMG height=\"511\" src=\"..\/fileadmin\/_temp_\/{5906195C-5D28-43F7-827E-78CDE8BF511B}\/pic014.png\" width=\"500\" border=\"0\"><\/p>\n<p><b><\/b><\/p>\n<p><b><span style=\"color:darkgrey\">Bild 14:  Ums&auml;tze nach Kunden und Projekten<\/span><\/b><\/p>\n<p>Das &ouml;ffnen des Berichts k&ouml;nnte nun &#8211; sofern Sie mit der Beispieldatenbank arbeiten &#8211; ein wenig dauern. Obwohl nur wenige Seiten ausgegeben werden, m&uuml;ssen dennoch alle T&auml;tigkeiten ausgewertet werden &#8211; in der Beispieldatenbank sind dies immerhin &uuml;ber 25.000. Das Ergebnis k&ouml;nnen Sie in Bild 14 begutachten.<\/p>\n<p>Mit der hier vorgestellten L&ouml;sung k&ouml;nnen Sie auf unkomplizierte Weise die T&auml;tigkeiten verschiedener Mitarbeiter f&uuml;r unterschiedliche Projekte erfassen. Die Mitarbeiter ben&ouml;tigen dazu nur das ohne Access-Fenster angezeigte Formular, das im ersten Teil dieser Beitragsreihe vorgestellt wurde.<\/p>\n<p>M&ouml;glicherweise k&ouml;nnte man auch die dortige Eingabe noch vereinfachen, indem man f&uuml;r einen neuen Eintrag die zuletzt in Zusammenhang mit der gegebenen Kombination aus Mitarbeiter und Projekt eingegebene T&auml;tigkeitsbeschreibung als Standardwert vorgibt. Arbeitet der Mitarbeiter mit Unterbrechungen an derselben T&auml;tigkeit, kann dies wertvolle Sekunden sparen.<\/p>\n<p>Gelegentlich vergisst man vermutlich, dem Projektzeitmanager einen Wechsel der T&auml;tigkeit mitzuteilen. Hier k&ouml;nnte man noch eine Art &#8222;Weckfunktion&#8220; hinzuf&uuml;gen, die etwa das Symbol im Systray alle paar Minuten blinken l&auml;sst.<\/p>\n<p>Und was die Auswertungen angeht, kann dieser Beitrag nat&uuml;rlich nur Vorschl&auml;ge machen &#8211; hier werden Sie sicher ausreichend eigene Ideen haben. Sie haben mit diesem Tool &#8211; wenn es die Mitarbeiter einsetzen &#8211; jedenfalls ein m&auml;chtiges Instrument zum Messen des Aufwandes f&uuml;r ein Projekt und damit zum Vergleichen des tats&auml;chlichen mit dem geplanten Aufwand. Verbesserungsvorschl&auml;ge k&ouml;nnen Sie wie gehabt unter info@access-im-unternehmen.de loswerden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Im ersten Teil der Beitragsreihe zum Thema Projektzeitverwaltung haben Sie die wichtigsten Techniken f&uuml;r die Eingabe der Projektzeiten kennen gelernt. Im vorliegenden Beitrag erfahren Sie, wie Sie die Datenbank so aufteilen, dass Mitarbeiter und &#8222;Controller&#8220; mit separaten Frontends auf die Daten zugreifen k&ouml;nnen &#8211; die einen schreiben, die anderen werten aus. Au&szlig;erdem erweitern Sie das Frontend zur Auswertung um einige wichtige Funktionen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662005,66062005,44000027],"tags":[],"class_list":["post-55000314","post","type-post","status-publish","format-standard","hentry","category-662005","category-66062005","category-Loesungen"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Projektzeitverwaltung, Teil 2 - Access im Unternehmen<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Projektzeitverwaltung, Teil 2\" \/>\n<meta property=\"og:description\" content=\"Im ersten Teil der Beitragsreihe zum Thema Projektzeitverwaltung haben Sie die wichtigsten Techniken f&uuml;r die Eingabe der Projektzeiten kennen gelernt. Im vorliegenden Beitrag erfahren Sie, wie Sie die Datenbank so aufteilen, dass Mitarbeiter und &quot;Controller&quot; mit separaten Frontends auf die Daten zugreifen k&ouml;nnen - die einen schreiben, die anderen werten aus. Au&szlig;erdem erweitern Sie das Frontend zur Auswertung um einige wichtige Funktionen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-06T15:18:11+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Minhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Minhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"12\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Projektzeitverwaltung, Teil 2\",\"datePublished\":\"2020-05-06T15:18:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/\"},\"wordCount\":2312,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/2edcb06f9efb4ed9931fe3c77705f866\",\"articleSection\":[\"2005\",\"6\\\/2005\",\"L\u00f6sungen\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/\",\"name\":\"Projektzeitverwaltung, Teil 2 - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/2edcb06f9efb4ed9931fe3c77705f866\",\"datePublished\":\"2020-05-06T15:18:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/2edcb06f9efb4ed9931fe3c77705f866\",\"contentUrl\":\"http:\\\/\\\/vg06.met.vgwort.de\\\/na\\\/2edcb06f9efb4ed9931fe3c77705f866\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Projektzeitverwaltung_Teil_2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Projektzeitverwaltung, Teil 2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"name\":\"Access im Unternehmen\",\"description\":\"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/access-im-unternehmen.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\",\"name\":\"Andr\u00e9 Minhorst Verlag\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"contentUrl\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"width\":370,\"height\":111,\"caption\":\"Andr\u00e9 Minhorst Verlag\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Projektzeitverwaltung, Teil 2 - Access im Unternehmen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/","og_locale":"de_DE","og_type":"article","og_title":"Projektzeitverwaltung, Teil 2","og_description":"Im ersten Teil der Beitragsreihe zum Thema Projektzeitverwaltung haben Sie die wichtigsten Techniken f&uuml;r die Eingabe der Projektzeiten kennen gelernt. Im vorliegenden Beitrag erfahren Sie, wie Sie die Datenbank so aufteilen, dass Mitarbeiter und \"Controller\" mit separaten Frontends auf die Daten zugreifen k&ouml;nnen - die einen schreiben, die anderen werten aus. Au&szlig;erdem erweitern Sie das Frontend zur Auswertung um einige wichtige Funktionen.","og_url":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/","og_site_name":"Access im Unternehmen","article_published_time":"2020-05-06T15:18:11+00:00","og_image":[{"url":"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"12\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Projektzeitverwaltung, Teil 2","datePublished":"2020-05-06T15:18:11+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/"},"wordCount":2312,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#primaryimage"},"thumbnailUrl":"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866","articleSection":["2005","6\/2005","L\u00f6sungen"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/","url":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/","name":"Projektzeitverwaltung, Teil 2 - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#primaryimage"},"thumbnailUrl":"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866","datePublished":"2020-05-06T15:18:11+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#primaryimage","url":"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866","contentUrl":"http:\/\/vg06.met.vgwort.de\/na\/2edcb06f9efb4ed9931fe3c77705f866"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Projektzeitverwaltung_Teil_2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Projektzeitverwaltung, Teil 2"}]},{"@type":"WebSite","@id":"https:\/\/access-im-unternehmen.de\/#website","url":"https:\/\/access-im-unternehmen.de\/","name":"Access im Unternehmen","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access","publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/access-im-unternehmen.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/access-im-unternehmen.de\/#organization","name":"Andr\u00e9 Minhorst Verlag","url":"https:\/\/access-im-unternehmen.de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/","url":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","contentUrl":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","width":370,"height":111,"caption":"Andr\u00e9 Minhorst Verlag"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","caption":"Andr\u00e9 Minhorst"}}]}},"_links":{"self":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/comments?post=55000314"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55000314\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55000314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55000314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55000314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}