Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: gopper0815 am Januar 26, 2011, 10:39:06

Titel: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Januar 26, 2011, 10:39:06
Hallo,

ich komm einfach bei meiner Problemstellung nicht weiter.

Ich habe in meiner Datenbank u.a. drei Tabellen: Mitglied, Funktion und Mit_funk, die als Zwischentabelle der beiden erstgenannten dient, da diese ja in einer M:N Beziehung stehen. In der Mitgliedtabelle stehen die normale Daten zur Person, in der Tabelle Funktion nur ein Feld mit der Funktionsbezeichnung. In der Tabelle Mit_funk ist nur die Fremdschlüssel der beiden anderen Tabellen.

Nun möchte ich ein Formular, welches mir in einer Liste die Mitglieder anzeigt, rechts daneben die Details in Feldern zum bearbeiten und darunter die jeweiligen Funktionen des Mitglieds zum anhaken oder abwählen.

Die Anzeige der Person in Liste und Detail ist kein Problem, aber wie verbinde ich jetzt die Funktion über die Zwischentabelle, zumal in der Zwischentabelle ja nur die Schlüssel stehen und ich im Formular aber die Bezeichnung haben möchte.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Januar 26, 2011, 11:18:17
Hallo,
Zitatrechts daneben die Details in Feldern zum bearbeiten und darunter die jeweiligen Funktionen des Mitglieds zum anhaken oder abwählen.
Das geht nicht, mit Häkchenfeldern, die Funktionen werden mit Kombifeldern ausgewählt. Jede Funktion gibt einen Datensatz.
In der Zwischentabelle sind auch noch Datumsfelder erforderlich für Von und Bis.
Die Funktionen werden in einem Unterformular angezeigt in dem auch das oben erwähnte Kombi ist. In die Abfrage für dieses Ufo nimmt man auch die Tabelle mit den Funktionsbezeichnungen mit auf, dann hat man auch den Klartext der Funktion. Es lässt sich auch über die Spalten des Kombis regeln. Die Spaltenbreiten lassen sich so einstellen, dass man im Kombi die Funktion sieht, aber die ID gespeichert wird.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Januar 26, 2011, 11:30:57
Ist das Datum so zwingend erforderlich? Ich benötige die Zeitangaben, von wann bis wann die Funktion ausgeübt wurde nicht.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Januar 26, 2011, 11:40:16
Hallo,
ZitatIst das Datum so zwingend erforderlich?
Nein, zwingend nicht. Aber nach meiner Ansicht sinnvoll.
Oder willst Du nicht wissen, wer mal wann und wie lnge Schriftführer war?
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Januar 26, 2011, 11:52:35
Sorry, ich kapier das nicht.
ZitatDie Funktionen werden in einem Unterformular angezeigt
Meinst du damit die Funktionbezeichnungen?
ZitatEs lässt sich auch über die Spalten des Kombis regeln. Die Spaltenbreiten lassen sich so einstellen, dass man im Kombi die Funktion sieht, aber die ID gespeichert wird.
Wie meinst du das?

Ich hab im Moment echt ein Brett vor dem Kopf.

Was das Datum betrifft. Das ist in diesem Fall wirklich ohne Bedeutung.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Januar 26, 2011, 11:55:22
Hallo,
OK, Du hast in 10 Minuten ein kleines Beispiel.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Januar 26, 2011, 12:14:07
Hallo,
anbei das versprochene Beispiel.


[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Januar 26, 2011, 12:21:34
Vielen Dank, jetzt werde ich mir das Beispiel mal genau anschauen. Dann werd ich es ja hoffentlich hinkriegen.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 07:37:36
Hallo nochmal,
ich hab jetzt das Beispiel durchgeackert und das Prinzip soweit verstandne, aber ich kann es einfach nicht reproduzieren. Wenn ich das Unterforumlar auf die Zwischentabelle bezug nehmen lasse, zeigt er mir immer in Spalten und Feldern die Fremdid-Nummern an. Wenn ich dann ein Kombinationsfeld einbaue steht am oberen Rand des Unterforumlars "Funktion". Da kann man dann draufklicken und Filtereinstellungen vornehmen usw, alles was ich nicht will. Ich könnt mir die Haare raufen, das komplette Wochendende über versuch ich nun das Beispiel in meiner DB umzusetzten. Da versteht man das Prinzip und dann scheitert es bei mir an der Bedingung von Access.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Februar 01, 2011, 07:44:22
Hallo,
Zitatund dann scheitert es bei mir an der Bedingung von Access.
Ich glaube nicht, dass es an Access liegt. ;D

Da hilft wohl nur Deine DB. Lade die bitte mal hier hoch.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 07:57:11
Sorry, war ein Schreibfehler ;)

ich meinte natürlich dass es an der Bedienung von Access meinerseits liegt.

hier im Anhang die DB mit den Tabellen. Die eingetragenen Testdaten sind rein fiktiv und haben keinerlei Bezug auf die Realität.

Im konkreten Fall geht es darum, den Hudeführern aus der tblHundeführer eine oder mehrere Funktionen zuzuweisen.

[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Februar 01, 2011, 08:42:56
Hallo,
konvertiere die DB nach Access2003, denn die neuen Versionen sind noch nicht so verbreitet.
Und beschreibe bitte mal was Du mit welchem Formular versucht hast.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: DF6GL am Februar 01, 2011, 08:47:23
Hallo,

und wo sind nun Deine Formualre???


Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 08:52:24
So,

ich habe die DB konvertiert und in dieser Version ist ein Versuch eines Formulares.

Das Formular soll folgendes machen. Es soll oben den Hundeführer auflisten unten soll in einer Liste/Kombifeld(wie ist egal) angezeigt werden, welche funktionen er innehat. Es ist wichtig, das die Felder "von" und "bis" sowie "Bemerkungen" nicht mit beachtet werden. Die sind nur für evtl später relevatn. Weiterhin sollen die FUnktionen dazu bzw. entfernt werden können. Also dem Hundeführer sollen weitere Funktionen hinzugefügt oder entfernt werden. ABer wenn ich es versuche, dann kommen bloss die ID-Nummern (wie in meiner DB zu sehen).

[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: DF6GL am Februar 01, 2011, 09:39:55
Hallo,

anbei...



[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 09:46:09
Ja, aber da kann ich jetzt keine Änderungen vornehmen.

In der angehängten Version hab ich das Formular soweit glaub ich funktionsfähig, jedoch steht jetzt im Unterformular im Formularkopf dieses Kombifeld "Kombination", welches man durch klick öffnen kann. Das möchte ich aber nicht. Das verschwindet auch nicht, wenn ich die Navigationsbeschriftung und Systemmenüfeld ausschalte.

[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: DF6GL am Februar 01, 2011, 09:59:30
Dann halt so:



[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 10:08:52
Hallo,

ja so hab ich mir das vorgestellt. Aber nun stellt sich halt das Problem, dass ich das nicht reproduzieren kann. Wenn ich mir meinen Versuch anschaue (mein letzter Dateianhang) dann sehe ich keinen Unterschied in den Formularbeziehungen bzw. Datensatzherkunft usw. und doch sieht es nicht so aus wie bei dir. Das ist das eigentliche Problem, dass ich nicht weiss wie du dieses erstellt hat.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Februar 01, 2011, 10:11:07
Hallo,
nachdem ich es nun mal fertig habe, auch meine Version.

Anmerkungen:
Du hast wesentliche Teilke meines Beispiels nicht verstanden und somit nicht umgesetzt:
- Hafo und Ufo müssen in den Dateneigenschaften über die Schlüsselfelder verknüpft sein.
- Die Auswahl der Funktion erfolgt über ein Kombi, Die Spaltenbreiten steuern was sichtbar ist.

ZitatAlso dem Hundeführer sollen weitere Funktionen hinzugefügt oder entfernt werden.
Hinzugefügt ja, es werden aber keine gelöscht. Du willst ja über die Datumsfelder speichern wer wann was war, daher darfst Du nicht löschen. Die aktuellen Funktionen erkennt man an einem leeren Bis Datumsfeld.

[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 10:19:37
Erstellst du Haupt- und Unterformular mit dem Assistenten in einem Aufwasch oder getrennt?
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Februar 01, 2011, 10:29:02
Hallo,
ich erstelle das Hafo zu Fuß und das Ufo mit dem Assi.
Wenn Beziehungen angelegt sind, werden dann die Verknüpfungsfelder automatisch gefüllt.

Das Ufo muss nach dem Erstellen mit dem Assi zu Fuß auf die gewünschten Eigenschaften nachgebessert werden.

PS:
Wenn mehrere Leute antworten, empfiehlt es sich den, der gemeint ist gezielt anzusprechen.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 10:55:38
Ok, ich denke jetzt hab ich es. Also ich habe ein Formular erstellt aus der Tabelle Hundeführer. Gleichzeitig hab ich aus der Tabelle "dhf-funk" die funkid,dhf_id_f und funk_id_f ausgewählt. Im darauf erstellten Formular sind dann im Unterformular die funk_id und Fremd_ids als Zahlenwerte zu sehen. In den Dateneigenschaften setzt ich diese jetzt auf nicht sichtbar und baue dort stattdessen ein Kombifeld ein, welches seine Werte aus der Tabelle Funktionen liest und in das Feld funk_id_f der Tabelle dhf-funk schreibt. Ich habe das Resultat  im Anhang hochgeladen.

Mir geht es jetzt darum, ob die vorgehensweise so stimmt, damit ich weiß ob ichs jetzt endlich kapiert habe.

[Anhang gelöscht durch Administrator]
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: MzKlMu am Februar 01, 2011, 11:05:33
Hallo,
ja, so sollte das passen.
Die unsichtbar gemachten Felder (alle 3) sind im Formular (aber nur im Formular) überflüssig. Die kannst Du ersatzlos auf dem Formular löschen.
Titel: Re: Formular mit einer Zwischentabelle
Beitrag von: gopper0815 am Februar 01, 2011, 11:07:08
Ok, mann, das war ne schwere Geburt. Danke an alle für die Hilfe und Geduld. Ich denke damit kann ich jetzt weiterarbeiten.