Cuadros combinados en Access

Agradecería si pudieses contestarme:
Estoy haciendo una base de datos de clientes, en la cual al rellenar el cuadro combinado del municipio al que pertenece un cliente me salieran automáticamente en otro cuadro combinado los polígonos industriales relacionados con ese municipio para poder asignarle el suyo correspondiente. He estado intentándolo con la instrucción SELECT en SQL, pero no acaba de funcionar y no se si voy bien encaminado.
Gracias por anticipado.

2 respuestas

Respuesta
1
Bien, fácil fácil, ya verás...
Debes crear 3 tablas relacionadas de uno a muchos:
1º tabla = "Clientes"
2º tabla = "Municipios"
3º tabla = "Poligonos"
... donde un municipio puede tener muchos polígonos industriales y un polígono puede tener muchos clientes.
En la tabla Clientes debes añadir el IdPoligono como campo numérico haciendo referencia a la clave de la 3ª tabla. En la tabla 3ª añades el campo IdMunicipio numérico para la 2ª tabla. ¿OK?
Ahora en el formulario de altas de clientes añades un cuadro combinado (lo llamaremos ListaMunicipios) para los municipios con la consulta siguiente como origen de la fila:
SELECT Municipios.IdMunicipio, Municipios.Municipio FROM Municipios
Perfecto...
Y luego le crearemos un procedimiento de evento pero antes crearemos el cuadro combinado para los polígonos industriales (lo llamaremos ListaPoligonos) con origen de la fila:
SELECT Poligonos.IdPolg, Poligonos.Poligono, Poligonos.IdMunicipio FROM Poligonos
Y muy importante... el origen del control es IdPoligono (para que guarde el valor en la tabla Clientes)
Luego ve a ListaMunicipios y en el evento "Después de Actualizar" crea un procedimiento de evento como antes dije. En el editor de VBA insertamos:
Private Sub ListaMunicipios_AfterUpdate()
ListaPoligonos.RowSource = "SELECT Poligonos.IdPolg, Poligonos.Poligono, Poligonos.IdMunicipio FROM Poligonos WHERE ((Poligonos.IdMunicipio)=[ListaMunicipios])"
End Sub
Para terminar, borra la sentencia SQL del cuadro ListaPoligonos.
Respuesta
1
Antes de seguir, me gustaría que me relacionases los campos que utilizas en las tablas "clientes" y "polígonos", así como el tipo de campo que usas para relacionarlas.
Posiblemente, haya algún error en el diseño de las tablas que te dificulta el poder relacionarlas adecuadamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas