FoxPro/Visual FoxPro - sistema en red

 
Vista:

sistema en red

Publicado por Gabriela (83 intervenciones) el 29/10/2002 23:29:10
Hola a todos, pues tengo una pregunta que hacerles, tengo un sistema que se maneja en red,(yo no lo hice) el sistema al grabar manda llamar una funcion que se supone bloquea los registros, pero no creo que lo haga ya que ultimamente se a cruzado informacion al grabar, no es siempre, pero lo que me pidieron haga para evitar estos problemas es que perminta grabar a todos al mismo tiempo pero la informacion se quede en cola para grabar, no se si esto sea pocible, o alguien podria darme alguna idea o ejemplo de como hacerlo.

Gracias de antemano.
Saludos.
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:sistema en red

Publicado por Walter (76 intervenciones) el 30/10/2002 05:25:25
Hay varias soluciones posibles, dependiendo de la necesidad de tener la información cargada en línea, una de ellas es:

- Cada usuario trabaja con una copia temporal de la/s tabla/s de datos (puedes utilizar la función Sys(3) para que tengan nombres únicos). Luego agregas todas estas tablas temporales a la tabla principal (y vacías las tablas temporales).
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
sin imagen de perfil

RE:sistema en red

Publicado por DALSOM (612 intervenciones) el 30/10/2002 21:04:14
SI TIENES LOS CODIGOS FUENTES, BUSCA LA FUNCION QUE TE BLOQUEA LAS TABLAS, Y VERIFICA QUE USE LA FUNCION RLOCK() Y EL COMANDO UNLOCK PARA DESBLOQUEAR Y BLOQUEAR REGISTROS, TAMBIEN HAZ SET MULTILOCK ON, Y EL SET REPROCESS TO 1 PARA QUE SOLO HAGA UN INTENTO DE BLOQUEO.

EN TU SISTEMA, PRIMERO CAPTURA LA INFORMACION, LUEGO INTENTA BLOQUEAR EL REGISTRO, Y LO LOGRAS, ENTONCES GRABAS. ES SIMPLE.

SI TIENES QUE GUARDAR UNA SECUENCIA, HAY DOS MANERAS DE OBTENERLAS,

1 ES ORDERNANDO LA TABLA POR LA SECUENCIA, YENDO AL ULTIMO REGISTRO, BLOQUEARLO Y SUMARLE 1 A LA SECUENCIA, AÑADIR EL REGISTRO EN BLANCO CON EL NUMERO DE LA SECUENCIA SIGUIENTE.

2. CREANDO UN ARCHIVO DE SECUENCIAS, EN DONDE BLOQUEAS EL REGISTRO DE LA TABLA QUE LLEVARA LA SECUENCIA, AÑADES LA SECUENCIA NUEVA, Y LA DESBLOQUEAS, PARA GRABAR INMEDIATAMENTE, NO IMPORTA QUE UNO GRABE ANTES O DESPUES, CUANDO LO ORDENES POR LA SECUENCIA, QUEDARAN ORDENADOS.

SALUDOS, DALSOM.
REP. DOMIMINICANA.
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:sistema en red

Publicado por gabriela (83 intervenciones) el 31/10/2002 01:33:03
gracias. lo voy a revisar y si tengo alguna duda se los comento.

Saludos.
Gabriela Alonso
Monterrey, Mexico.
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