Einzelnen Beitrag anzeigen

Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#10

Re: VST mit ca. 50.000 Datensätze verdammt langsam, warum???

  Alt 7. Dez 2009, 19:52
Hast du es wenigstens mal mit Begin/EndUpdate versucht? Das würde dann so aussehen...

Delphi-Quellcode:
DSData.Open;
DSData.First;
vst_network_subnetdetails.BeginUpdate; // Neu
vst_network_subnetdetails.Clear; // Neu
for i := 0 to DSData.RecordCount - 1 do
begin
   SubnetDetailsData := TOSubnetDetailsData.Create;
   with SubnetDetailsData do
   begin
     id := DSData.FieldByName('id').AsString;
     ipaddress := DSData.FieldByName('ipaddress').AsString;
     device := DSData.FieldByName('device').AsString;
     dhcp_exclude := DSData.FieldByName('dhcp_exclude').AsInteger;
     dhcp_mac := DSData.FieldByName('dhcp_mac').AsString;
     site := DSData.FieldByName('site').AsString;
     building := DSData.FieldByName('building').AsString;
     floor := DSData.FieldByName('floor').AsString;
     position := DSData.FieldByName('position').AsString;
     vlan := DSData.FieldByName('vlan').AsString;
     subnetdevice := DSData.FieldByName('subnetdevice').AsString;
     description := DSData.FieldByName('description').AsString;
     sid := DSData.FieldByName('subnet_id').AsString;
   end;
   vst_network_subnetdetails.AddChild(nil, SubnetDetailsData);
   Application.ProcessMessages;
   DSData.Next;
end;
vst_network_subnetdetails.EndUpdate; // Neu
DSData.Close;
Ansonsten: Kommentier nach und nach deinen Code in den Ereignissen des VT aus und arbeite dich langsam vor. Dann sollte sich das Problem schnell zeigen...
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat