FoxPro/Visual FoxPro - Sobre transacciones, duda ???

 
Vista:

Sobre transacciones, duda ???

Publicado por Fabricio (2 intervenciones) el 09/08/2005 06:19:01
Que tal compañeros, mi duda es con respecto a manejar varias actualizaciones de tablas (ambiente DBC) dentro de BEGIN TRANSACTION, ¿debo hacerle un CURSORSETPROP("buffering",5) a cada tabla?, script ejemplo:

*** METODO SUPERIOR (click de boton procesar por ejemplo):

OPEN DATABASE XXX
SET MULTILOCKS ON

BEGIN TRANSACTION

IF !THISFORM.SALVAR_ENCABEZADO()
ROLLBACK
=Messagebox("error.....
RETURN .F.
ENDIF

IF !THISFORM.SALVAR_DETALLE()
ROLLBACK()
=Messagebox("error.....
RETURN .F.
ENDIF

END TRANSACTION

***** PROCEDIMIENTO SALVAR_ENCABEZADO()

USE Tabla1
=CURSORSETPROP("buffefing",5)
REPLACE .....
var_control = TABLEUPDATE(.T.)
IF !var_control
RETURN .F.
ENDIF
******
Les agradeceria me confirmaran o corrigieran, 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

RE:Sobre transacciones, duda ???

Publicado por Foxperto (894 intervenciones) el 09/08/2005 17:14:26
Hola Fabricio:

El codigo parece estar bien.

La diferencia entre el CURSORSETPROP 3 y 5, es que 3, es cuando vas a modificar una sola linea (Ej. Encabezados de Factura) y 5 cuando son varias lineas (Ej. Lineas de una factura).

Otra cosa, no estoy seguro de que puedas abrir una tabal dentro de una transaccion, creo que ya deben venir abiertas.

Prueba y me cuentas.

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

RE:Sobre transacciones, duda ???

Publicado por Fabriciofox (2 intervenciones) el 09/08/2005 19:46:52
Muchas gracias Foxperto, me queda claro.
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