Frage

Ich habe eine Access 2007-Formular erstellt, das zeigt zum Beispiel Produkte aus einer Product-Tabelle. Eines der Felder in der Product-Tabelle ist ein CategoryID, die zur dieser Produkt Hauptkategorie entspricht.

In der Form, muss der CategoryID als Kombinationsfeld dargestellt werden, die zu der Kategorie Tabelle gebunden ist. Die Idee hier ist ziemlich einfach:. Eine neue Kategorie der Auswahl sollte die CategoryID in der Product-Tabelle aktualisieren

Das Problem in Ich bin mit, dass eine neue Kategorie der Auswahl aktualisiert die Kategorie der Kategorie Tabelle anstatt die CategoryID in der Product-Tabelle zu aktualisieren. Der Grund dafür ist, dass es scheint, dass das Kombinationsfeld nur für die Kategorie der Kategorie Tabelle gebunden werden muß.

Was passiert, ist, wenn das aktuelle Produkt eine CategoryID von 12 hat, die die Kategorie „Stühle“ in der Kategorie Tabelle wird dann einen neuen Wert auszuwählen, sagt sie, „Tables“ (CategoryID 13) in dem Kombinationsfeld aktualisiert die CategoryID von 12 mit dem neuen Kategorienamen „Tables“ anstelle die Produkttabelle CategoryID bis 13 zu aktualisieren.

Wie kann ich die Kategorie-Tabelle in eine combox Box binden, so dass die Datatextfield (die ich in Access existierte möchten) ist die Kategorie und die Datavaluefield ist die CategoryID und nur die CategoryID des Produkts aktualisiert werden, wenn das ausgewählte Kombinationsfeld Artikel geändert wird?

Edit: Sehen Sie die akzeptierte Antwort unten. Ich muß auch die Spaltenanzahl auf 2 ändern und alles begann perfekt zu arbeiten.

War es hilfreich?

Lösung

Sie müssen beiden Werte in der Abfrage für das Kombinationsfeld verwenden.
z.B. SELECT CategoryId, Kategorie VON CategoryTable ... Binden Sie das Kombinationsfeld auf die Faust Spalte CategoryId. Stellen Sie die Spaltenbreiten für das Kombinationsfeld 0in (keine zweiten Wert Notwendigkeit, so gibt es keine Begrenzung). Dies wird die erste Spalte auszublenden, die von Ihnen gewählte Wert enthält; dass alle zeigt es die Beschreibung Wert, der alles, was Sie wollen, um zu sehen ist. So, jetzt, wenn Sie eine andere Option in der Combobox wählen, wird der Wert durch das Kombinationsfeld zurückgegeben wird der gebundene Wert, CategoryId, nicht Kategorie.

Ach ja Alison, sorry, vergaß ich die Combobox Spaltenanzahl = 2 zu setzen.

Andere Tipps

Sie sollten auch prüfen, ob Ihre Kategorien Tabelle einen Primärschlüssel auf dem Feld Kategorienamen hat. Sie ursprüngliche Konfiguration haben sollten einen Fehler oder eine Meldung, dass das Update verletzen würde den Schlüssel geworfen. Wie es ist, es scheint, dass Sie zwei Kategorien mit dem gleichen Namen haben können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top