Cita:
Empezado por Jose Roman
Hola a todos,
Trabajo con Delphi 2007 y FIBPlus 6.9. En el formulario tengo una tabla maestro tbFacAcu y una tabla detalle tbAbono, esta relacion funciona a la perfeccion, el problema me ocurre cuando
trato de actualizar un campo en la tabla maestro (lo hago por medio de codigo) y este no lo actualiza:
Código Delphi [-]
tbFacAcu.Edit;
tbFacAcuESTAD.Value := 'C';
tbFacAcu.Post;
tbFacAcu.Refresh;
No se si hay que realizar un paso mas para que esto suceda???
|
Bueno una posible causa es que no estes confirmando la transacción. Para esto hay 2 maneras.
1) Si estas usando el componente TpFIBDataset, puedes activar la propiedad AutoCommit, con lo cual cada vez que haces un Edit...Post se confirma la transacción.
2) Controlar la transacción tú mediante es el siguiente código:
Código Delphi
[-]
Transacion.StartTransaction;
tbFacAcu.Edit;
tbFacAcuESTAD.Value := 'C';
tbFacAcu.Post;
Transacion.CommitRetaining;
--tbFacAcu.Refresh; Esta línea está de más, ya nque la propiedad TpFIBDataset.Options tiene marcada por default la poRefreshAfterPost, que le indica que
despues de realizar el post refresque el registro.
Siendo
Transacion el componente TpFIBTransaction correspondiente.
Bueno eso sería...