Supportnet / Forum / Datenbanken
RecordSource des Unterformulars
Frage
Hallo.
In einer Datenbank kann ich einer Firma unendlich viele Ansprechpartner zuordnen. 1:n Beziehung.
Das Firmenhauptformular enthält ein Unterformular, das die jeweiligen Ansprechpartner der Firma anzeigt.
Über ein anderes Formular enthält eine Unterformular als Liste (frmAP_l_UF) und zeigt mir via Button den Inhalt des Firmenhauptformulars an.
Wenn sie dieses Formular öffnet für es folgenden Code aus.
[code] Private Sub optSortierung_afterUpdate()
Dim sql As String
sql = Forms!frm_Kundendatenblatt..RecordSource
Me!frmAP_L_UF.Form.RecordSource = sql
End Sub[/code]
der Recordsource des Firmenhauptformulars wird erfasst und an das Listenformular übergeben und der Inhalt angezeigt. So weit so gut.
Ich möchte nun aber nicht alle Firmen in dem ListenFormular angezeigt bekommen, sondern nur die Ansprechpartner der jeweiligen Firma.
Ich habe aber keine Ahnung wie ich den RecordSource eines Unterformulars erfasse.
[code] sql = Forms!frm_Kundendatenblatt..RecordSource[/code]
Das Formular frm_Kundendatenblatt enthölt das Unterformular frm_AP dessen recordset ich erfassen möchte.
Hat da jemand eine Idee?
Viele Grüße,
Driagthon.
Antwort 1 von firefox
So ganz weiß ich nicht was du möchstest....
Also Form 1:
Firmen - UF = Ansprechpartner
Form 2:
Irgendwas (?) - UF = Ansprechpartner
Zu diesen AP aus Form2 kannst du die Firmendaten ansehen.. erhälst aber in der List alle, richtig?
Das Problem dürfte hier sein, das die RecordSource eines Fomulars immer auf eine gesamten Tabelle / Abfrage besteht. Die einzelne Datenauswahl geschieht jedoch nur auf dem Form und ändert nichts an der RecordSource.
In deinem Fall müsstest du den String der Recordsource noch um eine Where Bedingung erweitern.
In etwa
sql = Forms!frm_Kundendatenblatt..RecordSource & " WHERE ID_Feld=" & me.deinIdfeld
Also Form 1:
Firmen - UF = Ansprechpartner
Form 2:
Irgendwas (?) - UF = Ansprechpartner
Zu diesen AP aus Form2 kannst du die Firmendaten ansehen.. erhälst aber in der List alle, richtig?
Das Problem dürfte hier sein, das die RecordSource eines Fomulars immer auf eine gesamten Tabelle / Abfrage besteht. Die einzelne Datenauswahl geschieht jedoch nur auf dem Form und ändert nichts an der RecordSource.
In deinem Fall müsstest du den String der Recordsource noch um eine Where Bedingung erweitern.
In etwa
sql = Forms!frm_Kundendatenblatt..RecordSource & " WHERE ID_Feld=" & me.deinIdfeld