eu uso o seguinte
o costume criou delphi app A com a entrada do oracle e a saída ao HTML/csv/txt/xml/xls
o costume criou o HTML do serviço de delphi app B (como o web server) output ao web browser
o costume criou delphi app C (C1, C2… C45) com a saída a Quickreport
Como você pode ver, eu uso diversas soluções
Porque 1 solução não cabe tudo
Isto é apenas para o departamento de Delphi, um em muitos departamentos…:)