Dudas sobre el uso de formularios al realizar consultas a una base de datos en acces

Hola, te quería hacer un pregunta, yo quiero hacer un solo formulario en el que se puedan poner los parámetros para hacer diferentes consultas, por ejemplo, una por la fechas, otra por el consecutivo, otra por la descripción, etc. Tocas se sacan de las misma tres tablas y el reporte que debe generar contiene la misma información sin importar con que criterio de búsqueda se hizo. ¿Se puede hacer una sola consulta o es necesario hacer una consulta para cada uno de los criterios? Si hago una sola consulta, ¿cómo hago para que acepte que el usuario solo ingrese una o ingrese varias de las condiciones?
Gracias por tu ayuda.

1 Respuesta

Respuesta
1
Si, es posible y no es difícil de realizar:
En un formulario (por ejemplo lo llamás FormBusqueda) ponés varios cuadros de texto independientes (serán los criterios de búsqueda) a cada uno le ponés el nombre y formato correspondiente.
Creás una consulta y vas completando los criterios de todos los campos por los que deseás buscar, de la siguiente manera:
Como Formularios![FormBusqueda]![NombreCuadroDeTexto]
Así con todos los campos por los que quieras buscar.
Al formulario de resultados le ponés el origen de registro en esa consulta.
En el FormBusqueda creás un botón para realizar la búsqueda. La idea es que no haga falta completar todos los cuadros de texto, sino que sólo se complete los cuadros por los que se desea buscar. Así que el botón, además de abrir el formulario de resultados va a asignar valores a todos los cuadros que no hayan sido completados, por ejemplo:
----------------------------------------------
If isnull(Nombre) or me.nombre = "" then
me.nombre = "*"
end if
If isnull(Domicilo) or me.Domicilio = "" then
me.Domicilio = "*"
end if
'Y así con todos los cuadros, si son nulos o el valor es igual a "" le asignás un valor "*" o el valor que vos quieras...
Docmd. Openform "NombreFormResultados" 'Abrís el formulario de resultados
------------------------------------------------
Para asignar un valor a un campo de fecha, acordate de ponerlo entre # por ejemplo #25/02/1995#.
----------------------------------
Si te resulta complicado hacerlo con código, podes crear la acción del botón usando MACRO. Para eso vas a usar las acciones establecer valor y abrir formulario.
Para establecer valor, en Elemento ponés por ejemplo: Form![Nombre] Y en expresión "*"
Una vez creada la macro la guardás y ponés el nombre de la misma en el evento Al Hacer Clic del botón.
------------------------------------
Bueno, espero que entiendas bien la explicación y puedas resolver el problema, cualquier cosa preguntame.
Hola, listo entiendo lo que me estas explicando, pero antes de eso necesito crear una relación entre dos campos de una tabla con dos campos de otro pero el programa no me deja, ¿me sale un letrero diciendo "No unique index found for the reference field of the primary table" por que me sale esto?
Para que entiendas que es lo que estoy haciendo, te explico:
Tengo una tabla con los datos principales de las guías principales (n. de guía principal, fecha, destino...), tengo otra tabla con las guías de transito con n. de guía principal, n. de guía en transito, fecha, destino... y tengo otra tabla que almacena los detalles de cada guía, información especifica. (La idea que a partir de la información de detalle, se pueda crear la guía de transito).
Las tablas se relacionan por el campo n. de guía principal con relación de uno a muchos, tanto la tabla de guías principales como la de guías en transito con el campo de la tabla de detalles. (Con esta relación no tengo problema), pero ahora necesito relacionar la tabla de guías en transito con la de detalles por el campo N de guía en transito. No se si el problema tenga que ver conque el n. de guía en transito no es para todos los registros de la tabla y se llena con un formulario diferente al del ingreso del resto de información.
Por favor ayudame a solucianar esto, porque he intentado varias veces crear esta relación y no he podido. Muchas gracias.
Hola,
te escribo de nuevo porque sigo intentando lo que te comente de la relación y ahora cuando ingreso datos a la tabla de detalles me sale un letro que dice: "you cannot add or change a record because a related record is required in table "guías en tránsito"
Antes de intentar colocar la relación este letrero no me salia y ahora no se como organizarlo porque ya no puedo ingresar datos, por favor es urgente porque ya no se que puedo hacer,
Saludos.
Huuuu... Perdón por la demora, estaba de viaje...
No se cual puede ser el problema, no se me ocurre nada. Si querés en viame la BD ([email protected]) a ver si puedo hacer algo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas