Parámetros desde formularios
Uno de los grandes inconvenientes de los parámetros desde el generador es que los cuadros de dialogo que muestra para solicitar la introducción de datos son siempre iguales y no los podemos personalizar.
Uno de los mayores usos de las consultas es para obtener información que será presentada en Informes, te recomiendo que siempre uses tus propias pantallas para solicitar información a los usuarios y no le dejes el trabajo a Access.
Existen 2 requisitos para que una consulta pueda usar campos de un formulario, el primero es que el formulario debe estar en ejecución y el segundo es que el campo al que se hace referencia contenga información.
La forma de hacer referencia a un campo que esta en un formulario es muy sencilla, solo debemos respetar la siguiente estructura:
Para poder ejemplificar esto, generemos un formulario en vista diseño que contenga solamente un cuadro combinado, el cual debe obtener la información de la tabla de ciudades, seleccionemos los campos IdCiudad y estado como elementos del cuadro, ocultemos el campo IdCiudad, cuando nos solicite un campo para guardar el valor y poder utilizarlo más adelante seleccionaremos el campo estado y finalizamos la generación del botón. Recuerda que el nombre del cuadro es asignado por el generador, por lo que debemos cambiar la propiedad de nombre y asignaremos el nombre de Edo. Guardemos el formularios con el nombre de “prueba”.
En la consulta que hemos venido trabajando, eliminemos el parámetro creado y quitemos el criterio del campo estado, ahora agreguemos la referencia al formulario que acabamos de crear. En el criterio del campo estado debemos escribir la siguiente sentencia: [Forms]![Prueba]![Edo].
La consulta tendrá la siguiente apariencia:
Antes de ejecutar la consulta ponga al formulario en tipo vista y seleccione del cuadro combinado el valor de Gto.
Deje al formulario como esta. Ahora vuelva a la consulta y ejecútela, el resultado es el siguiente.
Los formularios que pasan datos a consultas generalmente son usadas en los reportes, por ejemplo el reporte de las ventas en un periodo implicaría tener 2 campos de tipo fecha, uno para definir el inicio del periodo y otro para el fin del periodo.
Fuente: Apuntes de Base de datos de la UNIDEG