Filtrar por fecha y un parametro en un datagridview
Publicado por Anonimo (1 intervención) el 06/07/2020 23:42:48
Hola, tengo un formulario con una conexion a una base de datos de Access que tiene tres tablas: clientes, reservas y autos. Es un sistema de reservas de autos por lo que necesito una consulta para poder filtrar los autos disponibles entre dos fechas ingresadas por el usuario por medio de un datetimepicker.
La consulta la realice en el diseñador de consultas de visual basic y por ahora funciona adecuadaente:
Esta consulta se ejecuta al apretar el boton buscar donde toma los datos del datetiempicker que el usario eligio.
El problema es cuando quiero ademas de que me muestre la disponibilidad de autos en las fechas dadas, filtre por tipo de auto o por precio por ejemplo. Intente a la consulta de arriba agregar en el where un parametro de "tipo = ?" y que el usuario elija de un combobox los tipos de autos que existen y asi poder buscar por fecha y por tipo.
Pero esta consulta no funciona y me da una tabla vacia, cuando yo se que hay vehiculos que deberian aparecer.
Alguna sugerencia en donde puede estar el error o como hacerlo?
La consulta la realice en el diseñador de consultas de visual basic y por ahora funciona adecuadaente:
1
2
3
4
5
6
7
SELECT [Auto _id], Marca, Modelo, Precioxdia, Tipo, Patente, [Auto _id] AS Expr1
FROM Autos
WHERE ([Auto _id] NOT IN
(SELECT [Auto _id]
FROM Reservas
WHERE ([Fecha _entrada] BETWEEN ? AND ?) OR
([Fecha _salida] BETWEEN ? AND ?)))
Esta consulta se ejecuta al apretar el boton buscar donde toma los datos del datetiempicker que el usario eligio.
El problema es cuando quiero ademas de que me muestre la disponibilidad de autos en las fechas dadas, filtre por tipo de auto o por precio por ejemplo. Intente a la consulta de arriba agregar en el where un parametro de "tipo = ?" y que el usuario elija de un combobox los tipos de autos que existen y asi poder buscar por fecha y por tipo.
Pero esta consulta no funciona y me da una tabla vacia, cuando yo se que hay vehiculos que deberian aparecer.
Alguna sugerencia en donde puede estar el error o como hacerlo?
Valora esta pregunta
0