¿Cómo haces las actualizaciones desde Delphi? Con un SP?, con un ApplyUdtates? Utilizas DatasetProviders?. Con más información se puede llegar al fondo del asunto.
Un cordial saludo.
Para mis conexiones utilizo un SQLQuery + DataSetProvider + ClientDataSet (por aquello de la unidireccionalidad de DBExpress) y con un simple ClientDataSet.Edit; un ClientDataSet.Post; y un ClientDataSet.ApplyUpdates(-1);
Cuando hago procesos de inserciones a la base de datos utilizo directamente un SQLQuery.ExecSQL;
Saludos.
Abriendo una transacción y cerrándola (Commit) deberías poder ver el cambio con seguridad.
Ya hice ésto y tienes razón, visualizo los cambios perfectamente. Mi pregunta es porqué el Trigger me está impidiendo terminar la transacción porque si lo inactivo mi sistema vuelve a reflejar todos los cambios sin problemas.
Mi problema es que temo que tenga que iniciar transacciones con cada POST y cada EXECSQL que quiera hacer a la base de datos para que el famoso Trigger no me afecte
DbExpress normalmente ya controla las transacciones de forma implícita, normalmente no deberías preocuparte por ellas.
Es normal que Delphi no vea los cambios ejecutados por un trigger, puesto que esos cambios ocurren directamente en la base de datos. Para que los puedas ver en Delphi tienes que cerrar y volver a abrir tu consulta de datos cada vez que los modificas.
De hecho no me importaría no ver el cambio realizado desde el Trigger ya que actualiza sólo datos de control, pero el problema es que no me deja ver ni los cambios (updates e inserciones) que yo hice desde la aplicación y no sólo en Delphi, si no en la misma base de datos si no hasta que cierro la aplicación que inició la transacción.
Les agradezco mucho la ayuda y les actualizo esta información: Se generó el mismo comportamiento del Trigger pero en un SP que se manda llamar desde el Trigger AFTER UPDATE con al parecer buenos resultados hasta el momento. No me gusta tener que buscar soluciones alternas pero el tiempo a veces no me deja seguir investigando.
Si alguien pudiera seguir poniendo luz a este asunto, se los agradeceré como siempre
Saludox !