Documentation Développeur
Cette page est l'index des articles en rapport avec la documentation développeur. Pour la documentation utilisateur, voir ici.
Organisation et outils de développement
Ce chapitre regroupe des informations générales qu'il est nécessaire de lire avant de commencer toute action de développement sur Dolibarr.
- Organisation du projet
- A savoir avant de commencer à developper
- Environnement et Outils de développement
- Librairies externes et dépendances
- Récupérer, mettre à jour les sources d'une version
Règles de codage et bonnes pratiques
- Langage et normes de développement (PHP, SQL, HTML)
- Liste des tables
- L'arborescence des fichiers et classes du core est disponible sur la documentation générée doxygen
Liste des modules
La documentation technique, spécifique à un module fonctionnel standard de Dolibarr, est définie sur la page de documentation développeur de chaque module. Choisissez la page qui vous concerne pour y accéder:
- La liste des modules standards est définie sur la page Liste des Modules
- La liste des modules complémentaires est définie sur la page Modules complémentaires
Développer un nouveau module/extension pour les IHM
Cette section décrit comment développer un nouveau module influant sur l'interface utilisateur de Dolibarr. Cela peut être les écrans, le look, le code ou les données.
Le développement de script n'entre pas dans ce périmètre et est décrit au chapitre suivant.
Pour développer votre propre module d'extension Dolibarr, aller sur le didacticiel: Développement module
Développer un script ligne de commande ou batch
Cette section décrit la procédure pour développer son propre script batch afin de réaliser des traitements dans Dolibarr (lecture, écriture, etc...). La réalisation de modifications sur l'interface utilisateur (IHM) ne rentre pas dans ce périmètre. Voir le chapitre précédent pour cela.
Pour développer un script quel qu'il soit, comme un script de traitement cron ou encore un script d'import de données issues d'un autre système, se référer à la page: Développement de scripts
Les couches techniques de Dolibarr
Arborescence des fichiers
La hiérachie des fichiers de la version actuelle est visible sur la documentation générée doxygen des sources (documentation générée style "javadoc").
Les chemins à utiliser pour ajouter vos fichiers lors de la réalisation d'un nouveau module sont décrits dans la documentation de développement d'un nouveau module (voir Développement module).
Le Système de paramétrage
Il existe 3 niveaux de paramétrage dans Dolibarr.
- La configuration technique de Dolibarr (mode authentification à l'application, identifiant de la base de données et location de l'espace de stockage des fichiers) est définie dans le seul fichier de configuration conf/conf.php. Voir Fichier de configuration pour plus d'informations.
- Le paramétrage des fonctionnalités est stocké dans la Table llx_const. Voir la page Constantes pour plus d'informations.
- Le paramétrage propre à un utilisateur est stocké dans la Table llx_user_param. Voir la page Constantes pour plus d'informations.
Les objets métiers
Voir la page Objets métiers
Voir la page Système de menus
Le Système des onglets
Voir la page Système d'onglets
Le Système des thèmes
Voir la page Themes
Le Système des boites
Voir la page Système des boites
Le Système d'authentification
Voir la page Authentification
Le Système des permissions
Voir la page Permissions
Le Système de traduction
Voir la page Système de traduction
La Gestion d'erreur
Voir la page Gestion d'erreur
Le système des Canvas (surcharge écrans)
Les Canvas sont une fonction développeur pour remplacer les écrans de création, mise a jour ou visualisation d'une fiche (produits, tiers, contacts, ...). Par exemple, vous pouvez remplacer le formulaire de saisie d'un tiers par le votre, ou le formulaire d'édition, ou l'écran de consultation.
Voir la page Développement Canvas
Le système des Triggers
Les Triggers sont une fonctionnalité développeurs pour exécuter du code personnaliser durant l'exécution d'un "événement métier" Dolibarr (création de facture, suppression d'un utilisateur, mise à jour d'un tier, etc...), et uniquement pour des événements métiers. Pour personnaliser du code dans un autre contexte, voir plutôt le chapitre Le système des Hooks.
Pour l'utilisation des triggers voir cette page.
Le Système de Hooks
Voir la page Système de Hooks
Le Système de substitution de variables
Voir la page Système de substitution de variables
Les Web services
Dolibarr peut être configuré pour fournir des services accessible à un système extérieur.
Voir le Module Web Services API REST (développeur)
Note: Le Module Services Web API SOAP (développeur) est déprécié.
Le stockage de fichiers/documents
Voir la page Documents générés
Les modules de numérotation
Pour chaque entité créée dans l'application, Dolibarr attribue une référence. Afin de pouvoir adapter cette référence à toute utilisation, Dolibarr utilise des modules pour définir la règle de génération de cette référence. Des modules sont fournis en standard dontcertains sont génériques et permettent de définir le masque de numérotation (nombre sur x caractère, avec ou sans préfixe, incluant la date ou pas, etc), ce qui permet de répondre à la plupart des besoins. Toutefois, il existe toujours des cas où le module fourni en standard ne réponds pas au besoin. Dans ce cas il est nécessaire de développer son propre module de numérotation. Plus d'information sur la page Créer un module de numérotation.
Les modèles et la génération de documents
Plus de documentation au sujet de la génération de documents depuis des modèles est disponible sur la page Créer un modèle de document PDF ou Créer un modèle de document ODT.
Les exports/imports de masse
Interfaces et liens avec d'autres applications
Interfaces using API or WebHooks:
- Interfaces Dolibarr vers exterieur ou Dolibarr vers Dolibarr (Triggers, Hooks ou WebHooks Dolibarr)
- Interfaces Exterieur vers Dolibarr (API WebServices)
Integrer Dolibarr avec une plateforme de synchronization:
Integrer Dolibarr avec une plateforme d'automation/nocode:
- Integration of Dolibarr to the Zapier automation platform
- Integration of Dolibarr to the n8n automation platform
- Integration of Dolibarr to the Make automation platform
FAQ
Toutes les FAQ (Foires Aux Questions) sont disponibles via la page d'index FAQ FR