Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Einlesen von SQL-Daten in Combobox (https://www.delphipraxis.net/49274-einlesen-von-sql-daten-combobox.html)

cell 11. Jul 2005 08:54

Re: Einlesen von SQL-Daten in Combobox
 
Delphi-Quellcode:
procedure TfrmTestauswahl.cmdbestaetigenClick(Sender: TObject);
begin
  cbotestnummer.Items.Clear;
  with myQuery do begin
    myQuery.SQL.Text := 'SELECT Testnummer FROM friktionstest;
    myQuery.Open;
    while not Eof do begin
      cbotestnummer.Items.Add(myQuery.Fields[0].AsString);
      Next;
    end;
    myQuery.Close;
end;

end.
ich hab das jetzt mal so probiert aber er hat immer einen Fehler beim
Delphi-Quellcode:
with myQuery do begin
und das versteh ich nicht bzw ich weiß ned warum :(

marabu 11. Jul 2005 09:07

Re: Einlesen von SQL-Daten in Combobox
 
Der Compiler hat dir doch gesagt, dass er die Variable myQuery nicht kennt. Entweder deine Query heißt anders, oder sie befindet sich in einer anderen Unit - dann musst du den Namen qualifizieren (z.B. Unit7.nyQuery).

marabu

cell 11. Jul 2005 09:10

Re: Einlesen von SQL-Daten in Combobox
 
jetzt ist es schon ein bisschen klarer geworden aber ich verstehe immer noch nicht ganz was jetzt ein Query ist. ich hab mir gedacht ein Query ist eine SQL abfrage wie zb
Select * From friktionstest
aber anscheinen ist es das nicht
wäre dir sehr dankbar wenn du mir das nochmal erklären könntest
thx

cell 11. Jul 2005 09:14

Re: Einlesen von SQL-Daten in Combobox
 
bzw kannst du mir ein beispiel zeigen

marabu 11. Jul 2005 09:34

Re: Einlesen von SQL-Daten in Combobox
 
Mein Code-Beispiel weiter oben mit dem with-block hat dich vielleicht etwas verwirrt.

Delphi-Quellcode:
procedure TfrmTestauswahl.FormCreate(Sender: TObject);
begin
  ComboBox.Items.Clear;
  // Anfrage formulieren - nur ein Beispiel
  myQuery.SQL.Text := 'SELECT Testnummer FROM Test WHERE Testabschnitt = 3 ORDER BY Testnummer';
  // Anfrage an Server schicken und Ergebnis in Tabellen-Form zurück erhalten
  myQuery.Open;
  // Tabelle Satz für Satz durch gehen
  while not myQuery.Eof do begin
    Combobox.Items.Add(myQuery.Fields[0].AsString);
    // zum nächsten Satz weiter schalten
    myQuery.Next;
  end;
  // Fertig - Ergebnis verwerfen
  myQuery.Close;
end;
marabu

cell 11. Jul 2005 09:39

Re: Einlesen von SQL-Daten in Combobox
 
jo gut des ahb i soweit (versteh ich auch )
ich hab das ganze mit Datamodul gemacht und da hab ich ein Query1 hineingetan. die unit heißt dbmodule
so
dbmodule hab ich in die uses getan, das query hab ich überall gleich bezeichnet mit qry
nur funktionierts nicht :(

marabu 11. Jul 2005 10:22

Re: Einlesen von SQL-Daten in Combobox
 
datamodule.query1 ist der richtige Name - wenn ich dich verstanden habe.

marabu

cell 11. Jul 2005 11:32

Re: Einlesen von SQL-Daten in Combobox
 
Delphi-Quellcode:
procedure TfrmTestauswahl.FormCreate(Sender: TObject);
begin
cbotestnummer.Items.Clear;
  with DataModule1 do
  begin
       Query.SQL.Text:= 'SELECT Testnummer FROM friktionstest';
       Query.Open;
       while not Query.Eof do
       begin
             cbotestnummer.Items.Add(Query.Fields[0].AsString);
             Query.Next;
       end;
       Query.Close;
end;

end;
hmm... jetzt kommt eine zugriffsverletzung ... aber vorher ist es gerade gegangen...hab nur die form gewechselt, was kann das sein ???

merlin17 11. Jul 2005 11:36

Re: Einlesen von SQL-Daten in Combobox
 
TfrmTestauswahl.FormCreate

-> ist zu diesem Zeitpunkt das Datenmodul schon existent/created ???


:-) thomas

cell 11. Jul 2005 11:37

Re: Einlesen von SQL-Daten in Combobox
 
ähmm keine ahnung wo seh ich das ??

Jasocul 11. Jul 2005 11:38

Re: Einlesen von SQL-Daten in Combobox
 
Oder der Zugriff auf die ComboBox ist zu früh.
Ist bei mir zumindest ein bekanntes Phänomen.

cell 11. Jul 2005 11:41

Re: Einlesen von SQL-Daten in Combobox
 
ähmm ich habe ein main fenster ... dann klicke ich auf datei neu und ab diesen zeitpunkt soll in der combobox etwas drin stehn
wo schreibe ich das hin ... schon in Form.create

merlin17 11. Jul 2005 11:41

Re: Einlesen von SQL-Daten in Combobox
 
Zitat:

ähmm keine ahnung wo seh ich das ??
in der dpr-datei :thumb:

verschiebe den code testhalber einmal in das OnShow-Ereignis (statt OnCreate).

:-) thomas

cell 11. Jul 2005 11:46

Re: Einlesen von SQL-Daten in Combobox
 
Delphi-Quellcode:
TfrmTestauswahl.FormShow
wie schreibe ich das FormShow ?
bzw muss ich bei den ereignissen auch was ändern ??

er hat den Fehler:
Undefinierter Bezeichner: FormShow

Jasocul 11. Jul 2005 11:48

Re: Einlesen von SQL-Daten in Combobox
 
Im OI hast du doch zur Form eine Liste der möglichen Ereignisse.
Irgendwo steht auch "OnShow". Doppelklick machen und der Rumpf wird erzeugt. Dann den Source vom OnCreate dahin kopieren und aus dem FormCreate rausnehmen.

cell 11. Jul 2005 11:52

Re: Einlesen von SQL-Daten in Combobox
 
supa danke hat hingehaun
so jetzt noch eine kleine frage :mrgreen:

jetzt kommen die nummern erst wenn ich auf die combobox klicke, was muss ich tun damit sie schon am anfang in der combobox stehen ???

Jasocul 11. Jul 2005 11:56

Re: Einlesen von SQL-Daten in Combobox
 
Indem du der Eigenschaft ItemIndex der ComboBox einen Wert (z.B.: 0) zuweist. Allerdings erst, nachdem du die Daten eingelesen hast.

cell 11. Jul 2005 12:01

Re: Einlesen von SQL-Daten in Combobox
 
ich hätte ncoh eine frage
wenn ich einem label den wert von der Combobox zuweisen möchte
ist der quelltext so richtig bzw kann ich das so schreiben

Delphi-Quellcode:
caption:=cbotestnummer.caption;

marabu 11. Jul 2005 12:25

Re: Einlesen von SQL-Daten in Combobox
 
Besser so:

Delphi-Quellcode:
Label1.Caption := cbotestnummer.Text;
marabu

cell 11. Jul 2005 12:37

Re: Einlesen von SQL-Daten in Combobox
 
hmm ich hab das mal so probiert aber leider zeigt mir das noch nichts an
Delphi-Quellcode:
procedure TfrmTestauswahl.lbltestClick(Sender: TObject);
begin
lbltest.Caption:=cbotestnummer.Text;
lbltest.Visible:=true;
end;

hat wer einen vorschlag ??

marabu 11. Jul 2005 12:48

Re: Einlesen von SQL-Daten in Combobox
 
Der Code gehört wohl eher in die Ereignisbehandlungsroutine OnChange() der ComboBox - und das setzen von Visible kannst du dir eigentlich sparen.

marabu

TeronG 11. Jul 2005 12:55

Re: Einlesen von SQL-Daten in Combobox
 
:gruebel:
hmm sollte eigentlich so klappen ... du hast schon auf dein lbltes geklickt oder? :wink:

cell 11. Jul 2005 13:17

Re: Einlesen von SQL-Daten in Combobox
 
es gibt bei einen label leider kein ereignis das OnChange () heißt
:( weißt du wie ich das händisch hineinschreiben kann ???

cell 11. Jul 2005 13:19

Re: Einlesen von SQL-Daten in Combobox
 
ha habs schon danke =p war ned da lable sondern die combobox ^^
hast wahrschienlich eh gemeint :mrgreen:

cell 11. Jul 2005 13:29

Re: Einlesen von SQL-Daten in Combobox
 
hab noch eine frage (sry ist glaube ich eine der letztden )
ich habe jetzt in meiner combobox eine nummer und zu dieser nummer brauche ich das richtige datum aber aus einer anderen spalte und das, soll nachher in ein label hineingeschrieben werden
Delphi-Quellcode:
procedure TfrmTestauswahl.cbotestnummerChange(Sender: TObject);
begin
lbldatum.Items.Clear;
  with DataModule1 do
  begin
       Query.SQL.Text:= 'SELECT datum FROM friktionstest WHERE cbotestnummer.text=?????';
       Query.Open;
       while not Query.Eof do
       begin
             lbldatum.Items.Add(Query.Fields[2].AsString);
             Query.Next;
       end;
       Query.Close;
  end;
end;
was gehört denn in den SQL befehl bzw stimmt es bis auf den ???

cell 11. Jul 2005 14:38

Re: Einlesen von SQL-Daten in Combobox
 
so mittlerweile hab ich das gelöst aber im moment hab ich ein andres problem: wenn ich von einer Form auf eine andre etwas übergeben möchte, wie bzw wo gib ich ihm die beiden Forms an ????

TeronG 11. Jul 2005 14:40

Re: Einlesen von SQL-Daten in Combobox
 
1. Delphi Crashkurs .. :wink:
2. Delphi-Referenz durchsuchenuses

cell 11. Jul 2005 14:43

Re: Einlesen von SQL-Daten in Combobox
 
welcher delphi crashkurs hast du einen link für mich bitte ?????

TeronG 11. Jul 2005 14:48

Re: Einlesen von SQL-Daten in Combobox
 
Zitat:

Zitat von cell
welcher delphi crashkurs hast du einen link für mich bitte ?????

ähmmm :oops: tja ... da fällt mir höchstens der Hier im Forum suchenCrashkurs (tuts) ein .. weis aber net mehr genau was der alles abhandelt..
meine "crashkurs" war noch Hardcopy (so zeuch aus Papier)

merlin17 11. Jul 2005 14:52

Re: Einlesen von SQL-Daten in Combobox
 
Zitat:

welcher delphi crashkurs hast du einen link für mich bitte
www.marcocantu.com (eBook von Pascal und Delphi als PDF dort kostenlos). ersetzt aber
nicht wirklich ein gutes Buch.....(z.B. DevelopersGuide von Pacheco/Teixeira bzw. MasteringDelphi von MarcoCantu).
"erst setzt man sich mit dem Buch zusammen und dann mit dem Inhalt auseinander" :)


:-) thomas

cell 11. Jul 2005 14:57

Re: Einlesen von SQL-Daten in Combobox
 
sry finde mich auf der seite nicht zurecht
brauch nur einen befehl :)

Delphi-Quellcode:
frmtestauswahl.cbotestnummer.text:=frmmesstwertauswahl.lbltestnummer.caption
nachdem der nicht geht :)

undefinierter bezeichner: frmmesswertauswahl

merlin17 11. Jul 2005 15:01

Re: Einlesen von SQL-Daten in Combobox
 
Zitat:

undefinierter bezeichner: frmmesswertauswahl
die Unit (und damit Form) fehlt dann noch in dem "Fehler-Melde-Formular"....

such' mal nach uses in der onlineHelp (auch mit zirk.Referenz und ähnlichen
Stolpersteinen <g>)


:-) thomas

cell 12. Jul 2005 07:19

Re: Einlesen von SQL-Daten in Combobox
 
ähmm was ist ein Fehlermelde Formular ???
in der Delphi help steht nichts wichtiges drinnen (kein Bsp)!!
:(

merlin17 12. Jul 2005 08:14

Re: Einlesen von SQL-Daten in Combobox
 
war in Anführungszeichen.
ich meinte damit das Formular in dem der "undefinierte Bezeichner" angemeckert wird.

:-) thomas

cell 12. Jul 2005 08:47

Re: Einlesen von SQL-Daten in Combobox
 
ich hab ihm dass jetzt so reingeschrieben

Delphi-Quellcode:
var
frmMesswertauswahl = TfrmMesswertauswahl;
fuinktioniert aber auch ned =(
kannst du mir bitte ein beispiel geben ??

thx

merlin17 12. Jul 2005 09:13

Re: Einlesen von SQL-Daten in Combobox
 
Hallo,
z.B. so:

implementation
uses UDM, URM;
{$R *.dfm}

statt UDM, URM musst du die Unit welche das Form "frmMesswertauswahl" beinhaltet
eintragen (evtl. uMesswertauswahl)

aber setzte dich mit diesen Pascal-Grundsätzen etwas mehr auseinander, auch wenn Dein
akt. Problem damit gelöst ist.

:-) thomas

cell 12. Jul 2005 10:23

Re: Einlesen von SQL-Daten in Combobox
 
ich hab da mal was probiert
Delphi-Quellcode:
begin
       Query.SQL.Text:= selectsql(' Testname','friktionstest','Testnummer='+frmtestauswahl.cbotestnummer.text,'');
       Query.Open;
       while not Query.Eof do
       begin
             lblname.Caption:=(Query.Fields[0].AsString);
             Query.Next;
       end;
       Query.Close;
end;
ich will den Testnamen in das lblname hineinschreiben
und dann kommt der Fehler

Undefinierter Bezeichner: 'lblname'

=(

Jasocul 12. Jul 2005 10:27

Re: Einlesen von SQL-Daten in Combobox
 
Vermutlich ist lblName auf der anderen Form.
Cell, du hast nun schon so viele Hinweise zum "uses" und zur voll-qualifizierten Schreibweise bekommen. Wenn das Label wirklich auf der anderen Form ist, solltest du jetzt wissen, wie es geht.

cell 12. Jul 2005 10:31

Re: Einlesen von SQL-Daten in Combobox
 
jo ich weiß eh dass ich dei andre form in die uses hineintun muss hab ich auch gemach tund geht ned

Jasocul 12. Jul 2005 10:34

Re: Einlesen von SQL-Daten in Combobox
 
Denn schreib jetzt noch die Bezeichnung deiner Form-Variablen vor "lblName". Getrennt mit einem Punkt natürlich.
Das nennt man dann vollqualifizierte Schreibweise.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:59 Uhr.
Seite 2 von 3     12 3      

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