Criando uma planilha no formato de documentos abertos em Delphi / C ++ Builder / Lazarus

2020-08-03

Sumário de ODS e ODF

ODS é um formato aberto para planilhas feitas de acordo com o padrão OpenDocument Format (ODF). Este formato é distribuído gratuitamente e segue os padrões da International Organization for Standardization. O padrão foi desenvolvido pelo comitê técnico da OASIS e foi baseado no formato XML; foi aprovado para lançamento como um padrão internacional ISO e IEC sob o nome ISO / IEC 26300 em 1 de maio de 2006. A OTAN tornou o padrão Open Document Format (ODF) obrigatório para apoiar a interoperabilidade entre os vários governos e agências governamentais. Muitos países têm adotado o ODF como um padrão governamental.

Planilhas ODF (uma das variedades de ODS) são objetos de arquivos simples e interativos usados para analisar, organizar e armazenar todos os tipos de dados baseados em planilhas.

Os recursos ODS podem ser abertos com qualquer suíte de escritório moderna, OpenOffice, LibreOffice Suite e MS Office (desde 2007).Planilhas ODF (uma das variedades de ODS) são objetos de arquivos simples e interativos usados para analisar, organizar e armazenar todos os tipos de dados baseados em planilhas.
Os recursos ODS podem ser abertos com qualquer suíte de escritório moderna, OpenOffice, LibreOffice Suite e MS Office (desde 2007).

Desde 2014, o padrão ODF foi adicionado aos aplicativos da web Documentos, Planilhas e Apresentações Google. Agora você pode abrir, editar e salvar arquivos com as extensões .odt (documentos de texto), .ods (planilhas) e .odp (apresentações). Em telefones e tablets Android, o suporte mais abrangente de arquivos ods é implementado no aplicativo AndrOpen Office.

Cada documento ODF é armazenado em um arquivo zip, portanto, para abrir este documento, basta renomear sua extensão para .zip e abri-lo com qualquer compactador zip. Depois disso, veremos pelo menos cinco arquivos .xml e vários diretórios.

Existem os chamados metadados nesses arquivos xml, além do conteúdo real do documento. São os dados adicionais que permitem definir parâmetros específicos para o texto. Por exemplo, tipo e tamanho da fonte, posição do texto na página, opções de impressão ou exibição.

O padrão de descrição de metadados XML (eXtend Markup Language) está ganhando mais popularidade atualmente. O principal requisito deste padrão é ser amigável: os documentos xml devem ser facilmente legíveis usando os processadores de texto mais simples e a marcação xml deve ser simples de entender por uma pessoa.

ODF é uma das inúmeras implementações do padrão XML. Portanto, depois de abrir o documento ODF como um arquivo ZIP, não será um grande problema entender a estrutura dos arquivos e pastas por seus nomes. Especialmente para aqueles que pelo menos uma vez na vida criaram páginas html, pelo menos no mesmo nível de “Olá, Mundo!” rechear. Content.xml é o arquivo de conteúdo principal e style.xml contém as informações de estilo. As pastas podem conter arquivos multimídia: fotos, áudio e vídeo. Em geral, o documento ODF é algo como um site da Web da época das páginas html estáticas.

Agora aprendemos sobre o formato em si, mas como salvamos um relatório com a extensão .ods? Na verdade, é extremamente fácil. Podemos criar o documento mais simples e descompactá-lo, conforme mencionado acima. Deixe-me lembrá-lo de que o padrão é aberto. Ou… podemos fazer do nosso jeito favorito!

Salvando em formato .ODS à partir do Delphi usando o FastReport

Antes de salvar um arquivo .ods, você já deve ter um projeto compilado com FastReport implementado com o componente Exportar para planilha de documentos abertos, bem como o relatório gerado (há um artigo separado sobre a criação de relatórios). Deixe-me lembrá-lo novamente - sim, você pode usar fontes internas do aplicativo e bancos de dados como uma fonte de dados para seu relatório. Execute o aplicativo e chame a exportação da janela de visualização (no final deste artigo há uma maneira de salvar o arquivo .ODS diretamente do código), uma janela de configurações aparecerá:


Setting Open Documents Spreadsheet  Setting Open Documents Spreadsheet

As ferramentas do FastReport permitem que você escolha quais páginas do documento exportar, certas páginas ou um intervalo.

Configurações de exportação - definir uma melhor correspondência visual com a versão original (WYSIWYG), usar quebras de página, exportar como um documento contínuo que pula cabeçalhos e rodapés ou exportar um plano de fundo - objetos gráficos usados como plano de fundo do relatório página.

Como de costume, você pode especificar onde salvar seu arquivo (no armazenamento local, enviar como e-mail, fazer upload para FTP ou armazenamento em nuvem).

Abrir após exportação - o arquivo resultante será aberto imediatamente após a exportação por qualquer software associado aos arquivos ODS.

Código completo para salvar no formato Open Document Spreadsheet diretamente do Delphi / Lazarus

Gravar para ODS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm1.Button1Click(Sender: TObject);
begin
 {Generate a report. The report must be generated before exporting}
 frxReport1.PrepareReport();
 {Set the range of pages to export. By default, all pages of the generated report are exported}
 frxODSExport1.PageNumbers := '2-3';
 {Set whether to generate a continuous document}
 frxODSExport1.SingleSheet := False;
 {Set whether to export the page breaks so that when printing the pages correspond to the pages of the generated report}
 frxODSExport1.ExportPageBreaks := True;
 {Set WYSIWYG}
 frxODSExport1.Wysiwyg := True;
 {Set whether to export the background}
 frxODSExport1.Background := True;
 {Set whether to open the resulting file after export}
 frxODSExport1.OpenAfterExport := False;
 {Set whether to display export progress (show which page is currently being exported)}
 frxODSExport1.ShowProgress := False;
 {Set whether to display the export filter dialog box}
 frxODSExport1.ShowDialog := False;
 {Set the name of the resulting file.}
 {Please note that if you do not set the file name and disable the export filter dialog box,}
 {the file name selection dialog will still be displayed}
 frxODSExport1.FileName := 'C:\Output\test.ods';
 {Export the report}
 frxReport1.Export(frxODSExport1);
end;

Então, de forma rápida e fácil podemos fazer nosso aplicativo para gerar arquivos de formato global moderno.

VCL VCL Export Export Lazarus Lazarus FastReport FastReport Delphi Delphi
26 de abril de 2023

How to use RFID tags in FastReport .NET

The new page object is an RFID tag in FastReport.NET allows users to use the library to create labels or maps without third-party programs
20 de abril de 2023

How to update FastReport Online Designer to the latest version

Step-by-step instructions for updating FastReport Online Designer to the latest version via the client panel.
14 de março de 2023

The Future of Report Generation with Blazor WebAssembly

Step-by-step instructions for creating a demo application on .NET 6 and 7 directly in the browser using Blazor WebAssembly in FastReport .NET.
Fast Reports
  • 800-985-8986 (English, US)
  • +31 97 01025-8466 (English, EU)
  • +49 30 56837-3928 (German, DE)
  • +55 19 98147-8148 (Portuguese, BR)
  • info@fast-report.com
  • 66 Canal Center Plaza, Ste 505, Alexandria, VA 22314

© 1998-2025 Fast Reports Inc.