Besprechungstermine planen

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:

  • Aktivieren Sie im Datenbankfenster die Tabelle tblBesprechungen.
  • Wählen Sie den Befehl Formular des Menüs Einfügen aus.
  • Wählen Sie den Eintrag AutoFormular: Einspaltig mit einem Doppelklick aus.
  • Speichern Sie das neue Formular unter dem Namen tblBesprechungen.
  • öffnen Sie das Formular in der Entwurfsansicht und blenden Sie die Bildlaufleisten aus (Eigenschaft Bildlaufleisten).
  • Geben Sie dem Formular die Beschriftung Besprechungen.
  • Vergrößern Sie den Detailbereich sowohl in der Höhe als auch in der Breite.
  • Löschen Sie das Feld BesprechungID zusammen mit dem zugeordneten Bezeichnungsfeld und ordnen Sie die beiden verbleibenden Felder gemäß Bild 10 an.
  • Weisen Sie den Titelfeld eine größere Schriftart zu und formatieren Sie den Hintergrund gelb (Eigenschaften Schriftgrad und Hintergrundfarbe)
  • Weisen Sie dem Eingabefeld für das Datum das Format Datum, lang zu. (
  • 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:

  • Aktivieren Sie im Datenbankfenster die Tabelle tblTeilnehmer.
  • Wählen Sie den Befehl Formular des Menüs Einfügen aus.
  • Wählen Sie den Eintrag AutoFormular: Datenblatt mit einem Doppelklick aus.
  • Speichern Sie das neue Formular unter dem Namen frmBesprechungen_Besprechungsteilnehmer und öffnen Sie das Formular in der Entwurfsansicht.
  • Löschen Sie das Feld BesprechungsteilnehmerID mitsamt dem zugeordneten Bezeichnungsfeld sowie das Feld BesprechungID mit Bezeichnungsfeld.
  • Wandeln Sie beide verbleibenden Textfelder in Kombinationsfelder um. Verwenden Sie dazu den Befehl ändern zu des Kontextmenüs.
  • Entfernen Sie die Buchstaben ID aus den Bezeichnungsfeldern.
  • Tragen Sie als Datensatzherkunft des Kombinationsfeldes MitarbeiterID die SQL-Anweisung aus Quellcode 1 ein. Diese Anweisung fragt alle Mitarbeiter aus der Mitarbeitertabelle, sortiert nach dem Namen, ab.
  • Setzen Sie die Spaltenanzahl auf 2, die Spaltenbreiten auf 10cm;0cm und die Gebundene Spalte auf 2.
  • Verfahren Sie auf die gleiche Weise mit dem Feld BesprechungsteilnehmerfunktionID. Verwenden Sie hier jedoch die SQL-Anweisung aus Quellcode 2, die eine sortierte Liste aller Funktionen zurückgibt. (
  • 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:

  • Aktivieren Sie das Kombinationsfeld MitarbeiterID.
  • öffnen Sie das Eigenschaftsfenster und klicken Sie auf die Assistenten-Schaltfläche der Eigenschaft Bei Nicht in Liste.
  • Klicken Sie doppelt auf Code-Generator.
  • Ergänzen Sie die Prozedur wie in Quellcode 3.
  • 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

    Schreibe einen Kommentar