/[dolibarr]/dolibarr/htdocs/telephonie/script/import-cdr-bt.php
ViewVC logotype

Diff of /dolibarr/htdocs/telephonie/script/import-cdr-bt.php

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

revision 1.3 by rodolphe, Thu Apr 7 10:07:57 2005 UTC revision 1.4 by rodolphe, Tue Nov 8 14:07:39 2005 UTC
# Line 23  Line 23 
23    
24  require ("../../master.inc.php");  require ("../../master.inc.php");
25    
26  $opt = getopt("f:i:");  $opt = getopt("f:");
27    
28  $file = $opt['f'];  $file = $opt['f'];
29  $id_fourn = $opt['i'];  $id_fourn = 2;
30    
31  if (strlen($file) == 0 || strlen($id_fourn) == 0)  if (strlen($file) == 0)
32  {  {
33    print "Usage :\n php import-cdr-bt.php -f <filename> -i <id_fournisseur>\n";    print "Usage :\n php import-cdr-bt.php -f <filename>\n";
34    exit;    exit;
35  }  }
36    
# Line 52  if (is_dir($file)) Line 52  if (is_dir($file))
52                
53        while (($xfile = readdir($handle))!==false)        while (($xfile = readdir($handle))!==false)
54          {          {
55            if (is_file($file.$xfile) && substr($xfile, -4) == ".csv")            if (is_file($file.$xfile) )
56              {              {
57                $files[$i] = $file.$xfile;                if (substr($xfile, -4) == ".csv")
58                dolibarr_syslog($file.$xfile." ajouté");                  {
59                $i++;                    $files[$i] = $file.$xfile;
60              }                    dolibarr_syslog($file.$xfile." ajouté");
61            else                    $i++;
62              {                  }
63                dolibarr_syslog($file.$xfile." ignoré");                else
64                    {
65                      dolibarr_syslog($file.$xfile." ignoré");
66                    }
67              }              }
68          }          }
69                
# Line 82  else Line 85  else
85    exit ;    exit ;
86  }  }
87    
88    /*
89     * Renommage des fichiers
90     *
91     */
92    $datetime = time();
93    $month = strftime("%m", $datetime);
94    $year = strftime("%y", $datetime);
95    
96    if ($month == 1)
97    {
98      $month = "12";
99      $year = substr("00".($year - 1), -2) ;
100    }
101    else
102    {
103      $month = substr("00".($month - 1), -2) ;
104    }
105    $newfiles = array();
106    $j = 0;
107    foreach ($files as $xfile)
108    {
109      if (is_readable($xfile))
110        {
111          dolibarr_syslog("Traitement de ".basename($xfile));
112          $newname = str_replace(".csv","-$month$year.csv",$xfile);
113          if (substr($xfile,-9) <> "-$month$year.csv")
114            {
115              if (rename($xfile, $newname))
116                {
117                  dolibarr_syslog("Renomme en ".$newname);
118                  $newfiles[$j] = $newname;
119                  $j++;
120                }
121              else
122                {
123                  print "Erreur de renommage de $xfile\n";
124                  exit;
125                }
126            }
127          else
128            {
129              $newfiles[$j] = $xfile;
130              $j++;
131            }
132        }
133    }
134    
135  /*  /*
136   * Vérification du fournisseur   * Vérification du fournisseur
# Line 148  else Line 196  else
196  }  }
197    
198    
199    $line_inserted_total = 0;
200  foreach ($files as $xfile)  foreach ($newfiles as $xfile)
201  {  {
202    if (is_readable($xfile))    if (is_readable($xfile))
203      {      {
204        if ( _verif($db, $xfile) == 0)        //      if ( _verif($db, $xfile) == 0)
205          if (true)
206          {          {
207                
208            dolibarr_syslog("Lecture du fichier $xfile");            dolibarr_syslog("Lecture du fichier $xfile");
# Line 244  foreach ($files as $xfile) Line 293  foreach ($files as $xfile)
293                                    if ($db->query($sql))                                    if ($db->query($sql))
294                                      {                                      {
295                                        $line_inserted++;                                        $line_inserted++;
296                                          $line_inserted_total++;
297                                      }                                      }
298                                    else                                    else
299                                      {                                      {
# Line 257  foreach ($files as $xfile) Line 307  foreach ($files as $xfile)
307                                  {                                  {
308                                    print "Ligne : $cont ignorée\n";                                    print "Ligne : $cont ignorée\n";
309                                    $error++;                                    $error++;
310                                  }                                  }                        
                             
311                              }                              }
312                            else                            else
313                              {                              {
314                                dolibarr_syslog("Ligne : $ligne ignorée!");                                dolibarr_syslog("Ligne : $ligne ignorée!");
315                                $error++;                                $error++;
316                              }                              }
                         
317                          }                          }
318                        else                        else
319                          {                          {
# Line 276  foreach ($files as $xfile) Line 324  foreach ($files as $xfile)
324                      }                      }
325                    $line++;                    $line++;
326                  }                  }
327                            if ($line <> $line_inserted)
328                dolibarr_syslog($line." lignes traitées dans le fichier");                  {
329                dolibarr_syslog($line_inserted." insert effectués");                    dolibarr_syslog($line."/".$line_inserted." lignes traitées/insert effectués");
330                    }
331                        
332                if ($error == 0)                if ($error == 0)
333                  {                          {        
334                    $db->query("COMMIT");                    $db->query("COMMIT");
                   dolibarr_syslog("COMMIT");  
335                  }                  }
336                else                else
337                  {                  {
338                    $db->query("ROLLBACK");                    $db->query("ROLLBACK");
339                    dolibarr_syslog("ROLLBACK");                    dolibarr_syslog("ROLLBACK");
340                  }                  }        
341                          }      
             }  
         
342            fclose($hf);            fclose($hf);
343          }          }
344      }      }
# Line 303  foreach ($files as $xfile) Line 349  foreach ($files as $xfile)
349      }      }
350  }  }
351    
352    dolibarr_syslog($line_inserted_total." insert effectués total");
353    
354    /*
355     * Fin
356     *
357     */
358    
359  function _verif($db, $file)  function _verif($db, $file)
360  {  {

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

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