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:
parent
d29639e0ce
commit
6166fcd20c
@ -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;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user