collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 69
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 1

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14035
  • stats Beiträge insgesamt: 67214
  • stats Themen insgesamt: 9065
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Zuordnungstabelle nochmal  (Gelesen 788 mal)

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Zuordnungstabelle nochmal
« am: Mai 24, 2018, 23:52:57 »
Hallo @all,

ich bin wieder durcheinander gekommen. Daher nochmal so eine Frage:

Ich habe
* eine tblProbanden mit Probanden und [IDP] und [Rueckmeldung]
* eine tblRueckmeldungen mit [IDR] [Rueckmeldungen]

Ich möchte jetzt im (Einzel)Formular bei jedem dem Probanden ein kleines Endlosformular haben, in das n Rueckmeldungen eingetragen werden können, je nach dem wie viele es werden.

Muss man dazu jetzt eine dritte Tabelle anlegen, tblZRueckmedlungen, die [IDP] und [IDR] als Fremdschlüssel enthalten?

Carl
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Re: Zuordnungstabelle nochmal
« Antwort #1 am: Mai 25, 2018, 00:18:37 »
Hallo,
wenn es standardisierte Rückmeldungen sind ( was ich auf Grund der Tabelle annehme) ist diese 3. Tabelle zur Herstellung einer n:m Beziehung erforderlich.
Wie sonst soll es auch gehen, wenn es zu einem Probanden mehrere (n) Rückmeldungen geben kann ?
Da es in einer Datenbank keine mehrfachen Einträge in einem Feld geben darf ist diese 3. Tabelle auch zwingend erforderlich.

Der Proband wird dann im Hafo (das Einzelformular) angezeigt und die Rückmeldungen im Endlosformular als verknüpftes (über IDR und IDR_F) Ufo.
Auswahl der zutreffenden Rückmeldung per Kombifeld.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #2 am: Mai 25, 2018, 08:34:22 »
Danke für die Antwort. Die Rückmeldung soll ein Textfeld mit 255 Zeichen werden.

Also in der Zuordnungstabelle die Schlüssel beider Tabellen als Fremdschlüssel? Wie kriege ich im Beziehungsfenster den Beziehungstyp geändert? Es gibt nur eine Schaltfläche für den Verknüpfungstyp und wenn ich da eine der drei Optionen auswähle, ändert am Beziehungstyp nicht. Er steht jetzt auf 1:n, siehe Anhang.

und wieso bekomme ich das ausgefüllte Beziehungsfenster nur, wenn ich auf den mittleren Strick klicke? Wenn ich auf die kleine 1 oder das Unendlich-Zeichen klicke erscheinen neue unausgefüllte Fenster.

Carl
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Re: Zuordnungstabelle nochmal
« Antwort #3 am: Mai 25, 2018, 09:34:29 »
Hallo,
Die Rückmeldung soll ein Textfeld mit 255 Zeichen werden.das ist doch dann aber Freitext und keine standardisierten Texte (wie ich angenommen habe und auch geschrieben habe). Dann ist die Zuordnungstabelle natürlich überflüssig. Eine n:m Beziehung macht nur Sinn, wenn feste Rückmeldungen vorliegen die mit einem Kombi gewählt werden können. Was ja hier nicht der Fall ist.

Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #4 am: Juni 02, 2018, 15:19:35 »
Es soll aber zu jedem Probanden n solche Rückmeldungsfenster geben.

Diese Zuordnungstabelle finde ich besonders schwer einzurichten.

Kannst Du bitte sagen, weshalb ich das ausgefüllte Beziehungsfenster nur angezeigt bekomme, wenn ich auf den mittleren Strich klicke? Wenn ich auf die kleine 1 oder das Unendlich-Zeichen klicke erscheinen neue unausgefüllte Fenster.

Carl
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Re: Zuordnungstabelle nochmal
« Antwort #5 am: Juni 02, 2018, 17:19:46 »
Hallo,
Zitat
Es soll aber zu jedem Probanden n solche Rückmeldungsfenster geben.
Keine n Fenster, sondern n Datensätze. Du brauchst keine n:m Zuordungstabelle. Das ist keine n:m Beziehung, sondern eine ganz normale 1:n Beziehung.
1=Probanten
n=viele Rückmeldungen
Darstellung eventuell in einem Endlosformular als Unterformular.

Zitat
Wenn ich auf die kleine 1 oder das Unendlich-Zeichen klicke erscheinen neue unausgefüllte Fenster.
Damit könntest Du neue Beziehungen anlegen. Das ist normales Verhalten. Mit Klick auf den Strich werden angelegte Beziehungen bearbeitet bzw. geändert.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #6 am: Juni 02, 2018, 18:17:22 »
Ach so, alles klar. Ja, verstehe.

Danke Carl
 

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #7 am: Juni 02, 2018, 21:14:58 »
Ich habe das von der Durchführung her noch nicht verstanden.

tblProbanden mit dem Feld ProbandenRueckmeldungen
tblRueckmeldungen mit [IDR] und Textfeld [Rueckmeldungen]

Wie kann ich jetzt machen, dass in [ProbandenRueckmeldungen] das Feld der Tabelle Rueckmeldungen erscheint? Also als Endlosfeld, wie oben gesagt, für ein Endlosformular.

Ich habs von der Durchführung her noch nicht geschnallt.

Carl
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Re: Zuordnungstabelle nochmal
« Antwort #8 am: Juni 03, 2018, 00:33:04 »
Hallo,
nein, so nicht, aber so:
tblProbanden mit den Daten des Probanten und dem Primärschlüssel (IDP)
tblRueckmeldungen mit [IDR], dem Fremdschlüsselfeld (IDP_F) und Textfeld [Rueckmeldungen]
Beziehung von IDP (1) zu IDP_F (n).

Das ist die einfachste aller Beziehungen. Ich kann nicht ganz nachvollziehen, wo Du da Probleme hast.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #9 am: Juni 03, 2018, 13:02:17 »
Danke. Weil ich damit auf Kriegsfuß stehe, mir fällt das logische Denken schwer.

Ich habe jetzt ne Abfrage mit

[tblProbanden].[IDP]
[tblRueckmeldungen].[IDR], [tblRueckmeldungen].[IDP_F] und [tblRueckmeldungen].[Rueckmeldungen]

Diese Abfrage habe ich einem Formular unterlegt.

das über das HF aufgerufen wird mit dem Button:

Private Sub btnRueckmeldung1oeffnen_Click()
DoCmd.OpenForm "frmRueckmeldungen1", , , "IDP_F=" & [ID]
End Sub

Wenn ich in dem sich öffnenden Formular in dem Textfeld was eintrage kommt die Fehlermeldung:

Kann in der Tabelle tblprobanden keinen Datensatz mit passenden Schlüsselfeldern  IDP_F finden.

Kann das mit dem von mir verwendeten Code für DoCmd.OpenForm zusammen liegen?

Carl

PS: Oder soll man das über die Abfrage so einrichten, dass immer automatisch die mit dem passenden Fremdschlüssel aufgerufen werden?
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Re: Zuordnungstabelle nochmal
« Antwort #10 am: Juni 03, 2018, 13:33:02 »
Hallo,
vergiss mal die Abfragen, Du brauchst hier erst mal keine Abfrage.
Das Hafo wird an die Tabelle "Probanten" gebunden und das Ufo an die Tabelle mit den Rückmeldungen. Hafo und Ufowerden über die Schlüsselfelder verknüpft.
Im Ufo kannst Du dann zu jedem Probanten beliegig viele Rückmeldungen erfassen, VBA Code braucht es da nicht, keinen Buchstaben. Da muss man auch nichts filtern.

Zeige mal ein Bild des Beziehungsfensters mit diesen beiden Tabellen.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #11 am: Juni 03, 2018, 20:49:01 »
Ach, okay. Ja, verstehe. Habs hin bekommen, es funktioniert. Vielen Dank.

Es gibt nur noch das Problem mit dem öffnen des HF. Ich öffne das HF derzeit mit einem Klick auf ein Textfeld:
=OpenPopUpfrmRueckmeldungen([Screen].[ActiveControl])

Im Modul steht:

Public Function OpenPopUpfrmRueckmeldungen(ctl As Control)
        DoCmd.OpenForm "frmRueckmeldungen", , , "ID=" & ctl.Parent.ID, , acDialog, ctl.Value
End Function

Jetzt habe ich die ganze Zeit schon versucht, die selbe Funktion einem Button unterzulegen, aber Access bringt dann immer ne Fehlermeldung und meckert dann immer die Zeile im Modul an.

Wenn ich weiterhin das Textfeld verwende (in dem der Name des Probanden steht), funktioniert es, dass das HF geöffnet wird und auch die Openargs richtig angezeigt werden. Aber ich möchte einen Button. Woran liegt das, dass er die selbe Funktion mit dem button nicht macht? Ist das vielleicht, weil er mit "ctl.Parent.ID" die Eltern-Idee eines Feldes sucht und Button keine Felder sind?

Carl
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1294
Re: Zuordnungstabelle nochmal
« Antwort #12 am: Juni 03, 2018, 21:00:04 »
Ein Knopf hat keine Value-Eigenschaft.
Grüße von der (⌒▽⌒)
 
Folgende Mitglieder bedankten sich: Carl

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #13 am: Juni 03, 2018, 22:03:48 »
ah, danke

Wenn ich value entferne, funktioniert das Anzeigen der Openargs nur beim ersten Öffnen. Gleich beim zweiten Öffnen werden sie nicht mehr angezeigt.

Der Wert der Openargs soll aus dem Feld WOName entnommen werden.

Carl
« Letzte Änderung: Juni 03, 2018, 22:26:52 von Carl »
 

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 376
Re: Zuordnungstabelle nochmal
« Antwort #14 am: Juni 04, 2018, 09:43:32 »
Nochmal die Frage für openform,

ich möchte mit dem Modul das HF mit einer Schaltfläche öffnen, die natürlich keinen Wert hat.

'DoCmd.OpenForm "frmRueckmeldungen", , , "ID=" & ctl.Parent.ID, , acDialog, ctl.Value
DoCmd.OpenForm "frmRueckmeldungen", , , "ID=" & ctl.Parent.ID, , acDialog, WOName

Der Ausdruck "ctl.Value" soll nun durch einen Ausdruck ersetzt werden, der anweist, den Wert in die openargs zurück zu geben, der im Feld [WOName] steht. Ich habe schon mindestens zwei Dutzend Kombinationen durch, finde aber den richtigen Ausdruck nicht.

Wie kann man das anweisen?

Carl