diff --git a/htdocs/compta/facture.php3 b/htdocs/compta/facture.php3 index e15a5af8f44..beb37b399c1 100644 --- a/htdocs/compta/facture.php3 +++ b/htdocs/compta/facture.php3 @@ -20,6 +20,7 @@ * */ require("./pre.inc.php3"); +require("../facture.class.php3"); llxHeader(); @@ -56,41 +57,58 @@ if ($action == 'delete') { if ($action == 'add') { $datefacture = $db->idate(mktime(12, 0 , 0, $pmonth, $pday, $pyear)); - $sql = "INSERT INTO llx_facture (facnumber, fk_soc, datec, datef, note, amount, remise, tva, total, author) "; - $sql .= " VALUES ('$facnumber', $socid, now(), $datefacture,'$note', $amount, $remise, $tva, $total, '$author');"; - $result = $db->query($sql); + if (! $propalid) { - if ($result) { - $sql = "SELECT rowid, facnumber FROM llx_facture WHERE facnumber='$facnumber';"; - $result = $db->query($sql); - if ($result) { - $objfac = $db->fetch_object( 0); - $facid = $objfac->rowid; - $facnumber = $objfac->facnumber; - $action = ''; + $facture = new Facture($db, $socid); + $facture->number = $facnumber; + $facture->date = $datefacture; - $sql = "INSERT INTO llx_fa_pr (fk_facture,fk_propal) VALUES ($facid, $propalid);"; - $result = $db->query($sql); + $facture->note = $note; + $facture->amount = $amount; + $facture->remise = $remise; + $facture->create($user->id, $statut, $note); - /* - * - * Génération du PDF - * - */ - - // print "
"; - - // $command = "export DBI_DSN=\"".$GLOBALS["DBI"]."\" "; - // $command .= " ; ../../scripts/facture-tex.pl --facture=$facid --pdf --ps" ; - - // $output = system($command); - // print "
command : $command
";
-
- }
} else {
- print "
Erreur : la facture n'a pas été créée, vérifier le numéro !"; - print "
Retour à la propal"; + + $sql = "INSERT INTO llx_facture (facnumber, fk_soc, datec, datef, note, amount, remise, tva, total, author) "; + $sql .= " VALUES ('$facnumber', $socid, now(), $datefacture,'$note', $amount, $remise, $tva, $total, '$author');"; + $result = $db->query($sql); + + if ($result) { + + $sql = "SELECT rowid, facnumber FROM llx_facture WHERE facnumber='$facnumber';"; + $result = $db->query($sql); + if ($result) { + $objfac = $db->fetch_object( 0); + $facid = $objfac->rowid; + $facnumber = $objfac->facnumber; + $action = ''; + + $sql = "INSERT INTO llx_fa_pr (fk_facture,fk_propal) VALUES ($facid, $propalid);"; + $result = $db->query($sql); + + + /* + * + * Génération du PDF + * + */ + + // print "
"; + + // $command = "export DBI_DSN=\"".$GLOBALS["DBI"]."\" "; + // $command .= " ; ../../scripts/facture-tex.pl --facture=$facid --pdf --ps" ; + + // $output = system($command); + // print "
command : $command
";
+
+ }
+ } else {
+ print "
Erreur : la facture n'a pas été créée, vérifier le numéro !"; + print "
Retour à la propal"; + print $db->error(); + } } $facid = $facid; $action = ''; @@ -107,11 +125,19 @@ if ($action == 'add') { if ($action == 'create') { print_titre("Emettre une facture"); + if ($propalid) { - $sql = "SELECT s.nom, s.prefix_comm, s.idp, p.price, p.remise, p.tva, p.total, p.ref, ".$db->pdate("p.datep")." as dp, c.id as statut, c.label as lst"; - $sql .= " FROM societe as s, llx_propal as p, c_propalst as c WHERE p.fk_soc = s.idp AND p.fk_statut = c.id"; + $sql = "SELECT s.nom, s.prefix_comm, s.idp, p.price, p.remise, p.tva, p.total, p.ref, ".$db->pdate("p.datep")." as dp, c.id as statut, c.label as lst"; + $sql .= " FROM societe as s, llx_propal as p, c_propalst as c WHERE p.fk_soc = s.idp AND p.fk_statut = c.id"; - $sql .= " AND p.rowid = $propalid"; + $sql .= " AND p.rowid = $propalid"; + } else { + + $sql = "SELECT s.nom, s.prefix_comm, s.idp "; + $sql .= "FROM societe as s "; + $sql .= "WHERE s.idp = $socidp"; + + } if ( $db->query($sql) ) { $num = $db->num_rows(); @@ -120,28 +146,45 @@ if ($action == 'create') { $numfa = "F-" . $obj->prefix_comm . "-" . strftime("%y%m%d", time()); - print "