Access - Cómo hacer que en un cliente pueda meter más de una dirección

   
Vista:
Imágen de perfil de Lara

Cómo hacer que en un cliente pueda meter más de una dirección

Publicado por Lara (2 intervenciones) el 19/01/2017 13:37:56
Hola a todos!

En primer lugar gracias por vuestra ayuda. He estado buscando cómo realizar lo que quiero y no soy capaz, la verdad es que soy muy mala en Acces y conozco lo súper básico.

Lo que quiero es crear un formulario en donde salgan los datos de cada cliente (es muy sencillo). He creado una tabla de empresas con todos los datos que quiero de la empresa. El problema está en que cada cliente tiene varias direcciones, varios teléfonos y varios mails. Mi primera opción fue crear una sola tabla con todos los elementos (empresa, contacto, telf1, telf2, telf3, telf4, mail1 mail2, mail3, mail4.... y demás campos) pero con la dirección no quería poner calle1/calle 2, cp1/cp2 etc. No se si me explico...

Así que pensé crear otra tabla de direcciones (y relacionarla con la tabla empresas a través de un campo numérico) pero a la hora de crear el formulario no consigo lo que quiero. He intentado hacer un formulario con subformulario, pero no consigo nada :(

Lo que quiero realmente es poder ir metiendo los datos de las empresas y ponerles dos o más direcciones diferentes. Os dejo una foto del formulario que querría tener. Creo que es una cosa sencilla y que me estoy volviendo loca sin motivo.. pero vosotros diréis.

La base de datos la quiero para tener un registro de clientes (y poder hacer consultas) No hay pedidos, ni facturas ni nada más.

Estos son los datos que necesito que estén:

Nombre empresa
Persona contacto
Sector (lookup)
Teléfono 1
Telefono 2
Teléfono 3
Teléfono 4
Mail 1
Mail 2
Mail 3
Mail 4
Web
Dirección 1 (calle, localidad, cp, provincia, pais)
Direccion 2 (calle, localidad, cp, provincia, pais
Notas
Asociados

Muchísimas gracias a todos por la paciencia!!!
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
Imágen de perfil de Neckkito

Cómo hacer que en un cliente pueda meter más de una dirección

Publicado por Neckkito (1146 intervenciones) el 22/01/2017 19:13:20
Hola!

Ciñéndome exclusivamente a lo que pides, lo que tienes que hacer es:

1.- Crea una tabla (llamémosle TEmpresas), con los campos que quieras menos las direcciones. Es muy importante que en esa tabla tengas un primer campo que sea un [IdEmpresa] autonumérico.

2.- Crea una segunta tabla (llamémosle TEmpresasDirecciones). Como primer campo añades un campo [IdDir], autonumérico, y un segundo campo [IdEmpresa], numérico. A continuación le pones los campos que necesites.

3.- Créate, sobre la tabla TEmpresasDirecciones, un formulario del tipo "Formulario Continuo" (Varios elementos). Llamémosle subFrmEmpresasDirecciones

4.- Créate, sobre la tabla TEmpresas, un formulario del tipo "Formulario". Llamémosle FEmpresas

5.- En FEmpresas añades un control subformulario. Cuando te aparezca el asistente le dices que quieres utilizar un formulario existente, que será subFrmEmpresasDirecciones. Cuando llegues a la pantalla para enlazar los campos entre formulario y subformulario fíjate que te diga que enlaza [IdEmpresa] del formulario con [IdEmpresa] del subformulario. Si no lo hace así marcas la opción "Definir la mía propia" y seleccionas esos dos campos en los desplegables correspondientes.

Y listo.

Saludos,

Neckkito
http://bit.ly/neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Lara

Cómo hacer que en un cliente pueda meter más de una dirección

Publicado por Lara (2 intervenciones) el 23/01/2017 10:36:30
Muchísimas Gracias Neckkito!

He seguido todos tus pasos y me ha salido todo perfect! Nunca había usado un formulario continuo, tendré que investigar un poco. El curso que hice era muy básico.
Lo único que no he entendido es por qué no tengo que relacionar las dos tablas por IdEmpresa antes de hacer los formularios... pero bueno ya está solucionado :)

Muchas gracias de nuevo!
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
Imágen de perfil de Neckkito

Cómo hacer que en un cliente pueda meter más de una dirección

Publicado por Neckkito (1146 intervenciones) el 23/01/2017 11:20:26
Hola!

Las relaciones en Access pueden ser implícitas o explícitas.

No hay inconveniente alguno en que las relaciones explícitamente a través de la ventana de relaciones. Si lo haces así, además, podrás exigir integridad referencial y configurar a tu gusto las actualizaciones y eliminaciones en cascada.

Para no entrar en mucho "rollo" el sistema que te propuse realmente establece una relación por [IdEmpresa] entre ambas tablas, pero lo hace implícitamente a través de la configuración de los campos de relación entre formulario y subformulario.

Hay expertos que lo relacionan todo explícitamente; hay otros que no relacionan nada. Con ello no quiero decir que los segundos no establezcan relaciones, sino que las establecen implícitamente usando diversos sistemas, ya sea como lo has hecho tú (form/subform) ya sea a través de código VBA.

En definitiva, que según la utilidad que quieras obtener te decantas por un sistema u otro, o por una mezcla de ambos. Yo no soy quién para decir cuál es mejor, dado que he visto el uso de ambos sistemas en gente que sabe mucho de esto.

Espero haberte aclarado un poco las ideas.

Un saludo,

Neckkito
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