+2

Gerando Documentos OpenOffice Dinamicamente

criado por Giovanni Floridia em 25/01/2006 6:58am
O princípio deve ter sido entendido e pode ser aplicado em qualquer situação. Basta fazer um modelo e copiar os marcadores. Caso sejam necessários estilos, basta criá-los no documento original. Pode-se, também, observar outros arquivos, como o style.xml, comentar a sua entrada no vetor $ooofiles e usar outro template.

Normalmente os relatórios possuem tabelas e texto, mas em alguns momentos é necessário utilizar planilhas. O princípio é sempre o mesmo.

Tenho um tutorial detalhado em http://www.floridia.net/OpenDocumentFormat/ onde podem ser vistos maiores detalhes, como exemplos funcionando, geração de planilhas, e onde podem ser baixados os códigos.

Vimos que o formato aberto do OpenOffice e uma porção de peças coletadas torna muito simples a criação de documentos dinâmicamente gerados, em particular relatórios. A mesma técnica pode ser aplicada para outras linguagens.

Espero que surjam diversos sistemas gerando no formato OpenDocument, ajudando a torná-lo padrão e a difunfir o OpenOffice!

Comentários:

Mostrando 1 - 4 de 4 comentários
Alguém tem algum exemplo de planilha com mais de uma pasta?

Valeu!

Adriano
07/03/2006 10:17am (~18 anos atrás)

Pessoal,

Como é minha primeira publicação, acabei deixando html demais. O código estava ilegível...

Dei uma limpada nos códigos, que tinham html demais, que acabou não sendo interpretado. Acho que agora a terceira parte está mais clara.


[]'s

Giovanni
26/01/2006 8:54am (~18 anos atrás)

Obrigado, Paulo.

A documentação do PDF é importante para aplicações mais complexas, inclusie para contribuir com o próprio phpdocwiter, que eu não conhecia.

Valem duas ressalvas. Primeiro, a abordagem do projeto é de gerar o documento codificando - similar ao uso de libs para criar pdf e outros formatos. Aqui utiliza-se o próprio OpenOffice para montar, de um jeito quase-WYSIWYG, o documento. É mais simples, mas pode-se deixar xml-lixo no documento.

Segundo, esta abordagem não é só para Writer, mas para planilhas eletrônicas Calc ou qualquer outro documento da suíte OpenOffice. Na realidade, é mais geral ainda - pode-se criar figura ou animações sgv, em pricípio. No site http://www.floridia.net/OpenDocumentFormat tenho um exemplo de planilha.

Abraços,

Giovanni
26/01/2006 8:52am (~18 anos atrás)

Paulo disse:
Existe um projeto chamado PHP DocWriter (http://phpdocwriter.sf.net) que utiliza classes do PHP para gerar todo o arquivo OpenOffice. Ele já faz o trabalho de geração de tabelas, propriedades da página, formatação de caracteres, imagens etc. Há muitos recursos ainda não implementados, mas, para projetos que demandem poucos recursos esta é uma excelente classe para geração de relatórios.

Gostei muito do artigo por ter abordado a coisa prática ao invés da teórica. De qualquer forma, para a utilização de recursos avançados, é fundamental a leitura do PDF sobre OpenDocument.

Parabéns!
26/01/2006 6:11am (~18 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)