Modif fonction set_credite update le statut des lignes de prelevement

et ensère le tout dans une transaction SQL
This commit is contained in:
Rodolphe Quiedeville 2005-01-19 13:58:14 +00:00
parent 55a5f7be35
commit 0c7c2f1240

View File

@ -103,12 +103,24 @@ class BonPrelevement
*/ */
function set_credite() function set_credite()
{ {
$error == 0;
if ($this->db->query("BEGIN"))
{
$sql = " UPDATE ".MAIN_DB_PREFIX."prelevement "; $sql = " UPDATE ".MAIN_DB_PREFIX."prelevement ";
$sql .= " SET credite = 1"; $sql .= " SET credite = 1";
$sql .= " WHERE rowid=".$this->id; $sql .= " WHERE rowid=".$this->id;
$result=$this->db->query($sql); $result=$this->db->query($sql);
if ($result) if (! $result)
{
dolibarr_syslog("bon-prelevment::set_credite Erreur 1");
$error++;
}
if ($error == 0)
{ {
/** /**
* *
@ -127,10 +139,47 @@ class BonPrelevement
$fac->set_payed($facs[$i]); $fac->set_payed($facs[$i]);
} }
} }
if ($error == 0)
{
/*
* Change le statut des lignes de factures
*/
$sql = " UPDATE ".MAIN_DB_PREFIX."prelevement_facture ";
$sql .= " SET statut = 1";
$sql .= " WHERE fk_prelevement=".$this->id;
$result=$this->db->query($sql);
if (!$result)
{
dolibarr_syslog("bon-prelevment::set_credite Erreur 3");
$error++;
}
}
/*
* Fin de la procédure
*
*/
if ($error == 0)
{
$this->db->query("COMMIT");
return 0;
}
else else
{ {
dolibarr_syslog("bon-prelevment::Fetch Erreur "); $this->db->query("ROLLBACK");
dolibarr_syslog($sql); dolibarr_syslog("bon-prelevment::set_credite ROLLBACK ");
return -1;
}
}
else
{
dolibarr_syslog("bon-prelevment::set_credite Ouverture transaction SQL impossible ");
return -2; return -2;
} }
} }