Biblioteca con entradas y salidas

Estoy haciendo una base de datos en access con idea de controlar quien tiene un libro en cualquier momento. He hecho un formulario en el que he puesto un grupo de opciones: "ocupado" y "no ocupado" y ademas cuando se selecciona "ocupado" se activa un cuadro combinado con el nombre de todas las personas que tienen acceso a los libros, que están recogidas en una tabla. Y al hacer esto es cuando se me presenta el problema: ponga lo que ponga ocurren dos cosas; una, que lo que modifico de ese grupo de opciones de modifica en todos los libros, y dos, que cuando salgo a otro de los menús y vuelvo a entrar ha desaparecido la modificación y esta en la opción prefijada. ¿Qué es lo que me falta? ¿Qué tengo que modificar?

1 respuesta

Respuesta
1
Deberías replantear la estructura de tus tablas.
La aplicación debe tener una tabla con toda la información de Libros. Esta tabla debe tener un identificador único para cada libro.
Igualmente, la aplicación tiene que tener una tabla con los usuarios que usan libros de la biblioteca. Esta tabla, igualmente, debe tener un identificador único para cada usuario.
Y por último debe existir una tercera tabla, con información de los libros que retira cada usuario y en que fecha se han devuelto. En esta tabla debe aparecer el identificador del usuario, y tantos identificadores de libros como se halla llevado.
Supongo que el la tabla de libros, existe un campo Bit (Si/no) para el dato relativo a ocupado/no ocupado, que se activa cuando un usuario retira un libro.
Si todo esto es así, en el formulario donde controlas los libros, existirá un subformulario, donde están todos los usuarios que tienen ese libro (para el caso de que exista más de un ejemplar por cada titulo). O por el contrario, se mostrará el campo de ocupado/no ocupado como un cuadro de selección o un check box, donde se marca o desmarca y cuyo origen de control es el campo correspondiente de la tabla libros.
Si esto sigue siendo así, cuando se modifique en el formulario, se modificará a su vez en la tabla de libros, y nada de lo que comentas ocurriría. Si por el contrario el campo de ocupado/no ocupado en el formulario, es un campo independiente, te faltan acciones por completar, ya que al modificar este campo, debería modificarse el campo de la tabla, justamente en el evento después de actualizar de ese campo independiente.
Ademas comentas que cuando modificas uno se modifican todos, esto ocurre porque el origen de datos de ese campo esta cogiendo más de un registro, utiliza campos independientes para este tipo de acciones.
En cualquier caso, si quieres que realice una revisión exhaustiva de este formulario, puedes enviarme la base de datos por correo a la dirección: [email protected] y gustosamente te echaré un cable.
Gracias Sofocles, he conseguido resolver mi problema con tu ayuda. Quizás lo he hecho de una forma poco ortodoxa pero ha sido clave lo del campo independiente. No dejes de leer una siguiente duda que se me plantea para conseguir una base de datos un poco más completa. Un saludo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas