Ver Mensaje Individual
  #14  
Antiguo 14-09-2015
Toni Toni is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona - España
Posts: 364
Reputación: 22
Toni Va por buen camino
Hola,

Continuando con la depuracion de este error ya que quiero solucionarlo de la mejor manera (las otras soluciones que comentaba eran mas para el parche inmediato) he añadido en la aplicación unos indicadores en el formulario principal que me indican el estado de las transacciones, para de esta forma poder controlar mas facilmente en tiempo de ejecucion donde estoy gestionando mal las transacciones.

Me he llevado la primera sorpresa en una pantalla tipo edicion de un 'albaran', la cual como el resto de la aplicación utilizo clientdatasets para precisamente mejorar la gestión de las transacciones. Pues bien hay algo que no debo estar haciendo bien ya que gracias a estos indicadores veo que la transaccion que utilizo para la edición de las lineas de un albaran se queda abierta.

Añadir lo siguiente, en la aplicación utilizo dos tipos de transacciones una para las consultas que no modifican la base de datos y otra para las que si pueden actualizar datos:



Código SQL [-]
Paramertros TIBTransacction consultas

AutoStopAction=saRollback
DefaultAction=TARollback
IdleTimer=0
Params=Snapshot {concurrency, nowait}


Código SQL [-]
Paramertros TIBTransacction actualizaciones

AutoStopAction=saNone
DefaultAction=TACommit
IdleTimer=0
Params=Read Commited {read commited, recversion, nowait}

En el caso de las transacciones de consulta me lo gestiona correctamente, realizo la query, me carga los datos en el CDS y automaticamente me cierra la transacciones con un rollback.

En el otro caso no. Tengo claro que es por la configuracion diferente del TIBtransacction, pero como deberia tenerlo configurado para para este tipo de uso?
__________________
Saludos,

Bitman
Responder Con Cita