2016-12-23 1 views
0

Ich habe ein Formular mit Kunden. Jetzt möchte ich auch alle Orders anzeigen, die der gerade geöffnete Kunde gemacht hat. Der Auftrag Tabelle hat einen Fremdschlüssel zu Kunde.MS Access Form: Wie alle Datensätze angezeigt werden, die auf aktuellen Datensatz verweisen

Ich habe versucht, eine List-Box mit Multi Select auf Simple, aber irgendwie zeigt es mir alle Bestellungen, anstatt nur die des aktuellen Kunden.

Weitere Details: Mein Listenfeld hat

Control Source: ID 
Row Source: SELECT customer.id, order.info FROM customer 
      INNER JOIN order ON customer.ID = order.customer_id 

Wenn ich den Multi Select auf None es immer ist den ersten Auftrag, den die aktuellen Kunden paßt, aber nicht alle passenden Aufträge.

Kann mir jemand in die richtige Richtung zeigen? Danke.

P.S. Ich möchte nicht unbedingt, dass die Liste für die Erstellung eines neuen Kunden funktionsfähig ist. Wenn es auch funktionieren würde, dann ist das ein Bonus.

Antwort

1

dem Formular Customers-Tabelle gebunden ist Angenommen, dann müssen Sie Code des Formulars Aktuelle Ereignis hinzuzufügen:

lstOrders.RowSource = "SELECT id, info FROM order WHERE customer_id = " & Me.id 
lstOrders.Requery 

Das Listenfeld (genannt lstOrders) seine Spalte auf 2 gesetzt zählen, wenn Sie sollten Wenn die Spalte order.id nicht angezeigt werden soll, setzen Sie die Eigenschaft "Spaltenbreiten" auf 0 (dadurch wird die Breite der ersten Spalte auf 0 gesetzt und die zweite Spalte, order.info, füllt die verbleibende Breite der Liste). Setzen Sie die "Bound column" auf 1 - dies bedeutet, dass der "Wert" der Listbox die order.id

ist
Verwandte Themen