PDA

Ver la Versión Completa : Ayuda para filtrar por fechas


jocey
05-11-2007, 18:39:05
Hola a todos, necesito hacer una consulta entre dos fechas y mostrar los valores un un reporte con Quickreport, yo trabajo en tiemo de ejecucion, bueno, el hecho es que deseo sacar de dos timepicker los valores de mi consulta, ya hice algo y aqui les pongo el codigo, para ver si me ayudan, este me da un error cuando voy a abrir el dataser, diciendo que espera un UPDATE, DELETE o algo parecido, me pudieran ayudar a confeccionar bien el SELECT.



date1 := DateToStr(Forminicial.DateTimePicker1.Date);
date2 := DateToStr(Forminicial.DateTimePicker2.Date);
PathBD := ExtractFilePath(Application.ExeName);
CadenaConexion := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + PathBD + 'Incidencia.mdb';
DataSetprint.CommandText := 'SELECT * FORM Incide' + 'Where Incide.Fecha Between date1 AND date2 ';
DataSetprint.ConnectionString := CadenaConexion;
DataSetprint.Open;
Formreportinci.QRDBfecha.Caption := DataSetprint.fieldbyname('fecha').value;
Formreportinci.QRDBinci.Caption := DataSetprint.fieldbyname('incidencia').value;
Formreportinci.QRDBreport.Caption := DataSetprint.fieldbyname('reporte').value;
Formreportinci.QRDBest.Caption := DataSetprint.fieldbyname('estado').value;
Formreportinci.QRDBob.Caption := DataSetprint.fieldbyname('observaciones').value;
Formreportinci.QuickRep1.Preview;

poliburro
05-11-2007, 19:22:25
DataSetprint.CommandText := 'SELECT * FORM Incide' + 'Where Incide.Fecha Between date1 AND date2 ';

Está mal la manera en que asignas la consulta, prueba con

'SELECT * FORM Incide Where Incide.Fecha Between DateValue(''' + date1 + ''') AND DateValue(''' + Ddate2 ''')';

Esto considerando que utilizas acces.

Suerte