La numrotation des factures jupiter comptait le nombre de facture et ajout 1 pour avoir le suivant.

Si une facture tait efface de la base, le comptage renvoyait 1 de moins et le numro final obtenu donnait
un numro dj occup. Il faut donc se base non pas sur le nombre mais sur le max et incrment 1 au
max du compteur en cours.
This commit is contained in:
Laurent Destailleur 2004-01-31 01:01:45 +00:00
parent d29639e0ce
commit 6166fcd20c

View File

@ -29,15 +29,14 @@ function facture_get_num($objsoc=0)
$date = strftime("%Y%m", time());
$num=0;
$sql = "SELECT max(facnumber) FROM llx_facture";
$sql = "SELECT max(0+substring(facnumber,8)) FROM llx_facture";
$sql .= " WHERE facnumber like '$prefix".$date."%'";
if ( $db->query($sql) )
{
$row = $db->fetch_row(0);
$num = $row[0]; # $num vaut F200401XX
$num = eregi_replace("$prefix([0-9]{6})","",$num); # $num vaut XX
$num = $row[0];
}
$num++;
return "$prefix" . $date . $num;