31,003
edits
No edit summary |
mNo edit summary |
||
| Line 1: | Line 1: | ||
== Ajouter son code sur un évênement == | |||
Pour permettre de déclencher du code personalisé en réaction à un évenement Dolibarr (création/modification/suppression d'une société/facture/produit), Dolibarr propose un mécanisme de triggers. | Pour permettre de déclencher du code personalisé en réaction à un évenement Dolibarr (création/modification/suppression d'une société/facture/produit), Dolibarr propose un mécanisme de triggers. | ||
Pour ajouter son propre code à déclencher par trigger, la procédure est la suivante: | Pour ajouter son propre code à déclencher par trigger, la procédure est la suivante: | ||
# Copier le fichier includes/triggers/interface_demo.class.php sous le nom interface_xxx.class.php (ou xxx est une chaine de votre choix), en le laissant dans le meme répertoire. Par exemple includes/triggers/interface_monworkflow.class.php | |||
# Editer ce fichier interface_monworkflow.class.php afin d'ajouter votre code dans la fonction run_trigger. Cette fonction est appelée à chaque évennement Dolibarr. Placer votre code en fonction du ou des évenements sur lesquels vous voulez réagir, chaque évenement étant identifié par un test sur la variable $action: | |||
function run_trigger($action,$object,$user,$lang,$conf) | function run_trigger($action,$object,$user,$lang,$conf) | ||
| Line 22: | Line 24: | ||
... | ... | ||
} | } | ||
== Gérer de nouveux évênements == | |||
Les évenements Dolibarr qui provoquent un appel de triggers sont, pour l'instant, identifiés par les codes évenements suivants: | Les évenements Dolibarr qui provoquent un appel de triggers sont, pour l'instant, identifiés par les codes évenements suivants: | ||
| Line 37: | Line 42: | ||
// Fin appel triggers | // Fin appel triggers | ||
Ici, $this doit etre l'objet de la classe metier qui contient toutes les informations à passer au trigger. Remplacer, de plus, le 'XXXXX_YYYYYY' par un code évenement non déjà utilisé. | |||
Il sera alors possible d'ajouter dans la methode run_trigger, un if qui permet de gérer ce code. La methode run_trigger serait alors de la forme : | Il sera alors possible d'ajouter dans la methode run_trigger, un if qui permet de gérer ce code. La methode run_trigger serait alors de la forme : | ||