Access - Auswahlproblem

hallo zusammen

ich hab eine db mit 3 tabellen:

Tabelle 1: Die Lieferanten
Tabelle 2: Die Lieferscheine (= Verbindung zwischen Lieferant und Produkten)
Tabelle 3: Die Produkte

ich habe in access die beziehungen 1:n eingestellt. und wenn man jetzt die tabelle „Lieferanten“ öffnet, erscheint links jedes datensatzes ein PLUS-zeichen. dieses hat folgende effekte:

Klick auf ein PLUS-Zeichen in der Tabelle „Lieferanten“:
es öffnet sich eine neue tabelle, in der alle lieferscheine angezeigt werden, welche dem ausgewählten lieferanten zugeordnet sind. links von jedem lieferschein hat es ein weiteres PLUS-zeichen.

Klick auf ein PLUS-Zeichen in der Tabelle „Lieferscheine“:
es öffnet sich eine weitere tabelle, in der die produkte aufgelistet werden, welche alle gemäss dem ausgewählten lieferschein geliefert wurden.

die spezialität ist nun, dass die tabellen „Lieferanten“ und „Produkte“ je ein attribut namens „IP“ haben. dieses feld wird mit einem häkchen gesetzt oder eben nicht-gesetzt.

nun die frage:

die zu liefernden produkte werden in der lieferschein-tabelle erfasst. es hat dort ein auswahlfeld (dropdown). wie kann ich erreichen, dass dort nur die IP-produkte auswählbar sind, wenn es sich um einen IP-lieferanten handelt? bzw. umgekehrt, dass nur die Nicht-IP-produkte auswählbar sind, wenn es sich um einen Nicht-IP-lieferanten handelt?

ich hab schon viel rumgepröbelt, aber komm nicht drauf

wäre genial, wenn mir jemand helfen könnte!

viele grüsse
janosh

Hi janosh,

hinter dem + steckt keinerlei Auswahllogik, sondern der direkte Zugriff zu den Tabellen. Hier werden die Produkte angezeigt, die dem Lieferanten zugeordnet sind. Wenn eingeschränkt werden soll, dann müssen Suchargumente mitgegeben werden, das geht aber erst bei Abfragen.

Beim Dropdown-Feld im Lieferschein kannst Du als Datenquelle eine Abfrage hinterlegen, die zum Lieferanten die passenden Produkte auswählt.

Gruß Ralf

Beim Dropdown-Feld im Lieferschein kannst Du als Datenquelle
eine Abfrage hinterlegen, die zum Lieferanten die passenden
Produkte auswählt.

vielen dank für die antwort! ich hab im feld „Produkte_ID“ der Tabelle „Lieferscheine“ folgende Datensatzherkunft:
SELECT Produkte.ID, Produkte.ProduktCode FROM Produkte;

logischerweise werden nun ALLE produkte zur auswahl angezeigt. was muss ich denn hier nun ändern, damit nur die IP-produkte angezeigt werden, wenn es sich um einen IP-Lieferanten handelt bzw. umgekehrt?

liebe grüsse
janosh

Hi janosh,

was muss ich denn hier nun ändern, damit nur die IP-produkte angezeigt werden,
wenn es sich um einen IP-Lieferanten handelt bzw. umgekehrt?

das ist der Punkt, wo mich ACCESS immer wieder ins Schleudern bringt. Der Select muss eine Klausel ergänzt werden, die Produkt und Lieferant über das Feld IP verbindet, also eigentlich ganz einfach:

where produkt.ip in
select = Lieferant.ip from Lieferant
where Lieferant.Lieferant = FormularXXX.lieferant

An diesem Bezug auf das Formular scheitere ich, weil ich die Syntax nicht beherrsche. Vielleicht guckt noch einer rein, der das besser kann…

Gruß Ralf

danke, ralf.

ja, dann hoff ich mal, dass noch ein syntaxgewandter mensch hier vorbeischaut :smile:

hallo Pumix,

das Problem kann so nicht gelöst werden. Du arbeitest direkt mit den Tabellen, deshalb ist auch das + sichtbar. Das zeigt nur die Beziehung zur anderen Tabelle an und ist kein weiteres Auswahlkriterium.
Was du sehen möchtest sind ja gefiltere Daten.
Also, Formular basteln , abfrage basteln und Ergebniss anzeigen.
Gruß Hans