Datensatz auswählen, mit ListBox oder ComboBox
Hallo :hi:
ich habe folgendes Problem, ich habe mehrere DBs. Meine Haupttabelle hat ein Elementnames ArbeiterID diese veweist wieder auf eine andere DB mit dem namen Arbeiter in dieser ist enthalten. Nummer Vorname Nachname Abteilung Jetzt wollte ich das in meiner ListBox oder ComboBox nicht nur der Vorname, sondern auch der Nachname steht. :o Da ich dieses schon in einem anderen Thread weit geht diskutiert habe und heraus gefunden habe. Das man dieses nur mit der ListBox oder ComboBox machen kann und nicht mit der Lookup....Box. :hello: Ich habe jetzt eine ListBox und eine ComboBox gemacht. In denen meine Arbeiter drin stehen. Wenn ich jetzt eine ListBox nehme kann ich aber keine Arbeiter auswählen und wenn ich die ComboBox nehme kann ich auch nichts auswählen. :wall: Ich machen alles mit Tables. Vielleicht liegt das Problem daran, aber dafür kenne ich mich zuwenig aus. Wenn ich einen neuen Datensatz einfügen will, gehe ich nur über meine Haupttabelle und nicht übermeine Arbeiter Tabelle. Diesen Befehl nutze ich dafür.
Delphi-Quellcode:
Ich hoffe das ihr mein Problem verstanden habt.
Datenmodul.DataModule2.taGeber.Append;
Schon mal danke für eure Antworten. mfg abi |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Ich habe auch mit Table - Kompos angefangen und bin dann aber ganz schnell zu Querys gewechselt.
Du kannst dir den Vornamen und Namen ganz einfach wie in den anderen Thread beschrieben anzeigen lassen, das sollte ja funktioniert haben. Nun zu deinem Problem. Öffne mal ein neues Project und ersetze die Table durch eine Query. Versuch einfach mal folgenden Code um die Daten in einer LISTBOX anzeigen zu lassen. Im OP bei DatabaseName schreibst du einfach den Pfad der DB (aber nur den Pafd ohne den DB Namen) rein und in SQL einfach den folgenden Code.
Code:
Jetzt kannst Du dir testweise ein DBGrid auf Form ziehen und noch eine DataSource. Nun verknüpfst Du eine die DS mit dem Query und das Grid mit der DS. Active = true setzen und du hast die Daten im Grid zu stehen.
Select * From DB
Nun änderst Du den Code aus dem anderen Thread von mir etwas ab und ersetzt die Table durch die Query. Das ganze in die OnCreate - Ereignis eingetragen und beim start sollten dann alle Vornamen und Namen in der Listbox drinstehen. Versuch das erstmal und dann machen wir weiter. Ein kleiner Tip von, am besten kaufst Du dir ein Buch über DB-Programmierung. Ich mußte es mir auch kaufen, da das Thema sehr umfangreich. |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo Albi
schon das du mir wieder hilfst, werde des jetzt gleich mal ausprobieren. Aber ich hab da mal wieder eine Frage die nicht zum Thema gehört. Welches Buch würdes du mir empfehlen, hab Delphi 5. Kann es sein das man mit Delphi 6 schon besser mit Datenbank arbeiten kann. Da ich zur Zeit ein Buch hab für Delhi 6. abi |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Ich habe mir das Buch Programmieren lernen in Delphi 7 gekauft, dort gehen die Autoren erst auf Grundlagenwissen ein und später ausführlich auf die Datenbankprogrammierung ein. In meinen Augen für Einsteiger in diese Matterie genau das richtige.
Bücher zu diesem Thema gib es hier. |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo Albi
soweit habe ich des jetzt. Jetzt stehen in meiner ListBox, die Vornamen und die Nachnamen. |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo Albi
kannst du mir weiter helfen, was muss ich denn jetzt machen. :roll: abi |
Re: Datensatz auswählen, mit ListBox oder ComboBox
So ab hier wird es etwas komplizierter. Ich werde dir hier nicht den kompletten Code dafür geben. Nur einen Link der dir zeigt wie geht.
Du hast nun die 2 Felder deiner DB zusammengeführt und kannst diese nicht einfach auswerten, dafür müst du die string erst wieder zerlegen. Hier wird gezeigt wie es geht. Und hier ist noch die Query-Abfrage der DB.
Code:
Label1 und Label2.Caption habe ich nur so ausgewählt es können auch ganz einfach Variablen sein.
With Query1 Do
Begin Close; SQL.Clear; SQL.Add('Select * from DBMandanten.db WHERE (MVorname LIKE "'+Label1.Caption+'")' +'AND (MName LIKE "'+Label2.Caption+'")'); open; end; |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo Albi
dann fang ich mal an damit. Danke abi |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo Albi
bekomme des zwar alles zum laufen aber brauche ich des überhaupt. :gruebel: Irgendwie stehe ich gerade auf dem Schlauch. :wall: Du hast mir geschreiben. Zitat:
Damit sortiere ich doch nur meine Abfrage. :shock: Dann habe ich auch noch deinen Link ausprobiert. Zitat:
Dann habe ich noch was probiert. Zitat:
Vielleicht liege ich gerade total falsch. :wiejetzt: Aber brauche ich das überhaupt alles. :gruebel: Ich will doch nur meine ListBox oder ComboBox zum Auswählen nehmen. Und dann kann ich doch auch den Index nehmen. Und da ich bei meiner Arbeiter Tabelle eine laufende Varialbe Deklariert habe. Ist dieser doch auch nicht so verschieden zum Index. Aber ich kann bis jetzt immer noch nichts bei meiner ListBox oder ComboBox auswählen. :cry: Kann des sein das sich mein Problem erübrigen würde wenn ich die EnterpriseVersion :idea: hätte. Denn ich habe in deinem Link einen gefunden, bei dem ging es mit Semikola und dieser hatte Delphi5 Enterprise. Ich hab ja nur Delphi5 Proffesional. mfg abi |
Re: Datensatz auswählen, mit ListBox oder ComboBox
Hallo abi,
jetzt versteh ich gar nichts mehr von dem was du machen willst. Erst willst Du nur den Namen und Vornamen in der ListBox anzeigen. Dann soll der n:1 Beziehung werden und jetzt wieder nicht. Dann willst Du über die Listbox einen Datensatz einfügen. Was willst Du soll den Ergebnis sein? :gruebel: Ich habe mir jetzt alle Beiträge zu diesem Thema von dir mal angeschaut. Willst Du in der ListBox wo der Wilhelm drinsteht den Namen auswählen und zu diesem dann einen neuen DS anlegen? Ich werde das Gefühl nicht los, das wir hier die ganze Zeit aneinander vorbeireden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:56 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