Générer automatiquement des documents PDF à partir de fichier ODT

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search


Prérequis

  • Avoir installer le logiciel open source LibreOffice si ce n'est pas déjà effectué sur le serveur.

Configuration

Dans Dolibarr

  • Se connecter avec un compte administrateur
  • Dans Accueil, Configuration, Divers => Ajouter la variable "MAIN_ODT_AS_PDF" avec comme valeur "libreoffice"

Si serveur Linux, sur le serveur

Rien de particulier à faire au delà de l'installation de libreoffice.

Si serveur Windows (exemple avec DoliWamp), sur le serveur

  • Dans le panneau de configuration Windows, Rechercher "modifier les variables d'environnement système"
  • Dans la boîte de dialogue, cliquer sur variables d'environnement en bas à droite.
  • Dans variables système aller sur "Path" et presser sur modifier
  • Cliquer sur ajouter pour ajouter une ligne et parcourir jusqu'au dossier d'installation de LibreOffice "C:\Program Files\LibreOffice\program" (l'endoit ou soffice est installé)


Add soffice to cmd windows.png


  • Editer les fichiers odf.php qui se trouve par défaut dans:

C:\dolibarr\www\dolibarr\htdocs\includes\odtphp\odf.php


Chercher et Remplacer cette ligne ci après:

$command ='soffice --headless -env:UserInstallation=file:"//'.$conf->user->dir_temp.'" --convert-to pdf --outdir '. escapeshellarg(dirname($name)). " ".escapeshellarg($name);

            Par:

$command ='soffice --headless "//'.$conf->user->dir_temp.'" --convert-to pdf --outdir '. escapeshellarg(dirname($name)). " ".escapeshellarg($name);

Enregistrer le fichier        

  • Éditer encore le fichier bootstrap.ini qui se trouve par défaut dans:

C:\Program Files\LibreOffice\program\bootstrap.ini


[Bootstrap]

InstallMode=<installmode>

ProductKey=LibreOffice 7.1

//Remplacer cette ligne par:

UserInstallation=file:///C:/ProgramData/LibreOffice/4


Enregistrer le fichier

Redémarrer les services doliwampmysqld et doliwampapache ou redémarrer l'ordinateur.

Utilisation

Une fois la configuration faite, la génération des PDF est activée et se fera automatiquement par conversion du fichier ODT en PDF après chaque génération d'un document ODT depuis son modèle. Les 2 types de fichiers (ODT / PDF) seront présents lors de la génération d'un document. Si il y une erreur sur le template ODT, le PDF ne se générera pas.


Option pour garder uniquement le fichier PDF

Dans Dolibarr:

  • Se connecter à Dolibarr avec un compte administrateur
  • Dans Accueil, Configuration, Divers => Ajouter la variable "MAIN_ODT_AS_PDF_DEL_SOURCE" avec comme valeur "1"