/[dolibarr]/dolibarr/htdocs/contrat/contrat.class.php
ViewVC logotype

Diff of /dolibarr/htdocs/contrat/contrat.class.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.50 by eldy, Sat Sep 24 01:10:17 2005 UTC revision 1.51 by eldy, Sat Sep 24 01:25:19 2005 UTC
# Line 584  class Contrat Line 584  class Contrat
584       *      \param     datestart        Date de debut prévue       *      \param     datestart        Date de debut prévue
585       *      \param     dateend          Date de fin prévue       *      \param     dateend          Date de fin prévue
586       *      \param     tvatx            Taux TVA       *      \param     tvatx            Taux TVA
587         *      \param     date_debut_reel  Date de debut réelle
588         *      \param     date_fin_reel    Date de fin réelle
589       *      \return    int              < 0 si erreur, > 0 si ok       *      \return    int              < 0 si erreur, > 0 si ok
590       */       */
591      function updateline($rowid, $desc, $pu, $qty, $remise_percent=0, $datestart='', $dateend='', $tvatx)      function updateline($rowid, $desc, $pu, $qty, $remise_percent=0,
592             $datestart='', $dateend='', $tvatx,
593             $date_debut_reel='', $date_fin_reel='')
594      {      {
595  // On doit pouvoir modifier datestart et dateend meme si non brouillon          // Nettoyage parametres
596  //        if ($this->statut == 0)          $qty=trim($qty);
597  //        {          $desc=trim($desc);
598              // Nettoyage parametres          $desc=trim($desc);
599              $qty=trim($qty);          $price = ereg_replace(",",".",$pu);
600              $desc=trim($desc);          $tvatx = ereg_replace(",",".",$tvatx);
601              $desc=trim($desc);          $subprice = $price;
602              $price = ereg_replace(",",".",$pu);          $remise = 0;
603              $tvatx = ereg_replace(",",".",$tvatx);          if (strlen($remise_percent) > 0)
604              $subprice = $price;          {
605              $remise = 0;              $remise = round(($pu * $remise_percent / 100), 2);
606              if (strlen($remise_percent) > 0)              $price = $pu - $remise;
607              {          }
608                  $remise = round(($pu * $remise_percent / 100), 2);          else
609                  $price = $pu - $remise;          {
610              }              $remise_percent=0;
611              else          }
612              {  
613                  $remise_percent=0;          dolibarr_syslog("Contrat::UpdateLine $rowid, $desc, $pu, $qty, $remise_percent, $datestart, $dateend, $tvatx");
614              }      
615                $this->db->begin();
616              dolibarr_syslog("Contrat::UpdateLine $rowid, $desc, $pu, $qty, $remise_percent, $datestart, $dateend, $tvatx");  
617            $sql = "UPDATE ".MAIN_DB_PREFIX."contratdet set description='".addslashes($desc)."'";
618            $sql .= ",price_ht='" .     ereg_replace(",",".",$price)."'";
619            $sql .= ",subprice='" .     ereg_replace(",",".",$subprice)."'";
620            $sql .= ",remise='" .       ereg_replace(",",".",$remise)."'";
621            $sql .= ",remise_percent='".ereg_replace(",",".",$remise_percent)."'";
622            $sql .= ",qty='$qty'";
623            $sql .= ",tva_tx='".        ereg_replace(",",".",$tvatx)."'";
624    
625            if ($datestart > 0) { $sql.= ",date_ouverture_prevue=".$this->db->idate($datestart); }
626            else { $sql.=",date_ouverture_prevue=null"; }
627            if ($dateend > 0) { $sql.= ",date_fin_validite=".$this->db->idate($dateend); }
628            else { $sql.=",date_fin_validite=null"; }
629            if ($date_debut_reel > 0) { $sql.= ",date_ouverture=".$this->db->idate($date_debut_reel); }
630            else { $sql.=",date_ouverture=null"; }
631            if ($date_fin_reel > 0) { $sql.= ",date_cloture=".$this->db->idate($date_fin_reel); }
632            else { $sql.=",date_cloture=null"; }
633                    
634              $this->db->begin();          $sql .= " WHERE rowid = $rowid ;";
635        
636              $sql = "UPDATE ".MAIN_DB_PREFIX."contratdet set description='".addslashes($desc)."'";          $result = $this->db->query($sql);
637              $sql .= ",price_ht='" .     ereg_replace(",",".",$price)."'";          if ($result)
638              $sql .= ",subprice='" .     ereg_replace(",",".",$subprice)."'";          {
639              $sql .= ",remise='" .       ereg_replace(",",".",$remise)."'";              $this->update_price();
640              $sql .= ",remise_percent='".ereg_replace(",",".",$remise_percent)."'";  
641              $sql .= ",qty='$qty'";              $this->db->commit();
642              $sql .= ",tva_tx='".        ereg_replace(",",".",$tvatx)."'";  
643                    return 1;
644              if ($datestart > 0) { $sql.= ",date_ouverture_prevue=".$this->db->idate($datestart); }          }
645              else { $sql.=",date_ouverture_prevue=null"; }          else
646              if ($dateend > 0) { $sql.= ",date_fin_validite=".$this->db->idate($dateend); }          {
647              else { $sql.=",date_fin_validite=null"; }              $this->db->rollback();
648                    $this->error=$this->db->error();
649              $sql .= " WHERE rowid = $rowid ;";              dolibarr_syslog("Contrat::UpdateLigne Erreur -1");
650        
651              $result = $this->db->query($sql);              return -1;
652              if ($result)          }
             {  
                 $this->update_price();  
       
                 $this->db->commit();  
       
                 return 1;  
             }  
             else  
             {  
                 $this->db->rollback();  
                 $this->error=$this->db->error();  
                 dolibarr_syslog("Contrat::UpdateLigne Erreur -1");  
       
                 return -1;  
             }  
 //        }  
 //        else  
 //        {  
 //            dolibarr_syslog("Contrat::UpdateLigne Erreur -2 Contrat en mode incompatible pour cette action");  
 //            return -2;  
 //        }  
653      }      }
654            
655      /**      /**

Legend:
Removed from v.1.50  
changed lines
  Added in v.1.51

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26