Subject Re: [IBO] Params
Author Geoff Worboys
> If I use the RequestLive, Everything seems to work fine. I was
> under the impression that you shouldnt use RequestLive to be
> true client server compliant, so Ive been trying to write the
> app to work with RequestLive:=False. Maybe this is part of my
> trouble? I just noticed that the contact manager demo has
> RequestLive set to true..

If you were using the API directly you would be correct. The "FOR
UPDATE" clause of the SQL is not normally good for performance.
However IBO takes care of this for you. If you use the "FOR UPDATE"
clause in your SQL it automatically sets RequestLive=true (or you can
forget the FOR UPDATE clause and just just RequestLive=true directly).

The point being that when RequestLive is true, IBO will normally take
care of the details for you. It removes the "FOR UPDATE" clause from
the SQL it sends to the server to ensure good performance and then
creates the additional SQL required to insert/update/delete as though
you had a live update cursor.

If you have a complicated query (using joins or stored procedures) it
may be necessary to create your own insert/update/delete SQL to make
the dataset truly "live". But much of the time you can avoid such
complications by splitting your query into multiple datasets with
appropriate master/detail configuration.

HTH

Geoff Worboys
Telesis Computing