Administração do sistema

Desenvolvimento de templates ODT

RT.FAQ-132501
O desenvolvimento de templates utilizando o OpenOffice ou LibreOffice (arquivos .odt) é relativamente simples. Basta editar um arquivo texto com o conteúdo desejado e inserir as referências aos objetos incluídos no contexto utilizando a sintaxe definida pelo Velocity.

As macros Velocity deverão ser incluídas em campos do documento.
Atenção
O uso das macros Velocity diretamente no corpo do texto não é recomendado porque existem situações onde o editor "quebra" a expressão na sua estrutura interna, impedindo ao Velocity reconhecer corretamente a expressão.

Definição dos campos

Cada expressão velocity que for necessária no documento deverá ser definida como um campo de usuário do documento. Os campos podem ser definidos no menu "Inserir > Campos > Outros" ou através do atalho Ctrl+F2.

[img:oo02]

Para criar um novo campo, basta informar um nome, a expressão velocity no valor e clicar no ícone "certo" que tem à direita do campo "Valor".

[img:oo04]

Para usar uma das variáveis, basta selecionar a variável desejada e clicar em "Inserir".

[img:oo03]

Tabelas

Para criar tabelas dinamicamente, é necessário usar as anotações @before-row e @after-row juntamente com as diretivas #foreach e #end do Velocity. Sugerimos incluir uma variável com o nome "tabela_" seguido de um nome que representa o conjunto de dados apresenta e uma variável com o nome "tabela_end" necessária para definir que o laço é composto apenas por esta linha da tabela.

Exemplo:
Nome do campo Valor
tabela_developers @before-row#foreach($d in $developers)
tabela_end @after-row#end

Estes campos deverão ser incluídos em qualquer parte dentro da linha da tabela que serve como template. As anotações "desviam" a diretiva Velocity para antes e depois da linha corrente da tabela, de forma a permitir o processamento correto do "foreach".

Exemplo:
[img:oo01]

Imagens

Para inclusão de imagens que deverão variar dinamicamente no documento, deverá ser incluída uma imagem no template e o nome desta imagem deverá ser informada no formato:
@image-file(${d.Foto})
Onde ${d.Foto} deverá retornar o caminho físico do arquivo que contem a imagem a ser incluída.
[img:oo05]

Todas as propriedades da imagem serão mantidas tal qual foi incluído no template. Isso inclui o posicionamento (ancoragem), dimensões, quebra, espaçamentos, etc.

Ver também