Hallo Experten,
Leider scheint es in Delphi kaum eine einfache Möglichkeit zu geben, bestehende DataSets (neu) zu sortieren. Wenn ich beispielsweise mit einem TADOQuery ein DataSet erzeuge (sortiert mit einer ‚ORDER BY‘-Anweisung) und dieses in ein TDBGrid lade, so möchte ich dem Benutzer die Möglichkeit geben, die Daten im Grund nach einer anderen Klumne zu sortieren. Einfach das SQL-Statement mit einer anderen ‚ORDER BY‘-Anweisung noch einmal auszuführen möchte ich nicht unbedingt, da mit dies keine besonders effiziente Methode zu sein scheint, da ja die gleiche Abfrage evtl. über Netzwerk nocheinmal gemacht werden müsste. Ich möchte stattdessen die Daten lieber client-seitig im DataSet neu sortieren. Das funktioniert soweit auch ganz gut mit dem ‚Sort‘-Property von ADO-Datenmengenobjekten wie eben TADOQuery oder TADOTable. Ist allerdings ein berchnetes Feld in der (persistenten) Datenmenge des Objektes enthalten, versagt ‚Sort‘ mit einer Exception, dass das betreffende Feld (Item) nicht in der Menge (Collection) enthalten ist.
nun meine eigentliche Frage: Gibt es eine Möglichkeit, Datenmengen client-seitig zu sortieren, auch wenn nach berechneten Feldern sortiert werden soll ?
Gruss, Roger