Beim Entwickeln eines TDataSet-Descendants, also zB beim Entwickeln der TQuery-Komponente selbst, muss man lediglich Funktionen zum
- *Erzeugen eines Bookmarks und Rückgabe eines Pointers auf ihn,
*Löschen eines Boockmarks hinter einem Pointer und
*Platzieren des Cursors, auf den der Bookmark hinter einem Pointer zeigt
für die äußere Schnittstelle implementieren.
Das Speichermanagement der internen Daten obliegt vollständig dem Erben von TDataSet (hier: TQuery).
Du kannst Dich daher nicht darauf verlassen, dass die Lösung funktioniert; ich kenne Implementierungen, die so definitiv
nicht funktionieren sondern, im Gegenteil, zum Absturz führen würden.
Verwende stattdessen einen künstlichen Schlüssel, um die Daten wiederzufinden. Wenn er in der Anzeige stören sollte, verberge die Spalte mit
TField.Visible (oder direkt im Grid?).