Hola de nuevo, tienes que darle el formato a la fecha de tu DateTimePicker ya que te devolvera como dd/mm/yyyy, puedes utilizar también FormatDate y como te dije también puedes utilizar el Between en tu consulta.
Código Delphi
[-]
procedure TFFechas.Button1Click(Sender: TObject);
begin
try
FReporte:=TFReporte.Create(self);
FReporte.QryReporte1.SQL.Add('SELECT FECHA, NOMBRE, MEDICO, PRIMERAVEZ, PARTICULAR, ASEGURADORA ');
FReporte.QryReporte1.SQL.Add('FROM PACIENTES ');
FReporte.QryReporte1.SQL.Add('WHERE FECHA BETWEEN '+QuotedStr(FormatDateTime('mm/dd/yyyy',DTP1.Date))+
' AND '+ QuotedStr(FormatDateTime('mm/dd/yyyy',DTP2.Date))+' ORDER BY FECHA');
FReporte.QryReporte1.Open;
FReporte.RVP1.ExecuteReport(ReporteF1);
finally
FReporte.RVP1.Destroy;
end;
end;
O utilizar parametros como te dice Delphius.
Código Delphi
[-]
FReporte.QryReporte1.SQL.Add('SELECT FECHA, NOMBRE, MEDICO, PRIMERAVEZ, PARTICULAR, ASEGURADORA ');
FReporte.QryReporte1.SQL.Add('FROM PACIENTES ');
FReporte.QryReporte1.SQL.Add('WHERE FECHA BETWEEN :FECHAINI AND :FECHAFIN ORDER BY FECHA');
FReporte.QryReporte1.ParamByName('FECHAINI').AsDate:=DTP1.Date;
FReporte.QryReporte1.ParamByName('FECHAFIN').AsDate:=DTP2.Date;
FReporte.QryReporte1.Open;
Saluditos