Extracto del help de VFP 9
"When you modify records in a table that is part of a transaction, other
users on the network do not have access (read or write) to the records
until you end the transaction.
When other users on the network try to access records you have modified,
they must wait until you end your transaction. They receive the message
"Record not available ... please wait" until the records become
available. Because of this, it is important to keep the length of the
transaction to a minimum or conduct the transaction during times when
others do not need access."
Esto significa que cuando envolvés las cosas en una transacción, los de
afuera no pueden modificar nada hasta que no cerrás la transacción con
End Transaction o la mandás para atrás con Rollback. Y fijate que dice
que tenés que abrir y cerrar la transacción lo más rápido posible, para
que los otros usuarios no se queden colgados esperando que vos la cierres.
Te paso el siguiente ejemplo del "Hacker's guide to Visual FoxPro 6.0"
de Tamar Granor y otros:
Example
* Save invoice header and details in a transaction.
* This is only a sketch of the real code, which would
* probably include various error checking and handling.
BEGIN TRANSACTION
lGoOn = .T.
SELECT header
IF NOT TABLEUPDATE()
lGoOn = .F.
ENDIF
IF lGoOn
SELECT detail
IF NOT TABLEUPDATE(.t.,.t.)
lGoOn = .F.
ENDIF
ENDIF
IF lGoOn
END TRANSACTION
ELSE
ROLLBACK
=TABLEREVERT(.f.,"header")
=TABLEREVERT(.t.,"detail")
ENDIF
Fijate que cuando hace el Rollback también le manda un Tablerevert a las
tablas que entraron en Buffering. Esto es porque el Begin Transaction es
una especie de buffering adicional al de cada tabla, que envuelve a
todas las otras que intervienen en la transacción. Cuando cerrás la
transacción con rollback, o sea, cuando hubo un error y no funcionó el
tableupdate, revertis cada una de las tablas.
Rafael Copquin
El 26/11/2014 19:17, Walter Comito escribió:
BEGIN TRANSACTION
END TRANSACTION
Amigos como estan
Tengo una duda, entre estos dos comandos necesito generar varios
numeros de articulos, que los tomo del numero mayor ingresado y a
continuacion de este numero genero los nuevos.
La pregunta es si otro usuario accede al mismo momento al mismo
procedimiento, primero genera los codigos del primer usuario y espera
que termine para que a continuacion genere los codigos de otro
usuario, o puede que se mezclen los numeros de ariculos?
Gracias.
*Walter Cómito*
Analista de Sistemas
MP 0397 C.P.C.I.P.C.
*>****[email protected] <mailto:[email protected]>*
***[email protected] <mailto:[email protected]>*
*'****+54 351 494.4667*
* 153.292.707*
**
*þ****www.softram.com.ar <http://www.softram.com.ar/>*
QSi no es necesario, no imprima este correo.
Todos somos responsables por el cuidado del medio ambiente.
*NOTA DE CONFIDENCIALIDAD*
Este mensaje (y sus anexos) es confidencial y puede contener
información de propiedad
exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este
mensaje por error,
por favor comuníquelo inmediatamente a _walter.comito
<mailto:[email protected]>[email protected] <http://gmail.com/>_ y
tenga la amabilidad
de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a
ninguna persona.
Muchas Gracias.
*De:*[email protected] [mailto:[email protected]] *En nombre de *Walter Comito
*Enviado el:* lunes, 17 de noviembre de 2014 11:02
*Para:* GUFA List Member
*Asunto:* [GUFA] Mensaje al ingresar a un Sistema en Red
Ese problema te sucede porque el lufar donde tenes instalado el
sistema esta de solo lectura.
Fíjate de compartir esta carpeta con todos los usuarios como lectura y
escritura.
Gracias.
*Walter Cómito*
Analista de Sistemas
MP 0397 C.P.C.I.P.C.
*>****[email protected] <mailto:[email protected]>*
***[email protected] <mailto:[email protected]>*
*'****+54 351 494.4667*
* 153.292.707*
**
*þ****www.softram.com.ar <http://www.softram.com.ar/>*
QSi no es necesario, no imprima este correo.
Todos somos responsables por el cuidado del medio ambiente.
*NOTA DE CONFIDENCIALIDAD*
Este mensaje (y sus anexos) es confidencial y puede contener
información de propiedad
exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este
mensaje por error,
por favor comuníquelo inmediatamente a _walter.comito
<mailto:[email protected]>[email protected] <http://gmail.com/>_ y
tenga la amabilidad
de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a
ninguna persona.
Muchas Gracias.
*De:*[email protected] [mailto:[email protected]] *En nombre de *Norberto
Mario Alvarez
*Enviado el:* viernes, 14 de noviembre de 2014 14:40
*Para:* GUFA List Member
*Asunto:* [GUFA] Mensaje al ingresar a un Sistema en Red
Estimados Colisteros, cada vez que se entra desde algunos puestos de
trabajos, no en todos, aparece este mensaje :
cid:[email protected]
Como puedo eliminarlo. Desde ya Muchas Gracias!!!
**
*Norberto Alvarez*
*Socio # 1892*
**