Deutsch Indonesia Tiếng Việt فارسی English Italiano Türkçe ไทย Español Polski Русский 日本語 Français Português العربية

Geração ODT a partir de modelos em C#

Wordize for .NET é uma solução profissional para automatização de relatórios e geração programática de documentos ODT. A classe ReportBuilder fornece aos desenvolvedores C# a capacidade de criar relatórios ODT utilizando modelos e sintaxe LINQ, o que ajuda a acelerar os processos de inteligência de negócios, implementar conteúdo ODT dinâmico em fluxos de trabalho documentais automatizados.

Características Funcionais:
  • Geração programática de relatórios ODT - a classe ReportBuilder fornece o método BuildReport() para criar documentos ODT baseados em modelos
  • Integração flexível com fontes de dados - suporte para JSON, XML, CSV e objetos programáticos (classes personalizadas, coleções de objetos)
  • Aplicação de expressões LINQ para filtragem, ordenação e agrupamento de dados ao gerar ODT
  • Configuração de parâmetros de geração ODT - a classe ReportBuilderOptions gerencia os tipos de dados disponíveis, tratamento de campos ausentes, remoção de parágrafos vazios e outros parâmetros de criação de relatórios em formato ODT
  • Exportação para formato gráfico - o método BuildReportToImages() retorna as páginas do relatório ODT como uma matriz de imagens
  • Suporte à API Fluent para executar operações de criação de relatórios através de ReportBuilderContext e encadeamento de métodos, adicionando clareza ao código C#

Teste as capacidades de geração programática de relatórios ODT na demonstração interativa online apresentada nesta página. Para isso, carregue um modelo de documento, arquivo de dados (JSON, XML ou CSV), execute a operação e baixe o documento ODT gerado para verificação. O trecho de código C# fornecido está completamente pronto para uso em seu projeto .NET.

C#
Executar código
Carregue o modelo do documento
Carregue o arquivo de dados
Seleccione o formato de saída da lista
using Wordize.Reporting;

var dataSource = new JsonDataSource("data.json");
ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, "");
using Wordize.Reporting; var dataSource = new JsonDataSource("data.json"); ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new JsonDataSource("data.json"); var imageStreams = ReportBuilder.BuildReportToImages("Input.odt", new ImageSaveOptions(SaveFormat.Odt), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.odt"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new XmlDataSource("data.xml");
ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, "");
using Wordize.Reporting; var dataSource = new XmlDataSource("data.xml"); ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new XmlDataSource("data.xml"); var imageStreams = ReportBuilder.BuildReportToImages("Input.odt", new ImageSaveOptions(SaveFormat.Odt), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.odt"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true });
ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, "");
using Wordize.Reporting; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); ReportBuilder.BuildReport("Input.odt", "Output.odt", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); var imageStreams = ReportBuilder.BuildReportToImages("Input.odt", new ImageSaveOptions(SaveFormat.Odt), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.odt"); stream.CopyTo(file); }
Executar código

Como criar relatório ODT em C#

  1. Conecte o SDK Wordize ao seu projeto .NET
  2. Crie uma fonte de dados e chame o método ReportBuilder.BuildReport(), especificando nos parâmetros o modelo ODT, arquivo resultante e fonte de dados
  3. Obtenha o documento ODT gerado
5%