diff --git a/htdocs/compta/prelevement/class/bonprelevement.class.php b/htdocs/compta/prelevement/class/bonprelevement.class.php index 89aa09523e7..1574fc3eb60 100644 --- a/htdocs/compta/prelevement/class/bonprelevement.class.php +++ b/htdocs/compta/prelevement/class/bonprelevement.class.php @@ -1136,12 +1136,22 @@ class BonPrelevement extends CommonObject * Get object and lines from database * * @param User $user Object user that delete + * @param int $notrigger 1=Does not execute triggers, 0= execute triggers * @return int >0 if OK, <0 if KO */ - function delete($user=null) + function delete($user=null, $notrigger = 0) { $this->db->begin(); + $error = 0; + if (! $notrigger) + { + // Call trigger + $result=$this->call_trigger('BON_PRELEVEMENT_DELETE', $user); + if ($result < 0) $error++; + // End call triggers + } + $sql = "DELETE FROM ".MAIN_DB_PREFIX."prelevement_facture WHERE fk_prelevement_lignes IN (SELECT rowid FROM ".MAIN_DB_PREFIX."prelevement_lignes WHERE fk_prelevement_bons = ".$this->id.")"; $resql1=$this->db->query($sql); if (! $resql1) dol_print_error($this->db); @@ -1158,7 +1168,7 @@ class BonPrelevement extends CommonObject $resql4=$this->db->query($sql); if (! $resql4) dol_print_error($this->db); - if ($resql1 && $resql2 && $resql3) + if ($resql1 && $resql2 && $resql3 && !$error) { $this->db->commit(); return 1;