Subject E_Record_Not_Located_For_Update error

I have to edit a singleton table (a table with always 1 row only).
This table has no primary key, the KeyLinks property of the TIB_Query
is table.RDB$DB_KEY.

And I want to be sure, that only one WS can change the table.

So I use a transaction with isolation level tiConcurrency,
I catch the deadlock in the OnError event of the query, tell the user
"sorry, somebody changed the table" and than I want to show the new
values with TIB_query.Refresh.

But I always get the E_Record_Not_Located_For_Update error. I've tried
it with primary key (for one row table!), with TIB_Query.Close/Open,
with TIB_Transaction.Refresh(False), but no succes.

What am I doing wrong? (IBO 3.6 Dg)