Subject Re: [IBO] Refresh / Buffer HowTo ?
Author Helen Borrie
At 02:01 PM 20/07/2005 +0000, you wrote:
>I have a TIB_Query where I edit and append records.
>Additionaly there is a TIBO_Query with the same SQL set
>to provide a QuickReport form with data.
>
>After finish append/editing the user click on a button causing
>to add a filter to TIBO_Query and show a new form where the user
>see the QuickReport Preview.
>
>Unfortunately I can't see any updates in the QR-Preview -
>they occur only after restart of the app.
>
>Seems that the TIBO_Query does not update/reread it's buffers
>after changing the filters - or the TIB_Query does not write
>the changes in time before I set the filter ...
>
>So I guess I still have a problem about how to refresh/reread
>data.
>
>Could please be somebody so kind to give me some general
>guideline of this kind of problem ?
>
>I tried around experementing with Post/Commit/Refresh/FetchAll etc.
>but except of the FetchAll and ExecSQL command I did not find
>out how to re-read data to the buffer without a significant
>performance loss ...

Try using InvalidateRowNum. To do this, you will need to establish a way
to correlate the row numbers between the two datasets so that, when the row
in the first query changes, you can map to the corresponding row number in
the IBOQuery.

The ideal is to use the native IBO InvalidateBookmark. Unfortunately, the
ib_query and iboquery bookmark types are not compatible. Jason has added
an InvalidateBookmark method to the TIBOQuery, so my instinct tells me
there ought to be a way to map a TIB_Bookmark in the ib_query to a
TBookmark in the iboquery. Current problem is, I don't know what it is. :-(

Helen