293 |
{ |
{ |
294 |
$action_notify = 2; // ne pas modifier cette valeur |
$action_notify = 2; // ne pas modifier cette valeur |
295 |
|
|
296 |
$numfa = facture_get_num($soc); // définit dans includes/modules/facture |
$numfa = $this->getNextNumRef($soc); |
297 |
|
|
298 |
$sql = "UPDATE ".MAIN_DB_PREFIX."facture set facnumber='$numfa', fk_statut = 1, fk_user_valid = $user->id WHERE rowid = $rowid ;"; |
$sql = "UPDATE ".MAIN_DB_PREFIX."facture set facnumber='$numfa', fk_statut = 1, fk_user_valid = $user->id WHERE rowid = $rowid ;"; |
299 |
$result = $this->db->query( $sql); |
$result = $this->db->query( $sql); |
342 |
} |
} |
343 |
} |
} |
344 |
|
|
345 |
|
/** |
346 |
|
* \brief Renvoie la référence de facture suivante non utilisée en fonction du module |
347 |
|
* de numérotation actif défini dans FACTURE_ADDON |
348 |
|
* \param soc objet societe |
349 |
|
* \return string reference libre pour la facture |
350 |
|
*/ |
351 |
|
function getNextNumRef($soc) |
352 |
|
{ |
353 |
|
global $db, $langs; |
354 |
|
$langs->load("bills"); |
355 |
|
|
356 |
|
$dir = DOL_DOCUMENT_ROOT . "/includes/modules/facture/"; |
357 |
|
|
358 |
|
if (defined("FACTURE_ADDON") && FACTURE_ADDON) |
359 |
|
{ |
360 |
|
$file = FACTURE_ADDON."/".FACTURE_ADDON.".modules.php"; |
361 |
|
|
362 |
|
// Chargement de la classe de numérotation |
363 |
|
$classname = "mod_facture_".FACTURE_ADDON; |
364 |
|
require_once($dir.$file); |
365 |
|
|
366 |
|
$obj = new $classname(); |
367 |
|
|
368 |
|
$numref = ""; |
369 |
|
$numref = $obj->getNumRef($soc,$this); |
370 |
|
|
371 |
|
if ( $numref != "") |
372 |
|
{ |
373 |
|
return $numref; |
374 |
|
} |
375 |
|
else |
376 |
|
{ |
377 |
|
dolibarr_print_error($db,"modules_facture::getNextNumRef ".$obj->error); |
378 |
|
return ""; |
379 |
|
} |
380 |
|
} |
381 |
|
else |
382 |
|
{ |
383 |
|
print $langs->trans("Error")." ".$langs->trans("Error_FACTURE_ADDON_NotDefined"); |
384 |
|
return ""; |
385 |
|
} |
386 |
|
} |
387 |
|
|
388 |
/** |
/** |
389 |
* Ajoute un produit dans la facture |
* Ajoute un produit dans la facture |
390 |
*/ |
*/ |