Relación entre tablas según dato

Mi problema es ubicar equipos en lugares de diferentes tipos y según este especificar más o menos datos del lugar. Tengo una tabla con los modelos de equipos. Por otro lado una tabla con lugares tipo A, otra con lugares tipo B y otra con lugares tipo C, cada una con 3, 4 y 5 campos respectivamente. La asociación de un equipo con un lugar determinado la almaceno en una tabla nodo donde tengo un campo que me especifica el tipo de ubicación. Esta tabla nodo es la que engancho a un formulario donde presento un desplegable con los tipos de ubicaciones y al elegir uno (A, B o C) se me presentan 3,4 o 5 desplegables para especificar el
lugar concreto, a continuación con otro desplegable elijo el equipo que hay en ese lugar.
Esto es lo primero que se me ha ocurrido pero a la hora de hacer las relaciones entre tablas encuentro muchos problemas, así que
opte por implementarlo mediante código. Esto me ha llevado a tener que arrastrar el código cada vez que quería presentar la ubicación
de un equipo en otros formularios o informes, ralentizándose todo.
Creo y espero que se pueda implementar todo esto mediante tablas y consultas bien relacionadas, pero no tengo conocimientos de teoría de base de datos como para hacer diagramas E-R y luego traducirlos a Access. Agradezco todo tipo de ayuda. Gracias por adelantado y espero haberme explicado bien y sin aburrir mucho.

1 Respuesta

Respuesta
1
Te has explicado correctamente.
Efectivamente, para comenzar de una forma optima tu aplicación, lo primero que debes definir son las estructuras de las tablas, así como sus diagramas y/o relaciones.
En tu caso concreto existen dos tablas principales:
Equipos (IdEquipo, Descripción, etc.)
Lugares (IdLugar, Dirección, IP, etc.)
Y una tabla que sirve de unión entre ambas:
Equipos Lugares (IdEquipo, IdLugar)
Las Tablas deben tener una clave primaria (primaryKey) que identifique los registros de forma única, y la tabla que sirve de unión, debe tener una clave primaria compuesta por los campos únicos de cada una de las tablas a unir.
Supongo que esta estructura la has realizado así.
Ahora bien, cuando te dispones a diseñar los formularios y/o los informes para manejar la información o mostrarla, tienes que conocer como tienes montada esta estructura, cosa que creo que tienes muy clara.
En concreto, para tu aplicación, deben existir, al menos, tres formularios:
Mantenimiento de Equipos (altas, bajas, modificaciones, consultas)
Mantenimiento de Lugares.
Y el tercer formulario, que puede formar parte de un formulario principal, actuando como subformulario de este.
Me explico, en el Mantenimiento de Lugares, por ejemplo, puedes colocar perfectamente el subformulario compuesto con los datos de unión, en este subformulario, lo único que debes hacer es vincular los campos con identificativo común. El resto consiste en dar funcionalidad a los objetos de los formularios.
Entre mis respuestas, puedes encontrar bastantes ejemplos, de esto último.
Otro consejo que me voy a permitir darte, es que utilices un método para tu sistema, pierde un poco de tiempo, y plantéate un método a seguir. Una vez hayas creado este, el resto es coser y cantar.
Por último, indicarte que para mostrar información existente, o con redundancia, debes utilizar métodos de búsqueda. Emplea dlookup en el subformulario, para mostrar descripciones y otros campos de la tabla de equipos, ya que la relación principal ya te muestra el identificador.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas