Y porque tardan los informes? Yo recuerdo que una vez tenía un listado de caja que era lentísimo y era porque calculaba los suma y sigue desde Delphi en un while. Movi eso a un simple SUM en la consulta sql y ahora el listado se abre al instante para algunos millones de registros