Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Combolookup ComboBox (https://www.delphipraxis.net/100898-combolookup-combobox.html)

Tim Henford 5. Okt 2007 09:47

Datenbank: MS SQL 2000 • Zugriff über: ADO

Combolookup ComboBox
 
Hallo,

also ich habe eine Tabelle mit mehreren Spalten und nun möchte ich sowas machen, wie eine gefilterte oder geschachtelte Abfrage, also 3 Boxen:
Die 1te soll nur die Spalte "Ort" einer Tabelle lesen und die nächste Box soll dann so gefiltert sein, dass dort nur noch "StrassenNamen" der Strassen dieses Ortes kommen und in der letzte Box sollten nur noch Namen der Bewohner dieser Strasse stehen und dieser ausgewählte Name soll in eine andere Tabelle.

Wie lässt sich das am besten lösen?

Danke Tim

mkinzler 5. Okt 2007 09:49

Re: Combolookup ComboBox
 
Entwder per Master/Detail oder im onChange der Boxen

Tim Henford 5. Okt 2007 09:51

Re: Combolookup ComboBox
 
Wie läuft das mit dem Master Detail?

Ich wollte das nicht unbedingt per Hand machen, also alle items adden usw...

mkinzler 5. Okt 2007 09:55

Re: Combolookup ComboBox
 
Brauchst du auch nicht.
Master-Detail bedeutet das eine Abfrage von einer anderen (genauer von einem Wert) Abhängt

Tim Henford 5. Okt 2007 10:15

Re: Combolookup ComboBox
 
Wie funktioniert das dann?

Ich nehm ein DataSource, den ich dann "Strassen" nenne, diesen stelle ich dann auf DataSet=Query1.
Im Query selbst sag ich SQL.Text=SELECET * FROM Adressen

Dann nehme ich einen AdoTable und stell mastersource auf "Strassen" und was mach ich dann bei MasterFields usw?

Danke

mkinzler 5. Okt 2007 10:20

Re: Combolookup ComboBox
 
Lese dir mal die Grundlagen von SQL, und der Datenbankhändlung in Delphi an, dann wird dieses Problem ein Klacks sein.
Wenn du Filtern willst solltest du die Table-Komponenten gleich vergessen!

http://www.dsdt.info/tutorials/?cat=6

Tim Henford 5. Okt 2007 13:06

Re: Combolookup ComboBox
 
alles klar,

aber mal die Frage, ist es möglich via Query mehrere Splaten zu lesen und die darin jeweils doppelt enthaltenen Werte nur einmal zu verwenden?
Also sowas wie
SQL-Code:
SELECT DISTINCT strasse, DISTINCT ort FROM adresse
Hatte hier etwas gefunde, aber die Abfrage scheint etwas zu kompliziert, als das ich sie auseinandernehmen könnte
http://qc.codegear.com/wc/qcmain.aspx?d=50319

Danke

mkinzler 5. Okt 2007 13:48

Re: Combolookup ComboBox
 
Distinct beziht sich immer auf die gesamte Liste.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz