Filtrar en formularios

Primero decirte que tengo muchas esperanzas en que tu ayuda sea satisfactoria, ya que estoy un poco desmoralizado con este tema.
Te explico:
Estoy haciendo una base de datos que contiene 2 tablas (Empresas, Bancos (dentro de esta además del banco pongo el nº de cuenta).
Ahora tengo que hacer un formulario en el cual en el que el campo Empresa es desplegable y me muestra todas las empresas creadas y al seleccionar una, el campo siguiente que es banco deberían desplegase solamente los bancos de la empresas que acabo de seleccionar, y después un campo de cuenta corriente que al desplegarla solo me muestre las cuentas de ese banco y de esa empresa.
Por favor contestame pronto, es un poquito urgente cerrar este tema.
Muchísimas Gracias.
(PD. Intenta no ponerme muchos tecnicismos he hecho un curso de access a nivel medio y no quisiera que te esforzaras y no te entendiera, y si hay que hacer algo en VB pues por favor ponlo muy clarito que no tengo ni idea, pero puedo conseguir ayuda).
2

2 Respuestas

6.650 pts. Soy informático con mas de 15 años de experiencia en...
Datt: mira tu problema tiene una solución muy sencilla y consiste en establecer el origen de los combobox a partir de las selecciones anteriores.
Para esto tienes dos caminos: ambos tienen sus ventajas y sus desventajas.
El primero es que establezcas el origen de registros de por ejemplo los bancos a una consulta cuya condición de filtro este apuntando al valor del cuadro combinado de tu formulario, por ejemplo empresa, de esta forma te mostrará solo lo que pase el filtro de empresa, y de esta misma forma para el tema de la cuenta. En este caso debes hacer un requery en el evento al recibir foco para que actualice los datos ya filtrados.-
El otro es que escribas el sqlstring de origen en el evento antes de actualizar del primer combo, y uses la selección de éste para personalizar el filtro (es casi lo mismo que el caso anterior pero en este no necesitas hacer un refresh o requery para actuizar los datos) algo así como:
me.cuadorcombinado1.rowsource = "SELECT BAnco FROM T_bancos WHERE empresa = " & me.cuadrocombinado0
Espero que me entiendas. Si no mandame el mdb y o los nombres de las tablas, campos y controles y te lo hago yo.-
3.300 pts.
Siento tardar en contestarte, pero, últimamente, no suelo pasar por aquí. Ya lo siento si alguna vez me preguntaras algo y no te contestara...
Bueno, respecto a lo que preguntas, espero que sepas hacer los dos cuadros combinados. En el de empresas poner todas las empresas es muy sencillo, y en el de bancos sólo has de añadir la condición de que el campo empresa (q tendrás en esa tabla relacionado con la tabla empresas) sea igual al valor del campo anterior (el desplegable de las empresas).
Hasta aquí es muy sencillo, supongo que no tendrás problemas (si los tienes, me comentas, ya intentaremos resolverlos).
El "problema" suele ser que la lista de bancos no se actualiza cuando cambias de empresa. Pero esto es muy sencillo de resolver:
En el evento "Después de actualizar" del desplegable de "Empresas" has de generar una línea de código (ya ves que poquito) que diga:
Bancos. Requery
Siendo bancos el nombre de tu desplegable donde aparecerán los bancos de la empresa seleccionada.
Espero que con esto te sirva.. para lo que quieras...
Tony.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas