Hallo,
Also in dem Kombifeld soll nur der Status zur Auswahl stehen,
dieser hat eine eigene Tabelle (tbl_Katalog_Status). Der
Kurztitel kommt aus der Tabelle Dokumentation.
Wie das? Ist das ein Kurztitel für den Status? Dann gehört der
in tblStatus. Was alles soll im Listenfeld des KOMBIs stehen?
Bei mir sieht das jetzt so aus:
Sub cmbStatussuche_Afterupdate()
Me!lstListenfeld.RowSource = „select * from“ tbl_Dokumentation
where StatusID=’ & Me!cmbStatussuche order by
tbl_Katalog_Status.StatusID
End Sub
Nein, eher so, und ohne Kenntnis der Tabellenbeziehungen:
Me!lstListenfeld.RowSource = „select * from tbl_Dokumentation
where StatusID=“ & Me!cmbStatussuche & " order by StatusID"
Ich erkläre jetzt mal kurz den Aufbau meiner DB, vielleicht
hilft das etwas beim verstehen:
Ich habe eine Tabelle Dokumentation, in dieser gibt es:
- ein Zahlenfeld FehlerNR
- das Kombifeld Status, dessen Daten aus der Tabelle
Katalog_Status kommen
Wirf dieses Nachschlagefeld aus der Tabelle heraus und benenne das (Zahl-)Feld in „Dok_StatusID“ um.
- ein Textfeld Kurztitel
- ein Datumsfeld
- das Kombifeld Erfasser (Daten aus tbl_erfasser)
Auch dieses Nachschlagefeld herauswerfen! (und entspr. umbenennen, z. B.: „Dok_ErfasserID“
- ein Memofeld Beschreibung
In der Tabelle Status gibt es:
- Autowert StatusID
- Textfeld Status (offen; in Bearbeitung; erledigt)
- JA/NEINfeld Aktiv
Dazu habe ich mir ein Formular gebastelt, das alle Felder aus
tbl_Dokumentation enthält.
Nun habe ich ein Listenfeld( zeigt mir FehlerNr, Kurztitel und
Status an), in dem ich einen Datensatz auswählen kann, so dass
mir dir Daten dazu im Formular angezeigt werden.
Dazu möchte ich noch die Möglichkeit, mir über ein
Dropdown-Menü, nur Datensätze mit bestimmtem Status anzeigen
zu lassen, zB „offen“.
WO anzeigen lassen? Im Listenfeld?
Wie vorher gesagt, etwa so zur Anzeige für das Listenfeld:
cmbStatussuche:
Datensatzherkunft: Select StatusID, Textfeld, Aktiv from Status order by Status
Spaltenanzahl: 3
Spaltenbreiten: 0cm;3cm;1cm
Sub cmbStatussuche_Aftrerupdate()
Me!lstListenfeld.RowSource = „select FehlerNr, Kurztitel, Status from tbl_Dokumentation inner Join Status on Status.StatusID = tbl_Dokumentation.Dok_Status where StatusID=“ & Me!cmbStatussuche & " order by FehlerNr"
End Sub
und zur Anzeige des im Listenfeld („lstListenfeld“) ausgewählten Datensatzes:
Sub lstListenfeld_Click()
Me.Recordsource =" select * from tbl_Dokumentation where FehlerNr = " & Me!lstListenfeld.Column(0)
End Sub
Gruß
Franz, DF6GL