Tres combos en cascada en un Subformulario

Tengo tres combos anidados en un subformulario que me da un error que no acabo de solucionarlo. En otros formularios para seleccionar un registro a través de los cuadros combinados me funcionan perfectamente. La pregunta con los datos que quisiera explicar es, creo, muy extensa. No sé si ustedes me pueden recomendar algún ejemplo de combos en cascada en subformulario para entrar datos. Me imagino que es algo más tedioso que en un formulario principal.

3 respuestas

Respuesta
3

En principio no deberías tener problemas. Prueba con poner en el evento después de actualizar del último combinado, por ejemplo

nombredelsubform.form.recordsource="select * from tabla where loquesea='" & me.combo1 & "' and otracosa='" & me.combo & "' and..."

Por ejemplo, supongamos que tienes un subformulario con los combinados Pais, Ciudad y Barrio. Puedes poner

nombredelsubform.for.recordsource="select * from clientes where pais=`" & me.combo1 & "' and Ciudad='" & me.combo2 & "' and barrio ='" & me.combo3 & "'"

Respuesta
2

Si los tres combos del subformulario no dependen de elementos del formulario principal, la forma de enlazarlos es exactamente la misma que si fueran en un formulario único normal.

De hecho, deberías diseñarlos directamente en el formulario que hace de subformulario, por lo que no necesitas una sintaxis especial. Lo mismo si los manejas por código desde eventos del propio subformulario.

Un saludo.


Muchas gracias Sveinbjorn El Rojo. Ningun combo depende del formulario principal, y me sigue dando error. Los filtros de los combos "Sección", "Categorías" y "Productos" los hace correctamente, pero al elegir un producto me salta el siguiente mensaje:  "El campo activo debe coincidir con la clave de combinación en la tabla que sirve en lado uno de la relación uno a varios". Los he enlazado exactamente igual que en otro formulario principal con tres combos para buscar un registro, pero me da ese error. Seguiré probando a ver si doy con la solución. Muy agradecido!

Ese error suena más a problema de relaciones entre formulario y subformulario que a problema de combustible en cascada...

Sí, la cuestión es que anteriormente solo tenía el combo "Productos", pero al ir ampliando dichos productos lo he querido filtrar por "Secciones" y "Categorías", para agilizar la entrada de datos. Estos dos últimos combos tienen el origen de datos de una tabla "tblCategorias". Sin querer molestarte más, ya te diré si he dado con la solución. Mil gracias! Saludos!

Que añadas esos combos no tenía que influir en el funcionamiento del conjunto formulario-subformulario, a menos que hayas modificado alguna cosa a mayores.

Si el error estuviera en la "vinculación" de un combo con otro, te daría error en el propio combo, y ya no te dejaría elegir valores de ese combo o no te mostraría ninguno.

Sigo pensando que es un problema de cómo has relacionado el formulario con el subformulario, o las tablas subyacentes...

Respuesta

Exit que significa 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas