Subject TIB_Query.RefreshKeys doesn't reflect INSERTs
Author paranoia2k2002
I'm using
IBObjects 4.2 Hc
Firebird 1.0
Windows NT Server 4 SP6

I have one TIB_Query (DisplayQuery) to display data from table T1
by SELECT statment and another TIB_Query (UpdateQuery) performing
INSERT, UPDATE OR DELETE on this table. The task is
DisplayQuery to reflect changes made by UpdateQuery.
Table is big (up to 100 000 rows) so RefreshKeys or Refresh is
more preferred method then Close-Open.

Table is like this

CREATE TABLE T1(
KEYFIELD INTEGER NOT NULL PRIMARY KEY,
F2 INTEGER,
F3 CHAR(8)
...
)


DisplayQuery.IB_Transaction.Isolation = tiCommitted
DisplayQuery.KeyLinks[0] = T1.KEYFIELD
DisplayQuery.KeyLinksAutoDefine = false
DisplayQuery.FetchWholeRows = false
DisplayQuery.AutoFetchAll = false
DisplayQuery.RefreshAction = raKeepDataPos
DisplayQuery.RequestLive = false

DisplayQuery.SQL = SELECT * FROM T1 WHERE F2=F2_PARAMETER

where F2_PARAMETER is value set in program, but stay intact
before and after refresh.

UpdateQuery.IB_Transaction.Isolation = tiCommitted
UpdateQuery.RequestLive = false


After INSERT is performed by the UpdateQuery and insert transaction
commits I'm trying to display changes using DisplayQuery.RefreshKeys.
But inserted rows are not visible by DisplayQuery until I perform
Close and Open. Neither DisplayQuery.RefreshAll nor
DisplayQuery.Refresh
doesn't help too.

After UPDATE or DELETE is performed by the UpdateQuery and changes
are committed, DisplayQuery.RefreshKeys works fine - every changes
are visible.

Thanks in advance for everybody who'll help.
Best regards, vicser

mailto: vicser@...