From c596f8d9bd0fa206434d0f55ad69a42f6c0182c3 Mon Sep 17 00:00:00 2001 From: Ion Agorria Date: Sun, 10 Jul 2016 23:05:51 +0200 Subject: [PATCH 1/2] New: Trigger for set status in supplier order --- htdocs/fourn/class/fournisseur.commande.class.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index 8143871918d..fecefaa60e0 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -2104,7 +2104,10 @@ class CommandeFournisseur extends CommonOrder $resql = $this->db->query($sql); if ($resql) { - //TODO: Add trigger for status modification + // Call trigger + $result=$this->call_trigger('ORDER_SUPPLIER_SET_STATUS',$user); + if ($result < 0) { $error++; } + // End call triggers } else { From 078439cf18990f7dbe6ce0c3ce59ae07f9a1294e Mon Sep 17 00:00:00 2001 From: Ion Agorria Date: Tue, 26 Jul 2016 19:53:29 +0200 Subject: [PATCH 2/2] Use different trigger name per status --- htdocs/fourn/class/fournisseur.commande.class.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index fecefaa60e0..396cdb82012 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -2104,8 +2104,20 @@ class CommandeFournisseur extends CommonOrder $resql = $this->db->query($sql); if ($resql) { + // Trigger names for each status + $trigger_name[0] = 'DRAFT'; + $trigger_name[1] = 'VALIDATED'; + $trigger_name[2] = 'APPROVED'; + $trigger_name[3] = 'ONPROCESS'; + $trigger_name[4] = 'RECEIVED_PARTIALLY'; + $trigger_name[5] = 'RECEIVED_ALL'; + $trigger_name[6] = 'CANCELED'; + $trigger_name[7] = 'CANCELED'; + $trigger_name[8] = 'BILLED'; + $trigger_name[9] = 'REFUSED'; + // Call trigger - $result=$this->call_trigger('ORDER_SUPPLIER_SET_STATUS',$user); + $result=$this->call_trigger("ORDER_SUPPLIER_STATUS_".$trigger_name[$status],$user); if ($result < 0) { $error++; } // End call triggers }