FoxPro/Visual FoxPro - CONCURRENCIA!!

 
Vista:

CONCURRENCIA!!

Publicado por Ramses (8 intervenciones) el 10/10/2002 01:23:49
Hola a todos, espero me puedan ayudar.

Tengo un sistema desarrollado en VFP 5.0, en el cual existe un modulo que es ocupado por mas de una persona al mismo tiempo, el problema se hace grave cuando dichos usuarios intentan grabar al mismo tiempo ya que esto me provoca que los campos llave se dupliquen, alguien sabra como controlar esto para evitar que los datos se crucen??? no estoy manejando llaves primarias.

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:CONCURRENCIA!!

Publicado por TITO (356 intervenciones) el 10/10/2002 04:27:43
Es deficil en principio determinar que es lo que sucede. Todo se centra en la arquitectura de tu programa y a que se refieren los campo llaves, los campos llave por lo genral no son modificables. Tal vez cada usuario deberia tomar el recno() de la tabla a grabar posteriormente entonces despues de hacer los cambios preguntar si es el mismo recno() y si los valores que a ti te interesan (previamente guardados en una variable) han cambiado. La verdad es que hay varias formas de controlar eso, pero como te digo todo depende de la estructura de tu programa (NO MENCIONAS SI ESTAS ACTUALIZANDO O AGREGANDO UNA REGISTRO A LA TABLA)
Que te vaya bien
TITO
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:CONCURRENCIA!!

Publicado por ElSuperRo (98 intervenciones) el 10/10/2002 16:24:52
Sabes lo que pazzzaa enargentino

tienes que bloquear el registro, actualizar y luego desbloquearlo

if rlock()
appen blan
asdfasfd
endif
rlock()
revisa los comandos .. no recuerdo bien
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:CONCURRENCIA!!

Publicado por Ramses (8 intervenciones) el 10/10/2002 16:52:30
No funciona, ya lo intente....
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:CONCURRENCIA!!

Publicado por Hernan (13 intervenciones) el 10/10/2002 18:38:16
hola ramses, utliza el siguiente codigo en el boton guardar.

select xtabla
IF FLOCK() && INTENTA BLOQUEAR LA TABLA
APPEND BLANK
REPLACE CODIGO WITH X1
UNLOCK ALL
ELSE
APPEND BLANK
REPLACE CODIGO WITH X1
UNLOCK ALL
ENDIF

Este codigo bloquea la tabla guarda los datos y luego la libera para que otro usuario la utilize. Espero que te sirva.
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:CONCURRENCIA!!

Publicado por Ramses (8 intervenciones) el 10/10/2002 18:54:48
No funciona, ya lo intente asi y con rlock().....
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:CONCURRENCIA!!

Publicado por ElSuperRo (98 intervenciones) el 11/10/2002 02:47:45
estas indexando por el campo clave.
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