Hola Goyo
Bueno empecemos con esto:
Aqui voy a modificar algunas cosas que me parece sobran o no se necesitan,
por ejemplo la variable Filtro no la usas en ninun momento y la variable consulta no se necesita.
Ademas de implementar el uso del nombre de la empresa y fecha en el reporte, recuerda a los 45 ya casi ni se ve tenme paciencia.
Esto va a llamar al reporte:
Código Delphi
[-]
procedure TFrmImprimirVehiculo.SpeedButton1Click(Sender: TObject);
begin
If (DBNumeroVehiculo.Text <> 'Todos') then
Begin
try
FrmReporte1:=TFrmReporte1.Create(self);
FrmReporte1.Query1.SQL.Add('SELECT NumeroVehiculo');
FrmReporte1.Query1.SQL.Add('FROM BitacoraVehiculos RIGHT JOIN Vehiculos ON BitacoraVehiculos.NumeroVehiculo = Vehiculos.NumeroVehiculo ');
FrmReporte1.Query1.SQL.Add('WHERE Vehiculos.NumeroVehiculo ='+chr(39)+DBNumeroVehiculo.Text+chr(39)'');
FrmReporte1.QRLblDesde.Caption := DateToStr(DTP1.Date);
FrmReporte1.QRLblHasta.Caption := DateToStr(DTP2.Date);
FrmReporte1.QRLblNombreEmpresa.Caption := 'Empresa Nombre';
FrmReporte1.QRLblNumeroV.Caption :=''+chr(39)+DBNumeroVehiculo.Text+chr(39)'';
If RadioGroup1.ItemIndex = 0 then FrmReporte1.QuickRep1.Print
else FrmReporte1.QuickRep1.Preview
finally
FrmReporte1.QuickRep1.Free;
end;
end;
end;
El uso para mi de tanto ADD es porque el codigo se lee mejor.
En el QReport pones un QRband al principio y en su interior pones los QRLbl que te indica el codigo anterior, con los nombres de estos.
Bueno con esto ya tienes para pensar, Creo que esto seria, si tienes otra duda dime.
Saludos