Einzelnen Beitrag anzeigen

Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#4

AW: Stringzerlegung in Schleife

  Alt 5. Apr 2013, 15:25
Sollten qbefehl und qanzahl Queries sein, dann würde ich hier über eine While-Schleife gehen. Denn so kannst Du schön jeden Datensatz einzeln aus dem Ergebnis der Abfrage holen und entsprechend verarbeiten. Desweiteren um dem ganzen noch mehr Übersichtlichkeit zu verschaffen, solltest Du statt qbefehl.Fields.Fields[1].AsString; folgenden Befehl benutzen qbefehl.FieldByName('<Feldname>').AsString; . Dann wird sich sicherlich Dein Problem von alleine lösen.

Edit:
In diesem Bereich :
Delphi-Quellcode:
for count:=1 to count2 do
begin
  qbefehl.Next;
  ed1.Text:=qbefehl.Fields.Fields[1].AsString;
  ed2.Text:=qbefehl.Fields.Fields[2].AsString;
  t:=qbefehl.fields.fields[2].asinteger;
  i:=1;
  s:=ed1.Text ;

{...}
Springst Du mit dem qbefehl.next gleich zum nächsten Datensatz, wo auch immer der ist. Wenn Du keine While-Schleife benutzen möchtest, solltest Du zumindest qbefehl.first und qanzahl.first vor die For-Schleife mit einbauen und den Befehl qbefehl.next ans Ende stellen. Somit ist auch sichergestellt, dass Du keinen Datensatz vergisst.
Rolf Warnecke
App4Mission

Geändert von RWarnecke ( 5. Apr 2013 um 15:31 Uhr)
  Mit Zitat antworten Zitat