From 53daae649cd296635132b00789966cf4d7e64931 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 28 Oct 2011 00:32:58 +0200 Subject: [PATCH] Fix: pgsql compatibility --- .../compta/paiement/cheque/class/remisecheque.class.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index dfe19ad5988..36e21e6c11a 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -397,10 +397,14 @@ class RemiseCheque extends CommonObject $num=0; - // We use +0 to convert varchar to number - $sql = "SELECT MAX(number+0)"; + // We use +0 to convert varchar to number for mysql, use ::integer for postgres. + // We must found a generic solution (Use a $db->toint function ?) + $sql = "SELECT "; + if ($this->db->type == 'pgsql') $sql.="MAX(number::integer)"; + else $sql.="MAX(number+0)"; $sql.= " FROM ".MAIN_DB_PREFIX."bordereau_cheque"; $sql.= " WHERE entity = ".$conf->entity; + $sql.= " AND number not like '(%'"; dol_syslog("Remisecheque::getNextNumber sql=".$sql); $resql = $this->db->query($sql);