Ver Mensaje Individual
  #1  
Antiguo 16-06-2004
Mashabak Mashabak is offline
Registrado
 
Registrado: jun 2004
Posts: 8
Reputación: 0
Mashabak Va por buen camino
Consultas por fecha en access

Hola, este es mi primer mensaje en el foro, aunque intentare ser claro en la explicacion.
Lo primero es decir que he repasado los posts con problemas similares al mio en el foro y con las soluciones planteadas no he conseguido resolver mi problema.
Mi caso es el siguiente: Tengo un base de datos access a cuyos datos accedo mediante TQuery y TDataSource. Todo me funciona correctamente excepto las busquedas por fecha.
El caso concreto es el siguiente: en cierto formulario tengo una funcion para realizar busquedas de facturas por fecha, la cual muestra un pequeño TDBGrid con las fechas de todas las facturas. El caso es que yo quiero que, cuando se seleccione una de esas fechas, la consulta solamente muestre las facturas que tienen esa fecha. El campo fecha de la tabla de facturas es de tipo Fecha corta.
Para realizar la consulta uso el siguiente codigo:
Código:
 
facturas.Queryfacturas.Active:=false;
facturas.queryfacturas.SQL.Clear;
facturas.queryfacturas.SQL.Add('Select * from facturas_venta where facturas_venta.fecha=' + 
vartostr(grid.Fields[0].Value));
facturas.queryfacturas.Active:=true;
facturas.queryclientefactura.Active:=false;
facturas.queryclientefactura.SQl.Clear;
facturas.queryclientefactura.SQL.Add('Select * from clientes where clientes.numero=' + 
facturas.dbedit10.edittext);
facturas.queryclientefactura.Active:=true;
En este codigo, grid es el TDBGrid que contiene el listado de fechas, queryfacturas es el Tquery donde quiero que aparezcan las facturas de esa fecha y queryclientefactura es una consulta para relacionar la factura con los datos del cliente.
Pues bien, realizando esa funcion, sintacticamente no me da ningun problema, pero no devuelve ningun registro, cuando realmente si lo hay.

He probado a entecomillar la fecha, usar # para la consulta, usar funciones de formato de fecha, etc etc y no consigo que me funcione.
Sin embargo, esa misma consulta sustituyendo el parametro por una fecha real entre # si funciona dentro de la base de datos access, pero si uso las # dentro de delphi, me salta el error "Invalid use of keyword. Token facturas_venta.fecha="

Si a alguien se le ocurre donde puede estar el fallo estaria muy agradecido.

Un saludo.

Última edición por Mashabak fecha: 16-06-2004 a las 13:12:06.
Responder Con Cita