Soucis avec les triggers

J’essais d’utiliser les triggers pour greffer des actions personnalisées mais je n’y arrive pas.

J’ai mon fichier trigger dans mon module et il semble bien être reconnu puisque je l’ai dans les logs :
Interfaces::run_triggers action=ORDER_VALIDATE Launch runTrigger for file ‹ interface_19_modCoucou_CoucouTriggers.class.php ›
Interfaces::run_triggers action=ACTION_CREATE Launch runTrigger for file ‹ interface_19_modCoucou_CoucouTriggers.class.php ›

cependant j’ai l’impression que le code n’est pas exécuté à l’intérieur :

public function runTrigger($action, $object, User $user, Translate $langs, Conf $conf)
 {
      if (!empty($conf->coucou->enabled)) return 0;    
			if($action == "ORDER_VALIDATE"){
				dol_syslog("COUCOU Mon Trigger est lancé ");
					return 1;
			}

	return 0;
}

En effet je ne retrouve rien dans mes logs.

Après une journée de recherche je capitule et je suis à l’écoute de vos suggestions.

Dolibarr version 6
Module créer via le module Builder

Merci

Bonjour,

Interfaces::run_triggers action=ACTION_CREATE
et
if($action == « ORDER_VALIDATE »){

C’est à priori normal que ça n’affiche rien

J’ai bien ORDER_VALIDATE dans mes logs également (erreur de copier coller)

Et si tu fais juste un :

[code]
public function runTrigger($action, $object, User $user, Translate $langs, Conf $conf)
{
print_r($object);

return 0;

}[/code]

1 « J'aime »

Ok
le probleme venait de la ligne :

if (!empty($conf->coucou->enabled)) return 0;
qui n’etait jamais vide puisque valant 0 ou 1 apparament.

Vu que c’est le module builder qui a mis cette ligne je l’avais pas tester.

Merci de m’avoir mis sur la piste.