Como combinar vários relatórios em um arquivo PDF no Delphi / Lazarus / C ++ Builder Como combinar vários relatórios em um

2020-09-03

Frequentemente necessitamos combinar vários documentos em um (por exemplo, PDF). Podem ser vários capítulos de documentação, diretórios de catálogos etc. A rigor, isso às vezes precisa ser feito não apenas para PDF, é apenas que este formato de arquivo em si não implica em edição e “mesclagem” sem ferramentas especiais, então seria melhor para fazê-lo corretamente imediatamente.

Hoje vou contar como fazer isso no FastReport VCL e FMX. Em nosso caso, haverá vários relatórios na entrada e um arquivo na saída.

Então, suponho que já tenhamos um projeto usando FastReport e os modelos estejam preparados. Em nosso exemplo, esses são arquivos no armazenamento local, mas nada impede de retirá-los do banco de dados ou de outras fontes. Agora precisamos combinar dois (ou mais) relatórios em um grande arquivo.

Para isso, o FastReport possui ferramentas que nos permitem anexar um novo relatório além do existente. O método TfrxReport.PrepareReport tem um parâmetro ClearLastReport: Boolean opcional que é definido como True por padrão. Este parâmetro determina se as páginas do relatório criado anteriormente devem ser apagadas. O exemplo a seguir mostra como construir um pacote de dois relatórios:

Pascal:
1
2
3
4
5
frxReport1.LoadFromFile('1.fr3');
frxReport1.PrepareReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.PrepareReport(False);
frxReport1.ShowPreparedReport;

 

C++:
1
2
3
4
5
frxReport1->LoadFromFile("1.fr3");
frxReport1->PrepareReport(true);
frxReport1->LoadFromFile("2.fr3");
frxReport1->PrepareReport(false);
frxReport1->ShowPreparedReport();

Carregue o primeiro relatório e crie-o sem exibi-lo na tela. Em seguida, carregue o segundo relatório no mesmo objeto TfrxReport e crie-o com o parâmetro ClearLastReport = False. Isso adiciona o segundo relatório ao anterior.

Obviamente, podemos repetir as duas penúltimas linhas para adicionar mais alguns relatórios ao nosso relatório composto complexo. E essa parte só é possível a partir do código.

Quando tivermos construído tudo, podemos ver os relatórios combinados na janela de visualização e salvar facilmente esse arquivo em qualquer formato e local a partir dele.

Salvando relatórios combinados como PDF.

Depois que conseguimos combinar dois relatórios em um, simplesmente exportamos para PDF (ou, na verdade, para qualquer formato de arquivo - por exemplo, RTF / DOC / ODT ou tabular - mas não é tão difícil combiná-los após a exportação enquanto é relevante para PDF). Aqui você pode permitir que o usuário selecione o formato de arquivo para salvar e as configurações:

Exportar para PDF

Click no ícone Save para preview do relatório.
Select the required format – PDF.

Podemos ver a janela de configurações de exportação.

Configure é tudo que necessitamos.

Para obter maiores informações de como criar e configurar, consulte o artigo: 

Click OK quando terminado!

Ou alguma coisa como "FrxReport1.Export (frxPDFExport1);"

Descrevi os parâmetros de salvamento em vários formatos do código Delphi, Lazarus e C ++ Builder mais detalhadamente em artigos anteriores.

Podemos abrir o documento resultante após a criação. Tendo aberto o arquivo, veremos uma exibição consistente de nossos relatórios em um documento PDF.

Combinar dois relatórios PDF do Delphi, Lazarus e C ++ Builder não é tão difícil quanto pode parecer.

VCL Export Lazarus FastReport PDF Delphi VCL Export Lazarus FastReport PDF Delphi
10 de julho de 2025

Komu Monta y Konekta o Plugin Firebird na FastReport .NET

Neste artigo, vamos passar pelo processo de construção e conexão do plugin Firebird no FastReport .NET através do designer de relatórios e via código.
30 de maio de 2025

Abrimos arquivos com a extensão FP3 usando o FastReport Viewer

O FastReport Viewer é a solução ideal para trabalhar com arquivos FP3, é permite abrir, visualizar, imprimir e exportar relatórios com facilidade.
22 de abril de 2025

Working with XML and JSON Formats in FastScript

In this article, we will take a closer look at how to work with JSON and XML in FastReport, see what properties and methods they have, and build reports from code with scripts.

© 1998-2025 Fast Reports Inc.