Einzelnen Beitrag anzeigen

Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Query auslesen und in ein Grid einlesen

  Alt 14. Jul 2011, 20:26
Hallo Omata!

vielen Dank für deinen Hinweis auf Fields!
Es funktioniert nun auch alles.
Allerdings dauert das Laden schon 3-4 Minuten....

Ich hatte jetzt mit Dataset rumgespielt, ändert an der Geschwindigkeit aber auch nichts...
Die Query ist in 1 Sekunde geladen. Der nachfolgende Code benötigt die o.g. Zeit:
Delphi-Quellcode:
  //**** laden der Daten aus der Query in das Grid im OnCreate-Event der Haupt-Form
  begin
    cx_Grid_1.BeginUpdate;
    row_ID := 0;
    while not DatabaseModul.PvswQuery_1.EoF do begin
      tv_1.DataController.AppendRecord;

      // !!! die erste Spalte im Grid ist schon vorbelegt mit anderen Daten deswegen die Schleife ab 1
      for col_ID := 1 to DatabaseModul.PvswQuery_1.FieldCount - 1 do begin
        tv_1.DataController.Values[row_ID, col_ID] := DatabaseModul.PvswQuery_1.Fields[col_ID - 1].AsString;
      end;

      DatabaseModul.PvswQuery_1.Next;
      inc(col_ID);
      inc(row_ID);
    end;
    cx_Grid_1.EndUpdate;
    DatabaseModul.PvswQuery_1.Close;
  end;
`
Kennt jemand hier noch Optimierungsmöglichkeiten?
Danke!

@haentschman,
Ich nutze das Quantumgrid. Dort lassen sich die Daten wunderbar filtern und gruppieren. Da aber nach allen(!) Werten der 36 Spalten gefiltert werden können soll, muss ich alle Daten laden...

Edt: Fehler behoben (col_ID - 1)...
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)

Geändert von juergen (14. Jul 2011 um 21:31 Uhr)
  Mit Zitat antworten Zitat