Christoph Spielmann, Düsseldorf
Dass Besprechungen unter den Mitgliedern eines Teams sinnvoll sind, steht außer Frage. Obwohl hier in der Regel wertvolle Ressourcen gebunden werden und die eigentlichen Aufgaben liegen bleiben, sind Sie zur Erreichung des Projektziels unverzichtbar. Dies gilt allerdings nur für sorgfältig geplante Besprechungen, bei denen die Zeit für die einzelnen Besprechungspunkte im Vorhinein definiert wird. Die hier vorgestellte Musterlösung hilft Ihnen bei der Planung und der Protokollierung einer Besprechung.
Die hier vorgestellte Datenbank besteht aus insgesamt sechs Tabellen, in denen die einzelnen Informationen zu den Besprechungen gespeichert werden (siehe Bild 1).
Bild 1: Die Datenstruktur der Musterlösung
Die zentrale Tabelle trägt den Namen tblBesprechungen. In dieser Tabelle wird neben dem Besprechungstitel auch das Datum der Besprechung hinterlegt. Der Primärschlüssel ist also numerisches AutoWert-Feld ausgelegt. Er trägt den Namen BesprechungID. Abb. 2 gibt Ihnen einen überblick über den Aufbau der Tabelle.
Bild 2: Der Aufbau der Tabelle tblBesprechungen in der Entwurfsansicht
Die Tabelle tblBesprechungen steht mit der Tabelle tblTagesordnungspunkte in einer 1-zu-n-Beziehung. In der Tabelle tblTagesordnungspunkte werden die einzelnen Besprechungspunkte hinterlegt. Dazu gehören eine Beschreibung des Punkts, der geplante Zeitraum für diesen Punkte sowie eine Bemerkung.
Außerdem ist ein Feld namens Protokoll vorhanden. Hier wird vom Schriftführer während oder nach Abschluss der Besprechung eine Zusammenfassung des Ergebnisses eingetragen. Die Beziehung zu der Tabelle tblBesprechungen wird über das Fremdschlüsselfeld BesprechungID hergestellt. Den kompletten Aufbau der Tabelle entnehmen Sie Bild 3.
Bild 3: Der Aufbau der Tabelle tblTagesordnungspunkte in der Entwurfsansicht
Die dritte Tabelle namens tblBesprechungsunterlagen steht ebenfalls in einer 1-zu-n-Beziehung zur Tabelle tblBesprechungen. In dieser Tabelle werden die zur Besprechung erforderlichen Unterlagen aufgeführt, die von den Teilnehmern mitzubringen sind. Den Aufbau entnehmen Sie Bild 4.
Bild 4: Der Aufbau der Tabelle tblBesprechungsunterlagen in der Entwurfsansicht
Die noch verbleibenden drei Tabellen haben die Aufgabe, die Teilnehmer an einer Besprechung zu verwalten. Die Personen werden hierbei in der Tabelle tblMitarbeiter gespeichert (siehe Bild 5).
Bild 5: Der Aufbau der Tabelle tblMitarbeiter in der Entwurfsansicht
Da jeder Mitarbeiter an mehreren Besprechungen teilnehmen und eine Besprechung mehrere Teilnehmer haben kann, besteht zwischen den Tabellen tblBesprechungen und tblMitarbeiter eine n:m-Beziehung. Diese wird über die Zwischentabelle tblBesprechungsteilnehmer realisiert.
Die Tabelle besteht aus einem Primärschlüssel namens BesprechungsteilnehmerID sowie drei Fremdschlüsseln (siehe Bild 6). Die ersten beiden Fremdschlüssel stellen eine Beziehung zu den Tabellen tblBesprechungen und tblMitarbeiter her. Diese beiden Felder sind für die Herstellung der n:m-Beziehung bereits ausreichend.
Bild 6: Der Aufbau der Tabelle tblBesprechungsteilnehmer in der Entwurfsansicht
Das dritte Fremdschlüsselfeld BesprechungsteilnehmerfunktionID stellt eine Beziehung zu der noch nicht vorgestellten Tabelle tblBesprechungsteilnehmerfunktionen her (siehe Bild 7).
Bild 7: Der Aufbau der Tabelle tblBesprechungsteilnehmerfunktionen in der Entwurfsansicht
In dieser Tabelle sind die einzelnen Funktionen hinterlegt, die ein Teilnehmer einer Besprechung haben kann. Dazu gehören beispielsweise die Einträge Besprechungsleiter, Protokollführer, Erforderlicher Teilnehmer und Optionaler Teilnehmer (siehe Bild 8).
Darüber hinaus enthält die Tabelle noch ein Feld namens Reihenfolge. Hier wird die Reihenfolge festgelegt, in der die Teilnehmer in dem später noch vorgestellten Bericht rptTagesordnung ausgegeben werden. So kann beispielsweise definiert werden, dass der Besprechungsleiter immer an oberster Position und die optionalen Teilnehmer immer als Letztes aufgelistet werden.
Bild 8: Die Datensätze der Tabelle tblBesprechungsteilnehmerfunktionen.
Damit bei Bedarf noch Funktionen zwischen bereits vorhandenen Funktionen eingeordnet werden können, ist die Reihenfolge in Zehnerschritten eingetragen. So können Sie beispielsweise noch nachträglich einen stellvertretenden Protokollführer hinzufügen und hier als Reihenfolge die Zahl 25 eintragen.
Bild 9: Das Formular frmBesprechungen
Um die Erfassung einer Besprechung möglichst komfortabel zu gestalten, werden alle Daten über ein einzelnes Formular erfasst. Dieses trägt den Namen frmBesprechungen (siehe Bild 9).
Im oberen Bereich stellt das Formular Felder zur Eingabe des Besprechungstitels sowie des Datums zur Verfügung.
Darunter sind drei Unterformulare angeordnet, die die Erfassung der Teilnehmer, der Unterlagen sowie der Tagesordnungspunkte ermöglichen. Zur Anlage des Formulars gehen Sie wie folgt vor:
Das Formular sollte nun den in Bild 9 gezeigten Aufbau haben.
Bild 10: Der Kopfbereich des Formulars frmBesprechungen in der Entwurfsansicht.
Zur Anlage des ersten Unterformulars gehen Sie wie folgt vor:
Automatische Anlage neuerMitarbeiter
Wie bereits eingangs erwähnt, soll die Erfassung aller Daten über ein Hauptformular möglich sein. über das soeben angelegte Unterformular werden bis jetzt jedoch nur Besprechungsteilnehmer zugeordnet, nicht jedoch neue Mitarbeiter angelegt.
SELECT tblMitarbeiter.Mitarbeitername, tblMitarbeiter.MitarbeiterID FROM tblMitarbeiter ORDER BY tblMitarbeiter.Mitarbeitername;
Quellcode 1
SELECT tblBesprechungsteilnehmerfunktionen.Besprechungsteilnehmerfunktion, tblBesprechungsteilnehmerfunktionen.BesprechungsteilnehmerfunktionID FROM tblBesprechungsteilnehmerfunktionen ORDER BY tblBesprechungsteilnehmerfunktionen.Besprechungsteilnehmerfunktion;
Quellcode 2
Private Sub MitarbeiterID_NotInList(NewData As String, Response As Integer) If MsgBox("Möchten Sie den Mitarbeiter hinzufügen", vbYesNo + vbQuestion, _ "Neuer Mitarbeiter") = vbYes Then Dim SQL As String SQL = "INSERT INTO tblMitarbeiter (Mitarbeitername) VALUES (''" _ & NewData & "'')" CurrentDb.Execute SQL Response = acDataErrAdded Else Response = acDataErrContinue End If End Sub
Quellcode 3
Um dies zu ermöglichen, wird nun noch das Kombinationsfeld MitarbeiterID so erweitert, daß alle nicht in der Tabelle tblMitarbeiter enthaltenen Personen automatisch hinzugefügt werden. Gehen Sie hierzu wie folgt vor:
Diese Prozedur zeigt zunächst ein Meldungsfenster an, über das der Benutzer die Anlage eines neuen Benutzers bestätigen muss.
Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...
den kompletten Artikel im PDF-Format mit Beispieldatenbank
diesen und alle anderen Artikel mit dem Jahresabo