From 8b307aac56b3f19147c13b75b3e8f3b24356d209 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas <maxime@atm-consulting.fr> Date: Sat, 18 Apr 2015 18:06:27 +0200 Subject: [PATCH] Fix : customer outstanding was not calculated properly --- htdocs/societe/class/societe.class.php | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 2cb3e634841..99d76411239 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -3091,7 +3091,7 @@ class Societe extends CommonObject $alreadypayed=price2num($paiement + $creditnotes + $deposits,'MT'); $remaintopay=price2num($invoice->total_ttc - $paiement - $creditnotes - $deposits,'MT'); */ - $sql = "SELECT sum(total) as amount FROM ".MAIN_DB_PREFIX."facture as f"; + $sql = "SELECT rowid, total_ttc FROM ".MAIN_DB_PREFIX."facture as f"; $sql .= " WHERE fk_soc = ". $this->id; $sql .= " AND paye = 0"; $sql .= " AND fk_statut <> 0"; // Not a draft @@ -3102,8 +3102,17 @@ class Societe extends CommonObject $resql=$this->db->query($sql); if ($resql) { - $obj=$this->db->fetch_object($resql); - return ($obj->amount); + $outstandingBill = 0; + $facturestatic=new Facture($this->db); + while($obj=$this->db->fetch_object($resql)) { + $facturestatic->id=$obj->rowid; + $paiement = $facturestatic->getSommePaiement(); + $creditnotes = $facturestatic->getSumCreditNotesUsed(); + $deposits = $facturestatic->getSumDepositsUsed(); + + $outstandingBill+= $obj->total_ttc - $paiement - $creditnotes - $deposits; + } + return $outstandingBill; } else return 0; -- GitLab