FoxPro/Visual FoxPro - no se guardan los datos

 
Vista:

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
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

no se guardan los datos

Publicado por Sebastian (244 intervenciones) el 12/07/2012 17:15:50
Hola la verdad no se porque el uso buffermode optimista en el form y el buffermode 5, pero creo que es mas facil guardarlos de esta manera y hasta ahora no tuve problemas.

Le hago la pregunta si dese grabar
IF messagebox("Desea grabar los registros",36,"Mensaje del Sistema")=6
SELEC tabla
APPEND blank
replace campo with thisform.text1.value
etc...
etc...
endif
Bueno espero te ayude de lo contrario esperemos a los bravos de la web
Suerte...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

no se guardan los datos

Publicado por Saul (728 intervenciones) el 12/07/2012 20:28:12
Se hace de esta forma para mantener la entidad relación.
Lo que pasa es que segun veo tienes tus tablaUpdate muy agrupados en cuanto a que si por ejemplo
por alguna razón no guardas algo en ctactec. no se guarda en en ninguno.



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")

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

no se guardan los datos

Publicado por Octavio (1 intervención) el 12/07/2012 22:56:24
SI...definitivanmente este es la forma mas segura de almacenar tus datos.

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar