Mensaje    Asunto: Transacciones resueltas en STUDIO 2006 con IB Responder citando

Joder!!! Y perdonar que empiece así el mensaje. ¡Menuda tontería era el problema!
Resulta que controlo las transacciones manualmente, es decir ejecuto los cambios con: Cuando voy a hacer algun cambio en la base de datos, ya sea por TIBTable o TIBQuery, previamente ejecuto esta instrucción:
Código:

if(!MDatos->IBTransaction->InTransaction)
        MDatos->IBTransaction->StartTransaction();

Y cuando he realizado cambios esta otra:
Código:

if(MDatos->IBTransaction->InTransaction)
        MDatos->IBTransaction->CommitRetaining();

Pues resulta que en C++ 6 creía que con esto era suficiente, y así es, pero en el Studio 2006, si no pones la propiedad ‘ForceRefresh’de las Tablas y los TQuery a ‘true’ no ejecuta los cambios, es decir no se actualiza y hace caso omiso del
Código:

MDatos->IBTransaction->CommitRetaining();

Y mi pregunta es: es necesario poner a trae dicha propiedad en el C++ 6 para un correcto funcionamiento y mayor seguridad o quizás no se necesario?
Mi aplicación la tengo instalada en 6 Locales y no me han dado problemas.
Por supuesto estoy hablando de Interbase version 7.01.

Otro Tema:
Depurando el codigo he podido observar que el primer fragmento de código, es decir donde compruebo si hay alguna transacción en abierta siempre me dice que SI, por tanto nunca llega a ejecutarse la linea siguiente:
Código:

    MDatos->IBTransaction->StartTransaction();

Me pregunto si no será necesario esta comprobación, ya que parece que el C++ 6 la activa automaticamente cuando detecta cualquier cambio.
_________________
Muchos hombres no se equivocan jamás porque no se proponen nada razonable.