no se guardan los datos
Publicado por alberto (404 intervenciones) el 12/07/2012 05:12:07
Tengo el incoveniente que en algunos dias no se ejecuta bien el tableupdate de mi form de fcturas , uso buffermode optimista en el form y el buffermode 5 en las tablas en el entorno de datos , este el es codigo cuando grabo:
BEGIN TRANSACTION
lActualizo = TABLEUPDATE(.T.,.T.,"contado") .AND. TABLEUPDATE(.T.,.T.,"ventas1") .and. TABLEUPDATE(.T.,.T.,"idordenes1")
lActualizo1= TABLEUPDATE(.T.,.T.,"ctactec") .AND. TABLEUPDATE(.T.,.T.,"detaventas1") .and. TABLEUPDATE(.T.,.T.,"detaventas2")
lActualizo2= TABLEUPDATE(.T.,.T.,"idordenesa")
IF lActualizo AND lActualizo1 AND lActualizo2 THEN
MESSAGEBOX("Transacción realizada.", 0)
END TRANSACTION
ELSE
ROLLBACK
MESSAGEBOX( "Uno o más de las tablas no fueron actualizadas, Cancelación de la transacción.",0+16,"Error")
TABLEREVERT(.T.,"contado")
TABLEREVERT(.T.,"ventas1")
TABLEREVERT(.T.,"idordenes1")
TABLEREVERT(.T.,"ctactec")
TABLEREVERT(.T.,"detaventas1")
TABLEREVERT(.T.,"detaventas2")
TABLEREVERT(.T.,"idordenesa")
flush
RELEASE thisform
ENDIF
flush
la factura en ese momento se graba bien porque sale impresa con los datos de la tabla , pero se ve que cuando salen del sistema y entran de nuevo ya no estan , que puedo mejorar en el codigo ?
este lo hace de ves en cuando , no siempre .
uso dbf
gracias
BEGIN TRANSACTION
lActualizo = TABLEUPDATE(.T.,.T.,"contado") .AND. TABLEUPDATE(.T.,.T.,"ventas1") .and. TABLEUPDATE(.T.,.T.,"idordenes1")
lActualizo1= TABLEUPDATE(.T.,.T.,"ctactec") .AND. TABLEUPDATE(.T.,.T.,"detaventas1") .and. TABLEUPDATE(.T.,.T.,"detaventas2")
lActualizo2= TABLEUPDATE(.T.,.T.,"idordenesa")
IF lActualizo AND lActualizo1 AND lActualizo2 THEN
MESSAGEBOX("Transacción realizada.", 0)
END TRANSACTION
ELSE
ROLLBACK
MESSAGEBOX( "Uno o más de las tablas no fueron actualizadas, Cancelación de la transacción.",0+16,"Error")
TABLEREVERT(.T.,"contado")
TABLEREVERT(.T.,"ventas1")
TABLEREVERT(.T.,"idordenes1")
TABLEREVERT(.T.,"ctactec")
TABLEREVERT(.T.,"detaventas1")
TABLEREVERT(.T.,"detaventas2")
TABLEREVERT(.T.,"idordenesa")
flush
RELEASE thisform
ENDIF
flush
la factura en ese momento se graba bien porque sale impresa con los datos de la tabla , pero se ve que cuando salen del sistema y entran de nuevo ya no estan , que puedo mejorar en el codigo ?
este lo hace de ves en cuando , no siempre .
uso dbf
gracias
Valora esta pregunta


0