Crear un modelo de documento ODT

Esta página describre como construir un modelo de documento ODT para usar en la generación de documentos ODT.

Para saber como generar un modelo de documento PDF, vea la página Crear un modelo de documento PDF. Crear un podelo PDF requiere conocimientos de programación en PHP, pero la creación de modelos ODT no.

Prerrequisitos

 * Dolibarr: 3.1+
 * OpenOffice: 3.2+, LibreOffice, ...

Crear su documento
Se encuentran instalados en los subdirectorios del directorio documents/doctemplates Incluya en sus documentos los tags de las informaciones que desee ver. Dolibarr reemplazará los tags automáticamente en el momento de la generación del documento. La lista de los tags disponibles se describe a continuación.
 * Crear un documento OpenOffice o LibreOffice partiendo de cero o tomando algún ejemplo.
 * Editar el documento usando todas las funciones de su suite.

Atención, los tags están encerrados con {} o con [] para las tablas (ver más abajo) y se deben escribir de una sola vez en la suite de Office (sin retrocesos o eliminaciones, ni copiar y pegar). De lo contrario, la suite de Office añadirá información invisible que impide la sustitución.

Tags
He aquí la lista de los tags que serán reemplazados por la información apropiada:

Líneas de los objetos
Le explicaremos como usar las tablas de líneas de los objetos (líneas de facturas, pedidos, etc...). Deberá crear una tabla en el documento y usar las balizas "begin" y "end" para definir la línea de la tabla. Esta línea se repitirá tantas veces como sea necesario en el momento de la generación. [!-- BEGIN row.lines --] ... [!-- END row.lines --]

A continuación, añada los tags de líneas entre las dos balizas:

Este es un ejemplo de como puede quedar en su procesador de textos:

Otros tags personalizados
Si quiere añadir un campo de sustitución no predefenido:
 * Añadir un archivo en htdocs/mimodulo/core/substitutions/functions_mymodule.lib.php
 * En este archivo, escribir una función como esta:

La función será llamada antes de la generación del documento para completar la tabla de sustituciones que reemplazará el tag myowntag por el valor definido en $myvalue. Puede añadir tantos tags como necesite y meter el código que quiera pare definir los valores (sacados de la base de datos, calculados, a partir de variables recibidas o globales, etc.).

Atención: El primer parámetro de la declaración de la función debe empezar por & ya que es modificado por el código y debe devolverse modificado.

Creado un módulo (Ver la página Desarrollo de un módulo), puede emplazar el archivo de substititución en un directorio de su módulo llamado htdocs/mimodulo/core/substitutions. Sin embargo, la función sólo será llamada si el descriptor de módulo contiene una entrada y que el módulo haya sido activado.

Guardar su documento
Para ver su modelo de documento en la lista de modelos disponibles, guarde lo en el subdirectorio adecuado que se encuentra en el directorio documents/doctemplates