From 8bdfdc0127ceabb2c1af3c4003ab9dbb08d62612 Mon Sep 17 00:00:00 2001 From: fappels <francis.appels@yahoo.com> Date: Thu, 10 Sep 2015 23:12:27 +0200 Subject: [PATCH] Fix #3471 3.5 Rounding issue when dispatching non-integer --- htdocs/fourn/commande/dispatch.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php index 4bc7a22b06b..97f0cad96d8 100644 --- a/htdocs/fourn/commande/dispatch.php +++ b/htdocs/fourn/commande/dispatch.php @@ -229,9 +229,17 @@ if ($id > 0 || ! empty($ref)) $resql = $db->query($sql); if ($resql) { - while ( $row = $db->fetch_row($resql) ) + $num = $db->num_rows($resql); + $i = 0; + + if ($num) { - $products_dispatched[$row[0]] = $row[1]; + while ($i < $num) + { + $objd = $db->fetch_object($resql); + $products_dispatched[$objd->fk_product] = price2num($objd->qty, 5); + $i++; + } } $db->free($resql); } @@ -277,7 +285,7 @@ if ($id > 0 || ! empty($ref)) } else { - $remaintodispatch=($objp->qty - $products_dispatched[$objp->fk_product]); // Calculation of dispatched + $remaintodispatch=(price2num($objp->qty, 5) - $products_dispatched[$objp->fk_product]); // Calculation of dispatched if ($remaintodispatch < 0) $remaintodispatch=0; if ($remaintodispatch) { -- GitLab