![]() |
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Zitat:
Delphi-Quellcode:
procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
begin with ADOQuery2 do begin Close; SQL.Clear; Parameters[0].Value:=AdoQuery1.FieldByName('pbID').AsInteger; SQL.Add('SELECT sName FROM schueler WHERE sBetrieb=:id'); Open; end; end; |
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Delphi-Quellcode:
Vielleicht existiert der Parameter mit dem Index 0 noch gar nicht. Du kannst ihn im Object-Inspector der IDE anlegen, oder im OnCreate-Event deiner Form mit AdoQuery2.CreateParameter().
Parameters[0].Value:=AdoQuery1.FieldByName('pbID').AsInteger;
Grüße vom marabu |
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Doch, der existiert. Den habe ich ja schon gestern im Objektinspektor erstellt, als ich den zweiten Query gleich nach dem ersten aufgerufen habe. Deswegen versteh ich die Fehlermeldung ja nicht, denn das ist der einzige Index, der falsch sein kann.
|
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Vertrauen ist gut - Kontrolle ist besser. Vor der Benutzung des Index 0 prüfe einfach den Wert von AdoQuery2.Parameters.Count.
|
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Ich habe mir mal den Count-Wert ausgeben lassen. Der steht auf 1. Aber der durchläuft "AfterScroll" mehr als einmal. Und beim zweiten Durchgang ist der Wert von Count=0 und es kommt zum Fehler. :gruebel:
|
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
Delphi-Quellcode:
Bei der Zuweisung des SQL-Statements wird intern die Parameterliste aufgebaut. Darum ist es besser du setzt den Parameter nach dieser Zuweisung. Anbei dein etwas verbogener Code. Auf zum nächsten Versuch.
procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
begin with ADOQuery2 do begin Close; SQL.Text := 'SELECT sName FROM schueler WHERE sBetrieb=:id'; Parameters.ParamByName('id').Value := AdoQuery1.FieldByName('pbID').AsInteger; Open; end; end; Grüße vom marabu |
Re: Zweites ADOQuery bekommt keine Daten vom ersten ADOQuery
:kiss: Danke danke danke... jetzt geht es! :bounce2: :hello:
Danke, dass ihr geduldig geblieben seid. War sicher nicht meine letzte DB-Frage *euchschonmalvorwarn* MfG Jens |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:55 Uhr. |
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-2025 by Thomas Breitkreuz