15.1.  Dateneingabe über Formulare in N:M Beziehungen

Die Eingabe über Formulare in N:M Beziehungen sind weniger einfach zu erstellen als in 1:N Beziehungen.

Dazu darf man als Unterformular nicht einfach eine andere Tabelle einfügen, sondern eine Abfrage aus Verbindungstabelle (bei uns Auf-Litho) und 'Unter'tabelle (bei uns TabLitho).

Erstellen der Abfrage: Neue Abfrage in Entwurfsansicht (d.h., nicht den Assistenten verwenden). Die Tabellen Auf-Litho und TabLitho in das obere Abfragefenster einfügen.

Aus Auf-Litho benötigen wir: Aufschluss und Litho

Aus TabLitho: Gestein und Alter.

Wir speichern die Abfrage unter QuelleUFmLitho (weil dieses Abfrage die Quelle für unser Unterformular darstellen wird.

 

Erstellen des Formulars:

Formular - Neu - Formular-Assistent.

  -  Aus TabAufschluss wählen wir alle Felder

  -  Aus QuelleUFmLitho wählen wir ebenfalls alle, ausgenommen Aufschluss

Für das Hauptformular nehmen wir TabAufschluss. Layout: Tabellarisch.

Namen: FmAufschluss für das Hauptformular und UFmLitho für das Unterformular

 

Formatieren der Formulare

Wie schon vorher, haben wir jetzt zwei Formulare.

Wir öffnen UFmLitho separat und passen das Layout an. Nach dem Schließen des Formulars formatieren wir FmAufschluss.

In UFmLitho verändern wir jetzt Litho in Kombinationsfeld (rechte Maustaste - Ändern - Kombinationsfeld.

Dann nocheinmal mit rechter Maustaste - Eingenschaften - Daten - Datenherkunft - TabLitho auswählen.

Jetzt kann ich zu jedem Aufschluss die vorhandenen Einheiten zuweisen.

Im Gegensatz zum 1:N Formular kann ich aber keine neuen Daten in das Unterformular eingeben.

 

Eingabe neuer lithostratigraphischer Einheiten.

Dafür erstelle ich ein Makro zum Öffnen von TabLitho. Dann erstelle ich im Formular eine Befehlsschaltfläche, die dieses Makro ausführt.

Wenn ich hier in dieser Tabelle eine neue Einheit eingebe, sehe ich sie aber noch nicht im Formular! Dazu muss ich eine Befehlsschaltfläche mit dem Befehl Formulardaten aktualisieren einfügen.