Dolibarr est un logiciel open-source qui va du CRM au logiciel de facturation. Existant depuis plus de 10 ans il est désormais en version 7.X et bientôt 8.X. pourtant il est apparaît complexe de pouvoir personnaliser ces documents commerciaux (devis, factures, bon de livraison, bon de commande …). Voici comment personnaliser les modèles par défaut :
Vous n’aurez pas le choix il va falloir modifier du code PHP et aller dans votre gestionnaire de base de données. Des modules existent, mais ne vont pas assez loin.
Créer un modèle de document PDF dans Dolibarr
Nous vous conseillons de dupliquer un modèle existant. En effet selon votre version de Dolibarr, si vous altérez le modèle par défaut vous ne pourrez pas toujours revenir en arrière …
Les documents principaux sont situés dans htdocs/core/modules :
- Commandes : copier commande/doc/pdf_einstein.modules.php
- Factures : copier facture/doc/pdf_crabe.modules.php
- Bon de livraison : copier expedition/doc/pdf_rouget.modules.php
- Propale commerciale : copier expedition/doc/pdf_azur.modules.php
Dupliquer un modèle de document PDF Dolibarr
Avant tout il faut dupliquer les documents ci-dessous et changer :
- Le nom du fichier : pdf_azur.modules.php deviendrait pdf_propale_nomentreprise.modules.php
- Le nom de la classe : class pdf_azur extends ModelePDFPropales deviendrait class pdf_propale_nomentreprise extends ModelePDFPropales
- La variable $this->name = “azur”; deviendrait $this->name = “propale_nomentreprise”;
Par défaut, Dolibarr ne détecte pas votre nouveau modèle, il faut donc aller dans la table llx_document_model et créer votre modèle :
INSERT INTO `llx_document_model` (`rowid`, `nom`, `entity`, `type`, `libelle`, `description`) VALUES (NULL, 'propale_nomentreprise', '1', 'propal', 'propale_nomentreprise', NULL);
Comprendre la librairie FPDF en PHP
FPDF est un librairie emblématique pour toute génération de fichier PDF qui se respecte. Il permet grâce aux coordonnées de pouvoir créer une ergonomie de document sur mesure.
Dolibarr propose des fichiers de modèles de milliers de lignes permettant difficilement de les personnaliser. Voici une explication des différents termes afin de mieux comprendre le code source des modèles.
Appliquer ou modifier une police de caractère
$pdf->SetFont('','B', $default_font_size - 1); // Mise en gras + taille réduite
$pdf->SetTextColor(0,0,0); // Couleur noire
Afficher une valeur
$pdf->writeHTMLCell('Largeur', 'Hauteur','X','Y', 'Valeur','Bordure = 0 ou 1'); // Pour de l'HTML
$pdf->MultiCell('Largeur', 'Hauteur', 'Valeur à afficher, 'Bordure = 0 ou 1', 'Aligner = L, C ou R');
Structure des modèles de document Dolibarr
Les modèles Dolibarr contiennent toujours les mêmes fonctions.
Il faut s’intéresser aux principales pour modifier le document :
Et pourquoi ne pas utiliser les documents ODT
Pouvoir créer un document en intégrant des tags dans un fichier ODT afin d’en faire un modèle est une bonne idée sur le papier. Le souci est que par défaut la génération d’un fichier ODT n’exporte qu’un fichier ODT. La manipulation pour pouvoir exporter en PDF est possible bien que complexe et doit passer par un fichier bash. Je recommande la personnalisation classique des fichiers PDF.
0 Commentaires
Laisser un commentaire