Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Kombifeld füttert Kombifeld mit definierten Werten

Begonnen von accessundich, April 28, 2009, 08:31:33

⏪ vorheriges - nächstes ⏩

accessundich

Moin,

grübele derzeit über folgende Problemstellung:

1. Kombifeld enthält alle Stichwörter (pkStichwortID, Stichwort). Dieses Kombifeld füttere ich aus einer SQL-Abfrage

2. Nach Auswahl eines Stichwortes, soll ein 2. Kombifeld mit den Stichwörtern befüllt werden, die noch verfügbar sind; also Stichwörter - dem ausgewählten Stichwort des 1. Kombifeldes.

3. Das dritte Kombifeld soll nun die Stichwörter enthalten, die noch verfügbar sind. Also Stichwörter - 1 Stichwort aus Kombifeld1 und - 1 aus Kombifeld2

4. Viertes Kombifeld... Fünftes Kombifeld etc.

Sinn des Ganzen: Eine mehrstufige Suche in meiner Tipp-Datenbank.
Jedes Kombifeld ergibt ein weiteres Suchkriterium.

Erste Überlegung von mir: Ein Array mit der Werteliste aus dem ersten Kombifeld füttern und dort dann die Auswahl entfernen und dieses dann quasi als neue Werteliste für das 2. KOmbifeld hernehmen.

Über Ideen würde ich mich sehr freuen.

Danke
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

Hondo

Hallo,
das ist doch zuerst eine Frage des Tabellenlayouts.
Welchen Schlüssel/Gruppierungsschlüssel bzw. Feld verwendest du und wie ist es aufgebaut?

Beispiel:
1.0 Motor
1.1 Baugruppe Zündanlage
1.1.1 Zündkabel
1.1.2 Zündverteiler
1.2 Baugruppe Ventile
...

Andreas

accessundich

Hi,

das Tabellenlayout ist schon in Ordnung und zu jedem Tipp (tblTipp) gibt es aus der Tabelle "tblStichworte" eine Auswahl an Stichworten, die dann in der Zwischentabelle "tblTippStichworte" normalisiert wurden.
Ne, dass stimmt schon und mir geht es in der Tat nur darum:
Werteliste eines Kombifeldes - Auswahl = Neue Werteliste für ein 2. Kombifeld.
Werteliste des 2. Kombifeldes - Auswahl = Neue Werteliste für ein 3. Kombifeld.

Ich möchte bei mehreren hundert Stichworten kein Listenfeld befüllen und dort ein MultiSelect vornehmen wollen.

Viele Grüße
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

coly

folgende Idee:
mach eine Tabelle, wo die aktuelle Auswahl zwischengespeichert wird (Tabelle leeren wenn du zum Formular gehst)
binde ein Unterformular an die Tabelle (Datenblattansicht oder Endlosformular) und binde das UF an die obige Tabelle
als RowSource machst ein SELECT auf deine Stichworttabelle und ein 'WHERE Stichwort NOT IN (Auswahltabelle.Stichwort)'
RowSource bei Fokuserhalt aktualisieren

accessundich

Hey Danke,

auch ne Idee.

Werde mich mal dran machen Deine Idee und eben meine derzeitige Idee mit dem Array umzusetzen.
Via ADO könnte ich mir ja auch quasi eine virtuelle Tabelle zaubern... grübel.

Weiterer Input gerne willkommen  :D
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

accessundich

Hmmm,

oder alle Kombifelder gleich via der selben SQL-Abfrage befüllen und dann einfach gegeneinander die ID-Werte schnell vergleichen.
Wenn 2 gleich sind, Hinweis, dass nur verschiedene Stichworte fürdie Suche verwendet werden sollen.

Lieber ist mir aber die andere Geschichte...

Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

accessundich

Oder ich bastel mir einen SQL-String, füttere mit diesem das erste Kombifeld.
Nach der Auswahl ergänze ich eine Kopie dieses SQL-Strings mit: WHERE Stichwort NOT IN (Auswahltabelle.Stichwort) usw. usf.

Das müsste es sein  ;D

Werde mich da heute Nachmittag ran machen und das Ergebnis hier posten.

Danke für die tollen Ideen.
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

DF6GL

Hallo,

"Sinn des Ganzen: Eine mehrstufige Suche in meiner Tipp-Datenbank."
für meinen Teil kann ich jetzt nicht nachvollziehen, was es mit diesen Stichwörtern und der mehrstufigen(?) Suche jetzt auf sich hat...

Normalerweise durchsucht man die DS  letztendlich  nach einem(!) Stichwort , das durchaus aus der Stichworttabelle per Kombi ausgewählt werden kann.  


Oder hab ich das Vorhaben falsch verstanden?
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

accessundich

Jo Franz,

zu jedem Tipp in meiner Tipp-DB gibt es, in besagter Zwischentabelle, eine Stichwortliste.

Wenn ich jetzt einen Tipp suche, von dem ich nur weiß, dass er mit "Ado", "SQL" und "Kombifeld" zu tun hat, dann möchte ich nach allen Tipps suchen können, die eben diese drei Stichworte haben. Da ich, Fehlermöglichkeit während der Eingabe, keine Eingabe in ein Textfeld haben will, kam mir der Gedanke mit 10 Kombifeldern, die entsprechend gefüttert werden.
Mit der SQL-Geschichte und "Not In" müsste es so gehen.

Viele Grüße
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

DF6GL

Hallo,


mhmm,  spontane Idee:

ein Kombifeld, das alle Stichwörter (aus tblTippStichwörter(!),  mit "distinct") holt. Nach Auswahl ("after Update") Neuzuweisung der SQL mit (Ausschluss-)Filterung über ein jedes Mal erweitertes Kriterium (in einer Variablen) mit dem ausgewählten Stichwort.
Das kannst Du dann bis zur Vergasung (  ;D ) machen, maximal bis es keine übrigbleibende Kombination aus vergebenen Stichwörtern mehr gibt.


Rücksetzen der KombiListe muß halt dann mit einem extra Button erledigt werden, oder bei einem anderen passenden Ereignis.


Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

accessundich

Hi Franz,

jo. Denke dies ist der richtige Weg, wenngleich Distinct nicht vonnöten ist, da ich eine eigene Tabelle Stichworte habe, wo ein Stichwort in der Tat nur einmal vorkommt.

Daanke
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

DF6GL

Hallo,



"wenngleich Distinct nicht vonnöten ist, da ich eine eigene Tabelle Stichworte habe"


das hab ich nicht gemeint, nimm besser die Tabelle "tblTippStichwörter".   Die Tabelle "tbl_Stichwörter" beinhaltet doch alle(!) möglichen Stichwörter, nicht nur die schon für Tipps verwendeten, oder?

Ich würde ganz auf eine solche "Stammtabelle" verzichten (IMH(orrible)O ist es müßig, irgendwann brauchbare Stichwörter im Vorfeld zu pflegen) und einfach neue (noch nicht benutzte) Stichwörter in tbl_TippStichwörter bei einem Kombi und dessen "Not in List"-Eigenschaft eingeben.

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

accessundich

Ist ne Idee, Danke Franz.

"rgendwann brauchbare Stichwörter im Vorfeld zu pflegen"

Mache ich während der Tipp-Anlage. Da habe ich 10 Textfelder, in die ich meine Wunschstichwörter für den gerade in der Anlage befindlichen Tipp eintrage.
Diese werden dann mit tblStichwort verglichen und wenn noch nicht angelegt, dort angelegt und im Anschluss daran, wird der Tipp angelegt sowie die Zwischentabelle tblTippStichworte entsprechend belegt.

Die Kombifeldfütterung aus tblTippStichworte macht Sinn.

Danke
Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.

DF6GL

Hi,

"Da habe ich 10 Textfelder, in die ich meine Wunschstichwörter für den gerade in der Anlage befindlichen Tipp eintrage."


das ist aber alles andere als normalisiert. Oder sind das nur Eingabefelder, die anschließend als Datensätze in eine Tabelle übertragen werden?
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

accessundich

"Oder sind das nur Eingabefelder, die anschließend als Datensätze in eine Tabelle übertragen werden?"
:D Klar doch.

Andi
---
Ich stelle keine komischen Fragen: Ich bin komisch.