Forma de proteger registros en una red local mientras un Operador esta trabajando.

Tengo una red local y tengo problemas cuando un operador esta trabajando y otro intentan entrar en el mismo proceso que esta abierto en otro puesto de trabajo aunque sea otro registro de la tabla.

He entrado en Opciones de Access -> Configuración de Cliente -> Bloqueo predeterminado y no se exactamente en que apartado he de marcar o bien si he de hacerlo en otro lugar.

Os agradecería si me pudieseis indicar la forma de hacerlo.

2 respuestas

Respuesta
1

José este es uno de los problemas de utilizar Access como uso compartido en un servidor, cuando abre un formulario vinculado Access bloquea "una página de registros" y es posible que reciba el mensaje "Otro usuario modificó...". Para evitar esto debe tratar en lo posible trabajar con formularios independientes y actualizar con UPDATE y adicionar con INSERT.

Ahora, si quiere algo más robusto le recomiendo utilizar como back end PostgreSQL, (mi preferido), con este servidor de datos no tendrá problemas por usuarios concurrentes y muchos otros por limitaciones de Access, además, ya ha recorrido el camino para migrar su base de datos a Linux, OS o la nube (Tengo un video en YouTube).

(274) Access en la Nube con PostgreSQL y Cloud Clusters - VIDEO 1 - YouTube

Si quiere más información me puede escribir a [email protected] 

Aclaro Access bloquea por página solo en versiones 2003 y anteriores, no sé qué versión utiliza.

Trabajo con la version: Access 2007 - 2013 y los problemas que estoy teniendo es que cuando dos operadores entran en la base aunque estén en procesos diferentes me esta dando problemas con deterioro de datos.

Tengo la base en modo compartido.

¿Lo qué me cuentas de PostgreSQL habría que reformar toda la programación y reescribirla de nuevo?

Tenga mucho cuidado, si utiliza distintas versiones de Access para conectarse con el servidor, no se le haga extraño, que en cualquier momento reciba el mensaje, "Otro usuario puso la base de datos en estado,,,,, o algo parecido" y su base de datos no sea accesible, es decir se daña.

Si tiene un buen diseño de sus tablas de Access se puede exportar la información a PostgreSQL, no obstante, cambia la forma de acceso a la información pero le sirven en parte los formularios y reportes, en mi caso no utilizo tablas vinculadas, todo lo hago desvinculado mediante ADODB, esto permite no sobrecargar el servidor, evita conflictos de concurrencia y muchas cosas que se pueden controlar desde el PostgreSQL. Una de las ventajas es que ya tiene su base de datos para migrar a otra plataforma, linux, mac o en la nube como muestro en mi video.

Si no tiene información confidencial y me hace llegar su base datos pruebo la migración a PostgreSQL. Puede enviarla a [email protected] 

Tenga en cuenta que debe aprender PostgreSQL de lo contrario no podrá administrar su base de datos, pero vale la pena es otro mundo, deje Access como Front End que es excelente para el diseño de reportes y otras cosas, pero no es el recomendado para un entorno multiusuario. Ahora, si quiere hacer una prueba envíeme su correo y le suministro un ejemplo de para que se conecte en la nube con mi servidor desde una Access.

mi correo es: [email protected] tambien te escrito directamente para que me mandes una prueba de : PostgreSQL 

Le envíe por wetransfer el ejemplo.

Respuesta
1

Para poder compartir datos, quien ceda los datos ha de estar en modo 'compartido'.

Access solo bloqueaba los datos compartidos 'por página' en las versiones anteriores a la 2000, a partir de ese momento solo bloquea el registro que este en edición.

La mayor parte de acceso a los datos suele ser para utilizarlos en modo lectura (no para crearlos) y las actualizaciones bien programadas no son un problema (hay literatura al respecto).

Todas las bases de datos están creadas con cualidades para un entorno determinado y no existe ninguna que se adapte como un guante a todos y menos que cualquiera de ellas sea infalible.

Lo único 'infalible' siempre es y ha sido la copia de seguridad, algo que hacen de forma automática casi todos los entornos (y más los que están 'en la nube') y que se puede programar en Access.

El 'salto' entre bloquear por página a bloquear por registro se efectúo entre la versión de Access 97 y la versión de Access 2000, entre Access 2003 y Access 2007 hubo cambios de otro tipo y (como siempre, al ritmo de pares e impares) la versión 'buena' es la siguiente (Access 2010), tras ella ... más bien se pasó de licencia por paquete a licencia por usuario.

La historia está escrita (y más de un lector la habrá vivido).

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas