FoxPro/Visual FoxPro - Problemas con clves en multiusuario

 
Vista:

Problemas con clves en multiusuario

Publicado por Francisco Rodriguez (33 intervenciones) el 12/03/2004 01:21:53
Hola,.

Tengo una llave primaria en mi tabla la cual es numerica consecutiva . El problema es que al correr multiusuario el valor numerico de mi tabla cambia. Por ejemplo al momento de agregar, ya que puede encontrarse el segundo usuario con el mismo valor..

Alguien podria decirme como puedo tratar este problema?
Mil 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:Problemas con clves en multiusuario

Publicado por Raul (4 intervenciones) el 12/03/2004 01:37:32
En la linea que tu codigo va a agregar un nuevo registro utiliza :
SET REPROCESS TO AUTOMATIC
y al momento de :
APPEND BLANK o INSERT INTO
Colocas un RLOCK(mitabla,registro)

Registro siginifica la cantidad de registros que bloquearas (1,2,.. o mas)

Espero te ayude

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

RE:Problemas con clves en multiusuario

Publicado por Francisco Rodriguez (30 intervenciones) el 12/03/2004 01:56:22
Bueno, sucede que cuando el usuario A checa la tabla contador, esta tiene 2 y agrego registros en la tabla de datos (clientes por ejemplo), pero sucede que el usuario B tambien entro con el mismo valor de la tabla contadores (2) y al momento de decirle "guardar cambios?" para hacerle tableupdate(.t.) sucede que Aya uso esa clave..

ese es el problema y no se como manejarlo.
La otra es quitarle la clave primaria, pero creo que seria de gran ayuda en el futuro. Como podria hacerlo?
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:Problemas con clves en multiusuario

Publicado por m@rcos (190 intervenciones) el 12/03/2004 02:09:01
hola francisco

depende de como encares tu programacion, trabajas directamente sobre tu tabla o recien al grabar los cambios actualizas los datos en tu tabla????

seguramente tenes un contador sobre en text, si es asi, podes ejecutar tu contador automaticamente al grabar el registro, por ejemplo:

en el boton grabar:
calculate max(codigo) to numero
insert into (blablabla) values(blablabla)
=tableupdate(.t.)
esto lo que hara es calcular el ultimo numero de tu tabla y asignarle el siguiente en el momento de grabar los datos, y sin que te emita el mensaje de unicidad de indice

espero que te ayude, pero depende de como programes!!!
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:Problemas con clves en multiusuario

Publicado por Francisco Rodriguez (33 intervenciones) el 12/03/2004 19:02:18
oigan, podrian pasarme un ejemplo?
no se porque me marca problemas con la unicidad de las clave.
de hecho solo tengo un grid y tiene un boton agregar, pero tengo pocos conocimientos de vfp.

mil gracias de antemano.
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