Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   endlosschleife (https://www.delphipraxis.net/49739-endlosschleife.html)

cell 15. Jul 2005 09:05


endlosschleife
 
weiß jemand warum hier eine endlosschleife ist
Delphi-Quellcode:
begin


with DataModule1 do
  begin
       //Query.close;
       Query.SQL.Clear;
       Query.SQL.Text:= selectsql('Anfangsgewicht_Belag_vorne_oben, Anfangsgewicht_Belag_vorne_unten','Friktionstest','Testnummer='+frmtestauswahl.cbotestnummer.Text,'','');
       //ShowMessage(inttostr(length(Query.SQL.Text)));
       Query.Open;
       Query.First;
       while not Query.Eof do
       begin

             frmgewichtaendern.txtbelagvo.Text:=(Query.Fields[0].AsString);
             frmgewichtaendern.txtbelagvu.Text:=(Query.Fields[1].AsString);
       end;
  end;
thx 4 help

Duke_2004 15. Jul 2005 09:08

Re: endlosschleife
 
Warum ist das Close auskommentiert?
Mach doch einfach:

Delphi-Quellcode:
If Query.Active then
  Query.Close;
(Bei mir gabs schon Probleme, wenn ich SQL-Text einfügen wollte, aber die Query noch offen war)

Zur Schleife:

Delphi-Quellcode:
while not Query.Eof do
       begin
             frmgewichtaendern.txtbelagvo.Text:=(Query.Fields[0].AsString);
             frmgewichtaendern.txtbelagvu.Text:=(Query.Fields[1].AsString);
             
             Query.Next;  // -> vergessen, sonst bleibt er ja immer auf einem Datensatz stehen
       end;

:-D Viel Spaß noch...

shmia 15. Jul 2005 09:10

Re: endlosschleife
 
Zitat:

Zitat von cell
weiß jemand warum hier eine endlosschleife ist

Weil in der While-Schleife ein Query.Next fehlt. (rotes Gemüse auf den Augen :-D )
Query.SQL.Clear kannst du dir übrigens schenken, wenn ein Zuweisung an Query.SQL.Text erfolgt.

cell 15. Jul 2005 09:10

Re: endlosschleife
 
thx des wars =D

malo 15. Jul 2005 09:21

Re: endlosschleife
 
Auch wenn es hier nicht direkt zum Thema passt: Bitte schreib nicht in die "Sprache" Delphi 4. Delphi 4 entspricht Delphi für Win32. Wäre schön, wenn du das ändern und demnächst berücksichtigen könntest. Danke :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 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