PDA

Ver la Versión Completa : quickreport+fecha seleccionada


n03l
15-02-2007, 21:12:10
hola que tal Espero que puedan echar una mano...

tengo una base de datos en acces con un ADOconecction un ADOtable y un DATAset
Como hago para que en el quickreport me muestre solo los registros de una fecha seleccionada usando un DateTimePicker.

espero que puedan ayudar ya q no tengo ni idea por donde empezar.

salu2

marcoszorrilla
15-02-2007, 23:35:15
No es QuickReport quien tiene que solucionar eso, sino que tienes que lanzar una consulta contra la tabla y que esta te devuelva los registros que quieres y luego conectas QuickReport al DataSource correspondiente. También podrías resolverlo con un filtro.

Un Saludo.

n03l
16-02-2007, 15:34:06
okey gracias por responder estoy haciendolo asi pero no me da solo me muestra en el qyureport un solo registro?

QuickReport.ADOQuery1.Close;
QuickReport.ADOQuery1.SQL.Add('SELECT * FROM Caja_Diaria');
QuickReport.ADOQuery1.SQL.Add('WHERE (Fecha = ' + DateToStr(DTP1.Date));
QuickReport.Preview;
QuickReport.ADOQuery1.Open;

Espero que me den su opinion???

Lepe
16-02-2007, 15:48:40
Intenta así:

QuickReport.ADOQuery1.Close;
QuickReport.ADOQuery1.SQL.Add('SELECT * FROM Caja_Diaria');
QuickReport.ADOQuery1.SQL.Add('WHERE Fecha = :laFecha');
QuickReport.ADOQuery1.params.parambyname('laFecha').Value := DTP1.Date
QuickReport.ADOQuery1.Open;
QuickReport.Preview;


Como ves he usado parámetros, ya que las fechas en string suelen interpretarlas como mm/dd/yyyy en lugar de dd/mm/yyyy, con parámetros, nos quitamos el problema.

Por otro lado, verás que primero se abre la consulta y después se muestra el Preview, supongo que lo tenías al revés al hacer pruebas y no dar con la tecla.

Saludos

n03l
16-02-2007, 17:40:51
Gracias por responder
puse el codigo pero me sale error "No coinciden los datos en la expresion de criterios"


otra cosa en el quireport seleccione el adoquery en el dataset

en el adoquery selecciono FrCaja.DataSource1

en los QRDBText en el dataset pongo adoquery pero en el datafield no me deja seleccionarlo me sale error"ADOQuery: Missing SQL Property"

Espero me puedan entender soy novato en delphi y nunca e usado un ADOquery.

Salu2

Lepe
17-02-2007, 14:13:51
puse el codigo pero me sale error "No coinciden los datos en la expresion de criterios"

No entiendo este error, pero creo que viene por el comentario siguiente:


otra cosa en el quireport seleccione el adoquery en el dataset

en el adoquery selecciono FrCaja.DataSource1

Intuyo que es al revés. En el DataSource1 tienes que elegir su propiedad Dataset := Adoquery.

Tal y como lo has puesto, quiere decir que los resultados de la consulta Adoquery, dependen de los resultados del DataSource1... y a saber qué tiene ese Datasource.


en los QRDBText en el dataset pongo adoquery pero en el datafield no me deja seleccionarlo me sale error"ADOQuery: Missing SQL Property"

En el Adoquery, en tiempo de diseño, en su propiedad SQL añade:

SELECT * FROM Caja_Diaria

Esa propiedad la modificas en tiempo de ejecución, añadiendo la restricción de Fecha, pero en tiempo de diseño, el IDE de delphi tiene que saber la instrucción SQL, para que salgan los campos en la propiedad DataField y puedas elegirlos.

Saludos

n03l
17-02-2007, 17:41:35
Muchisimas gracias Lepe, ya logre solucionarlo con las indicaciones q colocaste.
salu2