Cita:
Empezado por Casimiro Notevi
Casi seguro que es algo así. Está haciendo transacciones manualmente, cuando el componente ya las tiene asociadas implícitamente.
|
Buenas
Como puedo averiguar si el componente las tiene asociada implicitamente. ¿Cual es la propiedad?.
Ayer por la noche quité todas las instrucciones de transacciones, para ver si se hacían de forma automática las grabaciones de manera implicita, quité el componente TFDTransaction y no funcionó. Así que lo dejé como estaba.
Lo he solucionado de forma provisional modificando el programa Cliente, cada vez que envío datos al programa Servidor, lo que hago es seguidamente desconectar y conectar al cliente del servidor, y así sí que se refleja inmediatamente la grabación. Pero como digo, no es una forma de hacerlo que me guste, aunque consigo lo que quiero. Seguiré investigando a ver que sucede.
No hago transacciones anidadas, un ejemplo es como el que sigue:
Código Delphi
[-] transacciones.StartTransaction;
try
qCuentas.ExecSQL;
Result:= 'Ok';
transacciones.commit;
Except
on E: exception do
begin
transacciones.Rollback;
raise;
end;
end;
Tan sencillo como eso y no graba cuando llega al commit.
Gracias por vuestros comentarios.