PDF de programación - Combos en cascada en un Formulario Continuo (primera parte)

Imágen de pdf Combos en cascada en un Formulario Continuo (primera parte)

Combos en cascada en un Formulario Continuo (primera parte)gráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 20 de Diciembre del 2017)
1.290 visualizaciones desde el 20 de Diciembre del 2017
305,7 KB
7 paginas
Creado hace 9a (29/07/2014)
Combos en cascada en un Formulario Continuo (primera parte)



Vamos a hacer un ejercicio para poner los combos en cascada (que el segundo combo
solo pueda tomar los valores que pertenecen al primero) en un formulario continuo
(tomado de la forma clásica de Marius)

Comencemos creando una base de datos de entrada de almacén, para ello necesitamos
tener como mínimo tres tablas, dos para los combos, la primera de Modelos y la otra de
Colores y una tabla extra para crear el formulario de Entrada de Almacén.



Hacemos la primera tabla que llamaremos tblModelos con solo dos campos el id y
Nombre como en la parte de arriba y la segunda que llamaremos tblColores de la
siguiente forma:

Podemos observar que modelo es numérico, está basado en la tabla anterior y lo
hacemos con el asistente para búsqueda:

Nos abre una ventana y seleccionamos: Deseo que campo de búsqueda busque los
valores en otra tabla o consulta, seleccionamos la tabla tblModelos después los dos





campos y aceptar hasta terminar y después nos dice que si guardamos, pues las
relaciones cambiaron y le damos aceptar, esto nos sirve para que la tabla me ponga un
combo con los valores de texto de la tabla modelo y además, sí creamos un formulario en
automático nos pone el control como combo. Desde luego que lo podemos hacer
poniendo los combos y estableciéndolos en origen del control, pero si Access lo hace por
nosotros ¡Qué mejor!

Rellenamos las dos tablas más o menos así:

Ahora vamos a hace la tabla tblAlmacen con 4 campos, observemos que los campos
Modelo y Color los hacemos igual con el asistente para búsqueda y seleccionamos sus
tablas respectivas y cuando nos pide guardar lo hacemos





Vamos a ver cómo han quedado las relaciones de nuestras tablas y deberíamos de tener
algo como esto:

Pero si observamos en la tblAlmacen Modelo está relacionado en la tblModelos con el Id,
puesto que agregamos la relación para crear el combo en la tabla tblAlmacen y en
realidad no la necesitamos, por tanto la borramos haciendo doble click sobre la línea y
dándole a suprimir o del, quedando así:

Una vez aquí, vamos a hacer nuestro formulario con el asistente para formulario,
escogemos la tblAlmacen y agregamos todos los campos y en seguida escogemos la
tabla tblColores y escogemos solo el campo Colores y tenemos algo como esto:





Le damos click en siguiente, de nuevo siguiente, tabular y siguiente hasta terminar cuando
nos dice que nombre le asignamos le decimos frmAlmacen y que lo abra para poderlo ver.





Comenzamos a agregar los primeros datos y nos damos cuenta que si seleccionamos
Sandero solo me debería dar los 3 primeros (Verde, Rojo Y Azul), así que ponemos el
formulario en vista diseño y nos vamos a propiedades del combo Modelo y en nombre se
lo cambiamos a cboModelo, ahora seleccionamos el combo Color y en origen de la fila le
damos a los 3 puntos del lado derecho, y nos abre el generador de consultas agregamos
el campo modelo y en criterios [cboModelo] y cerramos y aceptamos los cambios:





De vuelta en propiedades en origen de la fila del combo Color copiamos toda la línea en
un Word que se verá como esto:

SELECT tblColores.Id, tblColores.Colores, tblColores.Modelo FROM tblColores WHERE
(((tblColores.Modelo)=[cboModelo]));

Y le agregamos lo que está en rojo:

Me.Color.RowSource = "SELECT tblColores.Id, tblColores.Colores, tblColores.Modelo
FROM tblColores WHERE (((tblColores.Modelo)=[cboModelo]));"

En origen de la fila podemos borrar todo lo que tenía y en el evento Al entrar le damos a
los 3 puntitos y generar código lo agregamos quedando así:

Private Sub Color_Enter()

Me.Color.RowSource = "SELECT tblColores.Id, tblColores.Colores, tblColores.Modelo
FROM tblColores WHERE (((tblColores.Modelo)=[cboModelo]));"



End Sub

Nos vamos al cboModelo y en el evento después de actualizar agregamos lo mismo

Private Sub Modelo_AfterUpdate()

Me.Color.RowSource = "SELECT tblColores.Id, tblColores.Colores, tblColores.Modelo
FROM tblColores WHERE (((tblColores.Modelo)=[cboModelo]));"

End Sub

Ahora solo nos falta poner el control Colores arriba de Color, pero podemos jugar para
que aprecien para que sirve Color. Y comenzar a cargar el formulario.
  • Links de descarga
http://lwp-l.com/pdf7977

Comentarios de: Combos en cascada en un Formulario Continuo (primera parte) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad