Relaciones de tablas
Supongo que mi pregunta será muy sencilla pero hace mucho que o toco access y me está costando.
Se trata de relacionar varias tablas:
1ª Padres, sus datos y como clave principal NIF
2ª Hijos, relacionados mediante el NIF con cada padre, puede haber varios nombres iguales de hijos, pero no si son de un mismo NIF (es decir, un padre no puede tener dos hijos con el mismo nombre)
3ª Actividades (este es el problema) Cada hijo puede estar apuntado a varias actividades.
La estructura del formulario es:
Padres ->subformulario hijos->subformulario actividades
En un principio creé un código de control que llamé cod_control:
- Al cambiar el nombre de un niño: cod_control=nif+nombre_niño
Y relacionaba la base dos con la 3 de esta forma, ambas con un cod_control. Funcionaba.
El problema es que se cambie el NIF del padre, no me actualizaba el cod_control de los subformularios. Poniendo en un afterupdate en el campo NIF de padres que me actualizase los campos cod_control solo conseguí actualizar el del subformulario hijos, pero no el de actividades.
Así que eliminé el cod_control, añadí el campo nif también a las actividades y cree una relación HijosNIF-> ActividadesNIF e HijosNombre->actividadesNombre
Ahora si cambio el nif en Padres me lo cambia en Hijos (si entro en el formulario) pero pierdo la conexión con Actividades.
Y ahí me pierdo, creo que lo estoy liando más de lo que es, a ver si me puedes echar una mano.
En Padres NIF -> indexado sin duplicados
En hijos y actividades nif->indexado con duplicados y nombre_hijo-> indexado con duplicados y me crea una relación indeterminada.
El problema es que metan mal un nif, me lo tengan que corregir y desaparezcan los hijos y las actividades.
Te pongo una imagen de como tengo ahora las relaciones y los formularios:
http://s299204700.mialojamiento.es/tablas.jpg
http://s299204700.mialojamiento.es/form.jpg
Se trata de relacionar varias tablas:
1ª Padres, sus datos y como clave principal NIF
2ª Hijos, relacionados mediante el NIF con cada padre, puede haber varios nombres iguales de hijos, pero no si son de un mismo NIF (es decir, un padre no puede tener dos hijos con el mismo nombre)
3ª Actividades (este es el problema) Cada hijo puede estar apuntado a varias actividades.
La estructura del formulario es:
Padres ->subformulario hijos->subformulario actividades
En un principio creé un código de control que llamé cod_control:
- Al cambiar el nombre de un niño: cod_control=nif+nombre_niño
Y relacionaba la base dos con la 3 de esta forma, ambas con un cod_control. Funcionaba.
El problema es que se cambie el NIF del padre, no me actualizaba el cod_control de los subformularios. Poniendo en un afterupdate en el campo NIF de padres que me actualizase los campos cod_control solo conseguí actualizar el del subformulario hijos, pero no el de actividades.
Así que eliminé el cod_control, añadí el campo nif también a las actividades y cree una relación HijosNIF-> ActividadesNIF e HijosNombre->actividadesNombre
Ahora si cambio el nif en Padres me lo cambia en Hijos (si entro en el formulario) pero pierdo la conexión con Actividades.
Y ahí me pierdo, creo que lo estoy liando más de lo que es, a ver si me puedes echar una mano.
En Padres NIF -> indexado sin duplicados
En hijos y actividades nif->indexado con duplicados y nombre_hijo-> indexado con duplicados y me crea una relación indeterminada.
El problema es que metan mal un nif, me lo tengan que corregir y desaparezcan los hijos y las actividades.
Te pongo una imagen de como tengo ahora las relaciones y los formularios:
http://s299204700.mialojamiento.es/tablas.jpg
http://s299204700.mialojamiento.es/form.jpg
1 respuesta
Respuesta de xavi -ae soft-
1