Hola Delphitest
Vi tu mensaje y creo que te estas liando un poco:
Como dice kalimero el ADOQuery es simplemente un deposito en donde se coloca una sentencia sql que lee un tabla.
Cuando uno hace un QReport y pone un adoquery en el, es necesario ponerle en el string en el inspector de objetos la sentencia sql que necesitas, esto con el fin de que puedas incorporar los qrbtext que necesites y ligarlos a los campos que quieras poner.
Una vez hecho el reporte, si quieres llamarlo, variando la sentencia sql, lo que tienes que hacer es borrar del string la sentencia y hacerla por codigo, tal y como el ejemplo que te envie, en resumen sin el sql en el string del adoquery no puedes hacer el reporte, tienes que ponerlo y luego si es el caso quitarlo nuevamente si te interesa.
Intenta modificar el reporte que te envie asi:
Tienes en el form (FCliente1) una sentencia Sql, que es asi:
Código Delphi
[-]
QRClientes.ADOQuery1.SQL.Add(' Select * From Clientes ');
QRClientes.ADOQuery1.SQL.Add(' WHERE Clientes.Cod_Cliente = '+DBEdit13.Text+'');
Dejalo asi:
Código Delphi
[-]
QRClientes.ADOQuery1.SQL.Add(' WHERE Clientes.Cod_Cliente = '+DBEdit13.Text+'');
Y coloca en el string del adoquery del reporte:
Con esto:
1: el query del reporte tendra el codigo sql, que busca la tabla
2: El form que llama al reporte le dira que el cliente tiene que ser=DBEdit13.Text
3: podras incluir, modificar etc, el reporte sin problemas.
Espero que esta sea tu duda.
Saludos