I encountered a situation where I have a TOracleDataset that when opened has more than 50 records assigned to it. Its also attached to a grid so that ActiveRow ends up being somewhere in the upper 20's. A filter is then applied (IE. The set is closed, the where clause is modified and it is reopened) so the new dataset only has one record. However, Active record is still way up there in the 20's and results in a "Bookmark not found" error from InternalGotoBookmark being called indirectly by GetRecNo. Is there a simple fix for this. Can TDataSet.ClearBuffers be called as the final part of TOracleDataset's internalClose?