GAzie PHP Cross Reference Customer Relationship Management

Source: /modules/vendit/select_evaord.php - 926 lines - 50725 bytes - Summary - Text - Print

   1  <?php
   2  /*

   3   --------------------------------------------------------------------------

   4                              GAzie - Gestione Azienda

   5      Copyright (C) 2004-2014 - Antonio De Vincentiis Montesilvano (PE)

   6           (http://www.devincentiis.it)

   7             <http://gazie.sourceforge.net>

   8   --------------------------------------------------------------------------

   9      Questo programma e` free software;   e` lecito redistribuirlo  e/o

  10      modificarlo secondo i  termini della Licenza Pubblica Generica GNU

  11      come e` pubblicata dalla Free Software Foundation; o la versione 2

  12      della licenza o (a propria scelta) una versione successiva.

  13  

  14      Questo programma  e` distribuito nella speranza  che sia utile, ma

  15      SENZA   ALCUNA GARANZIA; senza  neppure  la  garanzia implicita di

  16      NEGOZIABILITA` o di  APPLICABILITA` PER UN  PARTICOLARE SCOPO.  Si

  17      veda la Licenza Pubblica Generica GNU per avere maggiori dettagli.

  18  

  19      Ognuno dovrebbe avere   ricevuto una copia  della Licenza Pubblica

  20      Generica GNU insieme a   questo programma; in caso  contrario,  si

  21      scriva   alla   Free  Software Foundation,  Inc.,   59

  22      Temple Place, Suite 330, Boston, MA 02111-1307 USA Stati Uniti.

  23   --------------------------------------------------------------------------

  24  */
  25  require ("../../library/include/datlib.inc.php");
  26  require ("../../modules/magazz/lib.function.php");
  27  $admin_aziend=checkAdmin();
  28  $anno=date("Y");
  29  $msg = "";
  30  
  31  $upd_mm = new magazzForm;
  32  $docOperat = $upd_mm->getOperators();
  33  
  34  if (!isset($_POST['ritorno'])) {
  35          $_POST['ritorno'] = $_SERVER['HTTP_REFERER'];
  36  }
  37  if (!isset($_POST['id_tes'])) { //al primo accesso  faccio le impostazioni ed il controllo di presenza ordini evadibili
  38     $_POST['num_rigo'] = 0;
  39     $form['hidden_req'] = '';
  40     $form['righi']= array();
  41     $form['indspe'] = '';
  42     $form['search']['clfoco']='';
  43     $form['id_tes'] = "new";
  44     $form['seziva'] = 1;
  45     $form['datemi_D'] = date("d");
  46     $form['datemi_M'] = date("m");
  47     $form['datemi_Y'] = $anno;
  48     $form['initra_D'] = date("d");
  49     $form['initra_M'] = date("m");
  50     $form['initra_Y'] = $anno;
  51     $form['initra_I'] = date("i");
  52     $form['initra_H'] = date("H");
  53     $form['traspo'] = 0.00;
  54     $form['speban'] = 0.00;
  55     $form['stamp'] = 0.00;
  56     $form['vettor'] = "";
  57     $form['portos'] = "";
  58     $form['imball'] = "";
  59     $form['pagame'] = "";
  60     $form['destin'] = '';
  61     $form['caumag'] = '';
  62     $form['id_agente'] = 0;
  63     $form['banapp'] = "";
  64     $form['spediz'] = "";
  65     $form['sconto'] = 0.00;
  66     $form['ivaspe'] = $admin_aziend['alliva'];
  67     $form['listin'] = 1;
  68     $form['net_weight'] = 0;
  69     $form['gross_weight'] = 0;
  70     $form['units'] = 0;
  71     $form['volume'] = 0;
  72     if (isset($_GET['id_tes'])) { //se  stato richiesto un ordine specifico lo carico
  73        $form['id_tes'] = intval($_GET['id_tes']);
  74        $testate = gaz_dbi_get_row($gTables['tesbro'],"id_tes",$form['id_tes']);
  75        $form['clfoco'] = $testate['clfoco'];
  76        $anagrafica = new Anagrafica();
  77        $cliente = $anagrafica->getPartner($form['clfoco']);
  78        $form['search']['clfoco']=substr($cliente['ragso1'],0,10);
  79        $form['seziva'] = $testate['seziva'];
  80        $form['indspe'] = $cliente['indspe'];
  81        $form['traspo'] = $testate['traspo'];
  82        $form['speban'] = $testate['speban'];
  83        $form['stamp']  = $testate['stamp'];
  84        $form['vettor'] = $testate['vettor'];
  85        $form['portos'] = $testate['portos'];
  86        $form['imball'] = $testate['imball'];
  87        $form['pagame'] = $testate['pagame'];
  88        $form['destin'] = $testate['destin'];
  89        $form['caumag'] = $testate['caumag'];
  90        $form['id_agente'] = $testate['id_agente'];
  91        $form['banapp'] = $testate['banapp'];
  92        $form['spediz'] = $testate['spediz'];
  93        $form['sconto'] = $testate['sconto'];
  94        $form['listin'] = $testate['listin'];
  95        $form['net_weight'] = $testate['net_weight'];
  96        $form['gross_weight'] = $testate['gross_weight'];
  97        $form['units'] = $testate['units'];
  98        $form['volume'] = $testate['volume'];
  99        $rs_righi = gaz_dbi_dyn_query("*", $gTables['rigbro'], "id_tes = ".$form['id_tes'],"id_rig asc");
 100        while ($rigo = gaz_dbi_fetch_array($rs_righi)) {
 101             $articolo = gaz_dbi_get_row($gTables['artico'],"codice",$rigo['codart']);
 102             $form['righi'][$_POST['num_rigo']]['id_rig'] = $rigo['id_rig'];
 103             $form['righi'][$_POST['num_rigo']]['tiprig'] = $rigo['tiprig'];
 104             $form['righi'][$_POST['num_rigo']]['id_tes'] = $rigo['id_tes'];
 105             $form['righi'][$_POST['num_rigo']]['tipdoc'] = $testate['tipdoc'];
 106             $form['righi'][$_POST['num_rigo']]['datemi'] = $testate['datemi'];
 107             $form['righi'][$_POST['num_rigo']]['numdoc'] = $testate['numdoc'];
 108             $form['righi'][$_POST['num_rigo']]['descri'] = $rigo['descri'];
 109             $form['righi'][$_POST['num_rigo']]['id_body_text'] = $rigo['id_body_text'];
 110             $form['righi'][$_POST['num_rigo']]['codart'] = $rigo['codart'];
 111             $form['righi'][$_POST['num_rigo']]['unimis'] = $rigo['unimis'];
 112             $form['righi'][$_POST['num_rigo']]['prelis'] = $rigo['prelis'];
 113             $form['righi'][$_POST['num_rigo']]['provvigione'] = $rigo['provvigione'];
 114             $form['righi'][$_POST['num_rigo']]['ritenuta'] = $rigo['ritenuta'];
 115             $form['righi'][$_POST['num_rigo']]['sconto'] = $rigo['sconto'];
 116             $form['righi'][$_POST['num_rigo']]['quanti'] = $rigo['quanti'];
 117             $form['righi'][$_POST['num_rigo']]['id_doc'] = $rigo['id_doc'];
 118             $form['righi'][$_POST['num_rigo']]['codvat'] = $rigo['codvat'];
 119             $form['righi'][$_POST['num_rigo']]['pervat'] = $rigo['pervat'];
 120             $form['righi'][$_POST['num_rigo']]['codric'] = $rigo['codric'];
 121             $_POST['num_rigo']++;
 122        }
 123     }
 124  } else { //negli accessi successivi riporto solo il form
 125         $form['id_tes'] = $_POST['id_tes'];
 126         $form['seziva'] = $_POST['seziva'];
 127         $form['datemi_Y'] = intval($_POST['datemi_Y']);
 128         $form['datemi_M'] = intval($_POST['datemi_M']);
 129         $form['datemi_D'] = intval($_POST['datemi_D']);
 130         $form['initra_D'] = intval($_POST['initra_D']);
 131         $form['initra_M'] = intval($_POST['initra_M']);
 132         $form['initra_Y'] = intval($_POST['initra_Y']);
 133         $form['initra_I'] = intval($_POST['initra_I']);
 134         $form['initra_H'] = intval($_POST['initra_H']);
 135         $form['traspo'] = number_format($_POST['traspo'],2,'.','');
 136         $form['indspe'] = $_POST['indspe'];
 137         $form['speban'] = $_POST['speban'];
 138         $form['stamp']  = $_POST['stamp'];
 139         $form['vettor'] = $_POST['vettor'];
 140         $form['portos'] = $_POST['portos'];
 141         $form['imball'] = $_POST['imball'];
 142         $form['destin'] = $_POST['destin'];
 143         $form['pagame'] = $_POST['pagame'];
 144         $form['caumag'] = $_POST['caumag'];
 145         $form['id_agente'] = $_POST['id_agente'];
 146         $form['banapp'] = $_POST['banapp'];
 147         $form['spediz'] = $_POST['spediz'];
 148         $form['sconto'] = $_POST['sconto'];
 149         $form['listin'] = $_POST['listin'];
 150         $form['net_weight'] = $_POST['net_weight'];
 151         $form['gross_weight'] = $_POST['gross_weight'];
 152         $form['units'] = $_POST['units'];
 153         $form['volume'] = $_POST['volume'];
 154         $form['hidden_req'] = $_POST['hidden_req'];
 155         foreach($_POST['search'] as $k=>$v){
 156           $form['search'][$k]=$v;
 157         }
 158         if (isset($_POST['righi'])) {
 159                $form['righi'] = $_POST['righi'];
 160         }
 161         if ($_POST['hidden_req']=='clfoco') { //quando viene confermato un cliente
 162               if (isset($_POST['clfoco'])){
 163                  $form['clfoco'] = $_POST['clfoco'];
 164               } else {
 165                  $form['clfoco'] = 0;
 166               }
 167               $_POST['num_rigo'] = 0;
 168               $form['traspo'] = 0;
 169               $anagrafica = new Anagrafica();
 170               $cliente = $anagrafica->getPartner($form['clfoco']);
 171               //$ctrl_testate = 0;

 172               $rs_testate = gaz_dbi_dyn_query("*", $gTables['tesbro'], "clfoco = '".$form['clfoco']."' and tipdoc = 'VOR' and status not like 'EV%' ","datemi asc");
 173               while ($testate = gaz_dbi_fetch_array($rs_testate)) {
 174                       $form['traspo'] += $testate['traspo'];
 175                       $form['speban'] = $testate['speban'];
 176                       $form['stamp']  = $testate['stamp'];
 177                       $form['vettor'] = $testate['vettor'];
 178                       $form['imball'] = $testate['imball'];
 179                       $form['portos'] = $testate['portos'];
 180                       $form['spediz'] = $testate['spediz'];
 181                       $form['pagame'] = $testate['pagame'];
 182                       $form['caumag'] = $testate['caumag'];
 183                       $form['destin'] = $testate['destin'];
 184                       $form['id_agente'] = $testate['id_agente'];
 185                       $form['banapp'] = $testate['banapp'];
 186                       $form['sconto'] = $testate['sconto'];
 187                       $ctrl_testate = $testate['id_tes'];
 188                       $rs_righi = gaz_dbi_dyn_query("*", $gTables['rigbro'], "id_tes = ".$testate['id_tes'],"id_rig asc");
 189                       while ($rigo = gaz_dbi_fetch_array($rs_righi)) {
 190                              $articolo = gaz_dbi_get_row($gTables['artico'],"codice",$rigo['codart']);
 191                              $form['righi'][$_POST['num_rigo']]['id_rig'] = $rigo['id_rig'];
 192                              $form['righi'][$_POST['num_rigo']]['tiprig'] = $rigo['tiprig'];
 193                              $form['righi'][$_POST['num_rigo']]['id_tes'] = $rigo['id_tes'];
 194                              $form['righi'][$_POST['num_rigo']]['tipdoc'] = $testate['tipdoc'];
 195                              $form['righi'][$_POST['num_rigo']]['datemi'] = $testate['datemi'];
 196                              $form['righi'][$_POST['num_rigo']]['numdoc'] = $testate['numdoc'];
 197                              $form['righi'][$_POST['num_rigo']]['descri'] = $rigo['descri'];
 198                              $form['righi'][$_POST['num_rigo']]['id_body_text'] = $rigo['id_body_text'];
 199                              $form['righi'][$_POST['num_rigo']]['codart'] = $rigo['codart'];
 200                              $form['righi'][$_POST['num_rigo']]['unimis'] = $rigo['unimis'];
 201                              $form['righi'][$_POST['num_rigo']]['prelis'] = $rigo['prelis'];
 202                              $form['righi'][$_POST['num_rigo']]['provvigione'] = $rigo['provvigione'];
 203                              $form['righi'][$_POST['num_rigo']]['ritenuta'] = $rigo['ritenuta'];
 204                              $form['righi'][$_POST['num_rigo']]['sconto'] = $rigo['sconto'];
 205                              $form['righi'][$_POST['num_rigo']]['quanti'] = $rigo['quanti'];
 206                              $form['righi'][$_POST['num_rigo']]['id_doc'] = $rigo['id_doc'];
 207                              $form['righi'][$_POST['num_rigo']]['codvat'] = $rigo['codvat'];
 208                              $form['righi'][$_POST['num_rigo']]['pervat'] = $rigo['pervat'];
 209                              $form['righi'][$_POST['num_rigo']]['codric'] = $rigo['codric'];
 210                              $_POST['num_rigo']++;
 211                       }
 212               }
 213         }
 214  }
 215  if (isset($_POST['clfoco'])){
 216        $form['clfoco'] = $_POST['clfoco'];
 217        $anagrafica = new Anagrafica();
 218        $cliente = $anagrafica->getPartner($form['clfoco']);
 219  } elseif (!isset($form['clfoco'])){
 220        $form['clfoco'] = 0;
 221  }
 222  
 223  if (isset($_POST['ddt'])) { //conferma dell'evasione di un ddt
 224      //controllo i campi

 225      $dataemiss = $_POST['datemi_Y']."-".$_POST['datemi_M']."-".$_POST['datemi_D'];
 226      $utsDataemiss = mktime(0,0,0,$_POST['datemi_M'],$_POST['datemi_D'],$_POST['datemi_Y']);
 227      $iniziotrasporto = $_POST['initra_Y']."-".$_POST['initra_M']."-".$_POST['initra_D'];
 228      $utsIniziotrasporto = mktime(0,0,0,$_POST['initra_M'],$_POST['initra_D'],$_POST['initra_Y']);
 229      if ($form["clfoco"]<$admin_aziend['mascli'].'000001')
 230          $msg .= "0+";
 231      if (!isset($_POST["righi"])){
 232          $msg .= "1+";
 233      } else {
 234          $inevasi="";
 235          foreach ($_POST['righi'] as $k => $v) {
 236                  if (isset($v['checkval']) and $v['id_doc'] == 0 and ($v['tiprig'] == 0 or $v['tiprig'] == 1)) $inevasi="ok";
 237          }
 238          if (empty($inevasi)){
 239             $msg .= "2+";
 240          }
 241      }
 242      if (empty ($_POST["pagame"]))
 243          $msg .= "3+";
 244      if (!checkdate( $_POST['datemi_M'], $_POST['datemi_D'], $_POST['datemi_Y']))
 245          $msg .= "4+";
 246      if (!checkdate( $_POST['initra_M'], $_POST['initra_D'], $_POST['initra_Y']))
 247          $msg .= "5+";
 248      if ($utsIniziotrasporto < $utsDataemiss) {
 249          $msg .= "6+";
 250      }
 251      if ($msg == "") {//procedo all'inserimento
 252             $iniziotrasporto .= " ".$_POST['initra_H'].":".$_POST['initra_I'].":00";
 253             //ricavo il numero progressivo

 254             $rs_ultimo_ddt = gaz_dbi_dyn_query("*", $gTables['tesdoc'], "datemi LIKE '".$_POST['datemi_Y']."%' AND (tipdoc like 'DD_' OR tipdoc = 'FAD') AND seziva = ".$_POST['seziva'], "numdoc DESC",0,1);
 255             $ultimo_ddt = gaz_dbi_fetch_array($rs_ultimo_ddt);
 256             // se e' il primo documento dell'anno, resetto il contatore

 257             if ($ultimo_ddt) {
 258                 $form['numdoc'] = $ultimo_ddt['numdoc'] + 1;
 259             } else {
 260                 $form['numdoc'] = 1;
 261             }
 262             //inserisco la testata

 263             $form['tipdoc'] = 'DDT';
 264             $form['template'] = "FatturaSemplice";
 265             $form['id_con'] = '';
 266             $form['status'] = 'GENERATO';
 267             $form['initra'] = $iniziotrasporto;
 268             $form['datemi'] = $dataemiss;
 269             tesdocInsert($form);
 270             //recupero l'id assegnato dall'inserimento

 271             $last_id = gaz_dbi_last_id();
 272             $ctrl_tes = 0;
 273             foreach ($form['righi'] as $k=>$v) {
 274                 if ($v['id_tes'] != $ctrl_tes) {  //se fa parte di un'ordine diverso dal precedente
 275                    //inserisco un rigo descrittivo per il riferimento all'ordine sul DdT

 276                    $row_descri['descri'] = "da Conferma d'Ordine n.".$v['numdoc']." del ".substr($v['datemi'],8,2)."-".substr($v['datemi'],5,2)."-".substr($v['datemi'],0,4);
 277                    $row_descri['id_tes'] = $last_id;
 278                    $row_descri['tiprig'] = 2;
 279                    rigdocInsert($row_descri);
 280                 }
 281                 if (isset($v['checkval'])) {   //se e' un rigo selezionato
 282                     //lo inserisco nel DdT

 283                     $row = $v;
 284                     unset($row['id_rig']);
 285                     $row['id_tes'] = $last_id;
 286                     rigdocInsert($row);
 287                     $last_rigdoc_id = gaz_dbi_last_id();
 288                     if ($v['id_body_text'] > 0) { //se  un rigo testo copio il contenuto vecchio su uno nuovo
 289                        $old_body_text = gaz_dbi_get_row($gTables['body_text'],"id_body",$v['id_body_text']);
 290                        bodytextInsert(array('table_name_ref'=>'rigdoc','id_ref'=>$last_rigdoc_id,'body_text'=>$old_body_text['body_text']));
 291                        gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $last_rigdoc_id, 'id_body_text', gaz_dbi_last_id());
 292                     }
 293                     if ($admin_aziend['conmag'] == 2 and
 294                       $form['righi'][$k]['tiprig'] == 0 and
 295                       !empty($form['righi'][$k]['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
 296                       $upd_mm->uploadMag($last_rigdoc_id,
 297                                      $form['tipdoc'],
 298                                      $form['numdoc'],
 299                                      $form['seziva'],
 300                                      $dataemiss,
 301                                      $form['clfoco'],
 302                                      $form['sconto'],
 303                                      $form['caumag'],
 304                                      $v['codart'],
 305                                      $v['quanti'],
 306                                      $v['prelis'],
 307                                      $v['sconto'],
 308                                      0,
 309                                      $admin_aziend['stock_eval_method']
 310                                      );
 311                     }
 312                     //modifico il rigo dell'ordine indicandoci l'id della testata del DdT

 313                     gaz_dbi_put_row($gTables['rigbro'], "id_rig", $v['id_rig'], "id_doc",$last_id );
 314                 }
 315                 if ($ctrl_tes != 0 and $ctrl_tes != $v['id_tes']) {  //se non  il primo rigo processato
 316                       //controllo se ci sono ancora righi inevasi

 317                       $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 318                       $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 319                       if (!$inevasi) {  //se non ci sono + righi da evadere
 320                          //modifico lo status della testata dell'ordine solo se completamente evaso

 321                          gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 322                       }
 323                 }
 324                 $ctrl_tes = $v['id_tes'];
 325             }
 326             //controllo se l'ultimo ordine tra quelli processati ha ancora righi inevasi

 327             $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 328             $inevasi="";
 329             $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 330             if (!$inevasi) {  //se non ci sono + righi da evadere
 331                //modifico lo status della testata dell'ordine solo se completamente evaso

 332                gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 333             }
 334             $_SESSION['print_request']=$last_id;
 335             header("Location: invsta_docven.php");
 336             exit;
 337      }
 338  } elseif (isset($_POST['vco'])) { //conferma dell'evasione di un corrispettivo
 339      //controllo i campi

 340      $dataemiss = $_POST['datemi_Y']."-".$_POST['datemi_M']."-".$_POST['datemi_D'];
 341      $utsDataemiss = mktime(0,0,0,$_POST['datemi_M'],$_POST['datemi_D'],$_POST['datemi_Y']);
 342      $iniziotrasporto = $_POST['initra_Y']."-".$_POST['initra_M']."-".$_POST['initra_D'];
 343      $utsIniziotrasporto = mktime(0,0,0,$_POST['initra_M'],$_POST['initra_D'],$_POST['initra_Y']);
 344      $gForm = new venditForm();
 345      $ecr=$gForm->getECR_userData($admin_aziend['Login']);
 346      // ALLERTO SE NON E' STATA ESEGUITA LA CHIUSURA/CONTABILIZZAZIONE DEL GIORNO PRECEDENTE

 347      $rs_no_accounted = gaz_dbi_dyn_query("datemi", $gTables['tesdoc'], "id_con = 0 AND tipdoc = 'VCO' AND datemi < '$dataemiss' AND tipdoc = 'VCO'",'id_tes',0,1);
 348      $no_accounted = gaz_dbi_fetch_array($rs_no_accounted);
 349      if ($no_accounted) {
 350               $msg .= "7+";
 351      }
 352      // FINE ALLERTAMENTO

 353  
 354      if (!isset($_POST["clfoco"]))
 355          $msg .= "0+";
 356      if (!isset($_POST["righi"])){
 357          $msg .= "1+";
 358      } else {
 359          $inevasi="";
 360          foreach ($_POST['righi'] as $k => $v) {
 361                  if (isset($v['checkval']) and $v['id_doc'] == 0 and ($v['tiprig'] == 0 or $v['tiprig'] == 1)) $inevasi="ok";
 362          }
 363          if (empty($inevasi)){
 364               $msg .= "2+";
 365          }
 366      }
 367      if (empty ($_POST["pagame"]))
 368          $msg .= "3+";
 369      if (!checkdate( $_POST['datemi_M'], $_POST['datemi_D'], $_POST['datemi_Y']))
 370          $msg .= "4+";
 371      if (!checkdate( $_POST['initra_M'], $_POST['initra_D'], $_POST['initra_Y']))
 372          $msg .= "5+";
 373      if ($utsIniziotrasporto < $utsDataemiss) {
 374          $msg .= "6+";
 375      }
 376      if ($msg == "") {//procedo all'inserimento
 377             $ecr_user = gaz_dbi_get_row($gTables['cash_register'],'adminid',$admin_aziend['Login']);
 378             if (!$ecr_user){
 379                header("Location: error_msg.php?ref=admin_scontr");
 380                exit;
 381             };
 382             $iniziotrasporto .= " ".$_POST['initra_H'].":".$_POST['initra_I'].":00";
 383             $form['tipdoc'] = 'VCO';
 384             $form['template'] = 'FatturaAllegata';
 385             $form['id_con'] = '';
 386             $form['id_contract'] = $ecr['id_cash'];
 387             $form['seziva'] = $ecr['seziva'];
 388             $form['datemi'] = $dataemiss;
 389             // ricavo il progressivo della cassa del giorno (in id_contract c' la cassa alla quale invio lo scontrino)

 390             $rs_last_n = gaz_dbi_dyn_query("numdoc", $gTables['tesdoc'], "tipdoc = 'VCO' AND id_con = 0 AND id_contract = ".$ecr['id_cash'],'datemi DESC, numdoc DESC',0,1);
 391             $last_n = gaz_dbi_fetch_array($rs_last_n);
 392             if ($last_n) {
 393                 $form['numdoc'] = $last_n['numdoc'] + 1;
 394             } else {
 395                 $form['numdoc'] = 1;
 396             }
 397             if ($form['clfoco']>100000000) {  // cliente selezionato quindi fattura allegata
 398                // ricavo l'ultimo numero di fattura dell'anno

 399                $rs_last_f = gaz_dbi_dyn_query("numfat*1 AS fattura", $gTables['tesdoc'], "YEAR(datfat) = ".$form['datemi_Y']." AND tipdoc = 'VCO' AND seziva = ".$ecr['seziva'],'fattura DESC',0,1);
 400                $last_f = gaz_dbi_fetch_array($rs_last_f);
 401                if ($last_f) {
 402                   $form['numfat'] = $last_f['fattura'] + 1;
 403                } else {
 404                   $form['numfat'] = 1;
 405                }
 406                $form['datfat'] = $form['datemi'];
 407             }
 408             tesdocInsert($form);
 409             $last_id = gaz_dbi_last_id();
 410             $ctrl_tes = 0;
 411             foreach ($form['righi'] as $k=>$v) {
 412                 if ($v['id_tes'] != $ctrl_tes) {  //se fa parte di un'ordine diverso dal precedente
 413                    //inserisco un rigo descrittivo per il riferimento all'ordine sul corrispettivo

 414                    $row_descri['descri'] = "ORD. DEL ".substr($v['datemi'],8,2)."-".substr($v['datemi'],5,2)."-".substr($v['datemi'],0,4);
 415                    $row_descri['id_tes'] = $last_id;
 416                    $row_descri['tiprig'] = 2;
 417                    rigdocInsert($row_descri);
 418                    $row_descri['descri'] = "N.".$v['numdoc'];
 419                    $row_descri['id_tes'] = $last_id;
 420                    $row_descri['tiprig'] = 2;
 421                    rigdocInsert($row_descri);
 422                 }
 423                 if (isset($v['checkval'])) {   //se e' un rigo selezionato
 424                     //lo inserisco nel VCO

 425                     $row = $v;
 426                     unset($row['id_rig']);
 427                     $row['id_tes'] = $last_id;
 428                     rigdocInsert($row);
 429                     $last_rigdoc_id = gaz_dbi_last_id();
 430                     if ($admin_aziend['conmag'] == 2 and
 431                       $form['righi'][$k]['tiprig'] == 0 and
 432                       !empty($form['righi'][$k]['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
 433                       $upd_mm->uploadMag($last_rigdoc_id,
 434                                      $form['tipdoc'],
 435                                      $form['numdoc'],
 436                                      $form['seziva'],
 437                                      $dataemiss,
 438                                      $form['clfoco'],
 439                                      $form['sconto'],
 440                                      $form['caumag'],
 441                                      $v['codart'],
 442                                      $v['quanti'],
 443                                      $v['prelis'],
 444                                      $v['sconto'],
 445                                      0,
 446                                      $admin_aziend['stock_eval_method']
 447                                      );
 448                     }
 449                     //modifico il rigo dell'ordine indicandoci l'id della testata del VCO

 450                     gaz_dbi_put_row($gTables['rigbro'], "id_rig", $v['id_rig'], "id_doc",$last_id );
 451                 }
 452                 if ($ctrl_tes != 0 and $ctrl_tes != $v['id_tes']) {  //se non  il primo rigo processato
 453                       //controllo se ci sono ancora righi inevasi

 454                       $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 455                       $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 456                       if (!$inevasi) {  //se non ci sono + righi da evadere
 457                          //modifico lo status della testata dell'ordine solo se completamente evaso

 458                          gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 459                       }
 460                 }
 461                 $ctrl_tes = $v['id_tes'];
 462             }
 463             //controllo se l'ultimo ordine tra quelli processati ha ancora righi inevasi

 464             $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 465             $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 466             if (!$inevasi) {  //se non ci sono + righi da evadere
 467                //modifico lo status della testata dell'ordine solo se completamente evaso

 468                gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 469             }
 470             // INIZIO l'invio dello scontrino alla stampante fiscale dell'utente

 471             require("../../library/cash_register/".$ecr['driver'].".php");
 472             $ticket_printer = new $ecr['driver'];
 473             $ticket_printer->set_serial($ecr['serial_port']);
 474             $ticket_printer->open_ticket();
 475             $ticket_printer->set_cashier($admin_aziend['Nome']);
 476             $tot=0;
 477             foreach ($form['righi'] as $i=>$v) {
 478                     if ($v['tiprig'] <= 1) {    // se del tipo normale o forfait
 479                        if ($v['tiprig'] == 0) { // tipo normale
 480                           $tot_row = CalcolaImportoRigo($v['quanti'], $v['prelis'],array($v['sconto'],$form['sconto'],-$v['pervat']));
 481                        } else {                 // tipo forfait
 482                           $tot_row = CalcolaImportoRigo(1,$v['prelis'],-$v['pervat']);
 483                           $v['quanti']=1;
 484                           $v['codart']=$v['descri'];
 485                        }
 486                        $price=$v['quanti'].'x'.round($tot_row/$v['quanti'],$admin_aziend['decimal_price']);
 487                        $ticket_printer->row_ticket($tot_row,$price,$v['codvat'],$v['codart']);
 488                        $tot+=$tot_row;
 489                    } else {                    // se descrittivo
 490                        $desc_arr=str_split(trim($v['descri']),24);
 491                        foreach ($desc_arr as $d_v) {
 492                                 $ticket_printer->descri_ticket($d_v);
 493                        }
 494                    }
 495             }
 496             if (!empty($form['fiscal_code'])) { //  stata impostata la stampa del codice fiscale
 497                $ticket_printer->descri_ticket('CF= '.$form['fiscal_code']);
 498             }
 499             $ticket_printer->pay_ticket();
 500             $ticket_printer->close_ticket();
 501             // FINE invio

 502             if ($form['clfoco']>100000000) {
 503                 // procedo alla stampa della fattura solo se c' un cliente selezionato

 504                 $_SESSION['print_request']=$last_id;
 505                 header("Location: invsta_docven.php");
 506                 exit;
 507             } else {
 508                 header("Location: report_scontr.php");
 509                 exit;
 510             }
 511             $_SESSION['print_request']=$last_id;
 512             header("Location: invsta_docven.php");
 513             exit;
 514      }
 515  } elseif (isset($_POST['fai'])) { //conferma dell'evasione di una fattura immediata
 516      //cerco l'ultimo template

 517      $rs_ultimo_template = gaz_dbi_dyn_query("template",
 518                                     $gTables['tesdoc'] ,
 519                                     "tipdoc = 'FAI' and seziva = ".$form['seziva'],
 520                                     "datfat DESC, protoc DESC",0,1);
 521      $ultimo_template = gaz_dbi_fetch_array($rs_ultimo_template);
 522      if ($ultimo_template['template'] == 'FatturaImmediata') {
 523         $form['template'] = "FatturaImmediata";
 524      } else {
 525         $form['template'] = "FatturaSemplice";
 526      }
 527      //controllo i campi

 528      $dataemiss = $form['datemi_Y']."-".$form['datemi_M']."-".$form['datemi_D'];
 529      $utsDataemiss = mktime(0,0,0,$form['datemi_M'],$form['datemi_D'],$form['datemi_Y']);
 530      $iniziotrasporto = $form['initra_Y']."-".$form['initra_M']."-".$form['initra_D'];
 531      $utsIniziotrasporto = mktime(0,0,0,$form['initra_M'],$form['initra_D'],$form['initra_Y']);
 532      if ($form["clfoco"]<$admin_aziend['mascli'].'000001')
 533          $msg .= "0+";
 534      if (!isset($form["righi"])){
 535          $msg .= "1+";
 536      } else {
 537          $inevasi="";
 538          foreach ($form['righi'] as $k => $v) {
 539                  if (isset($v['checkval']) and $v['id_doc'] == 0 and ($v['tiprig'] == 0 or $v['tiprig'] == 1)) $inevasi="ok";
 540          }
 541          if (empty($inevasi)){
 542              $msg .= "2+";
 543          }
 544      }
 545      if (empty ($form["pagame"]))
 546          $msg .= "3+";
 547      if (!checkdate( $form['datemi_M'], $form['datemi_D'], $form['datemi_Y']))
 548          $msg .= "4+";
 549      if (!checkdate( $form['initra_M'], $form['initra_D'], $form['initra_Y']))
 550          $msg .= "5+";
 551      if ($utsIniziotrasporto < $utsDataemiss) {
 552          $msg .= "6+";
 553      }
 554      if ($msg == "") {//procedo all'inserimento
 555             $iniziotrasporto .= " ".$form['initra_H'].":".$form['initra_I'].":00";
 556             //ricavo il progressivo del numero fattura

 557             $rs_ultima_fat = gaz_dbi_dyn_query("numfat*1 AS documento", $gTables['tesdoc'], "YEAR(datemi) = ".$form['datemi_Y']." AND tipdoc LIKE 'FA_' AND seziva = ".$form['seziva'], "documento DESC",0,1);
 558             $ultima_fat = gaz_dbi_fetch_array($rs_ultima_fat);
 559             // se e' il primo documento dell'anno, resetto il contatore

 560             if ($ultima_fat) {
 561                 $form['numdoc'] = $ultima_fat['documento'] + 1;
 562                 $form['numfat'] = $form['numdoc'];
 563             } else {
 564                 $form['numdoc'] = 1;
 565                 $form['numfat'] = 1;
 566             }
 567             //ricavo il progressivo protocollo

 568             $rs_ultimo_pro = gaz_dbi_dyn_query("protoc", $gTables['tesdoc'], "YEAR(datemi) = ".$form['datemi_Y']." AND tipdoc LIKE 'F__' and seziva = ".$form['seziva'], "protoc DESC",0,1);
 569             $ultimo_pro = gaz_dbi_fetch_array($rs_ultimo_pro);
 570             // se e' il primo documento dell'anno, resetto il contatore

 571             if ($ultimo_pro) {
 572                 $form['protoc'] = $ultimo_pro['protoc'] + 1;
 573             } else {
 574                 $form['protoc'] = 1;
 575             }
 576             //inserisco la testata

 577             $form['tipdoc'] = 'FAI';
 578             $form['id_con'] = '';
 579             $form['status'] = 'GENERATO';
 580             $form['initra'] = $iniziotrasporto;
 581             $form['datemi'] = $dataemiss;
 582             $form['datfat'] = $dataemiss;
 583             tesdocInsert($form);
 584             //recupero l'id assegnato dall'inserimento

 585             $last_id = gaz_dbi_last_id();
 586             $ctrl_tes = 0;
 587             foreach ($form['righi'] as $k => $v) {
 588                 if ($v['id_tes'] != $ctrl_tes) {  //se fa parte di un'ordine diverso dal precedente
 589                    //inserisco un rigo descrittivo per il riferimento all'ordine sulla fattura immediata

 590                    $row_descri['descri'] = "da Conferma d'Ordine n.".$v['numdoc']." del ".substr($v['datemi'],8,2)."-".substr($v['datemi'],5,2)."-".substr($v['datemi'],0,4);
 591                    $row_descri['id_tes'] = $last_id;
 592                    $row_descri['tiprig'] = 2;
 593                    rigdocInsert($row_descri);
 594                 }
 595                 if (isset($v['checkval'])) {   //se e' un rigo selezionato
 596                     //lo inserisco nella fattura immediata

 597                     $row = $v;
 598                     unset ($row['id_rig']);
 599                     $row['id_tes'] = $last_id;
 600                     rigdocInsert($row);
 601                     $last_rigdoc_id = gaz_dbi_last_id();
 602                     if ($v['id_body_text'] > 0) { //se  un rigo testo copio il contenuto vecchio su uno nuovo
 603                        $old_body_text = gaz_dbi_get_row($gTables['body_text'],"id_body",$v['id_body_text']);
 604                        bodytextInsert(array('table_name_ref'=>'rigdoc','id_ref'=>$last_rigdoc_id,'body_text'=>$old_body_text['body_text']));
 605                        gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $last_rigdoc_id, 'id_body_text', gaz_dbi_last_id());
 606                     }
 607                     if ($admin_aziend['conmag'] == 2 and
 608                       $form['righi'][$k]['tiprig'] == 0 and
 609                       !empty($form['righi'][$k]['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
 610                       $upd_mm->uploadMag($last_rigdoc_id,
 611                                      $form['tipdoc'],
 612                                      $form['numdoc'],
 613                                      $form['seziva'],
 614                                      $dataemiss,
 615                                      $form['clfoco'],
 616                                      $form['sconto'],
 617                                      $form['caumag'],
 618                                      $v['codart'],
 619                                      $v['quanti'],
 620                                      $v['prelis'],
 621                                      $v['sconto'],
 622                                      0,
 623                                      $admin_aziend['stock_eval_method']
 624                                      );
 625                     }
 626                     //modifico il rigo dell'ordine indicandoci l'id della testata della fattura immediata

 627                     gaz_dbi_put_row($gTables['rigbro'], "id_rig", $v['id_rig'], "id_doc",$last_id );
 628                 }
 629                 if ($ctrl_tes != 0 and $ctrl_tes != $v['id_tes']) {  //se non  il primo rigo processato
 630                       //controllo se ci sono ancora righi inevasi

 631                       $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 632                       $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 633                       if (!$inevasi) {  //se non ci sono + righi da evadere
 634                          //modifico lo status della testata dell'ordine solo se completamente evaso

 635                          gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 636                       }
 637                 }
 638                 $ctrl_tes = $v['id_tes'];
 639             }
 640             //controllo se l'ultimo ordine tra quelli processati ha ancora righi inevasi

 641             $rs_righi_inevasi = gaz_dbi_dyn_query("id_tes", $gTables['rigbro'], "id_tes = $ctrl_tes AND id_doc = 0 AND tiprig BETWEEN 0 AND 1","id_rig",0,1);
 642             $inevasi="";
 643             $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
 644             if (!$inevasi) {  //se non ci sono + righi da evadere
 645                //modifico lo status della testata dell'ordine solo se completamente evaso

 646                gaz_dbi_put_row($gTables['tesbro'], "id_tes", $ctrl_tes, "status","EVASO" );
 647             }
 648             $_SESSION['print_request']=$last_id;
 649             header("Location: invsta_docven.php");
 650             exit;
 651      }
 652  } elseif (isset($_POST['Return'])) {  //ritorno indietro
 653         header("Location: ".$_POST['ritorno']);
 654         exit;
 655  }
 656  
 657  require ("../../library/include/header.php");
 658  $script_transl=HeadMain(0,array('boxover/boxover',
 659                                    'calendarpopup/CalendarPopup',
 660                                    'jquery/jquery-1.7.1.min',
 661                                    'jquery/ui/jquery.ui.core',
 662                                    'jquery/ui/jquery.ui.widget',
 663                                    'jquery/ui/jquery.ui.position',
 664                                    'jquery/ui/jquery.ui.autocomplete',
 665                                    'jquery/autocomplete_anagra'));
 666  ?>
 667  <SCRIPT LANGUAGE="JavaScript">
 668  function pulldown_menu(selectName, destField)
 669  {
 670      // Create a variable url to contain the value of the

 671      // selected option from the the form named broven and variable selectName

 672      var url = document.myform[selectName].options[document.myform[selectName].selectedIndex].value;
 673      document.myform[destField].value = url;
 674  }
 675  
 676  function calcheck(checkin)
 677  {
 678      with (checkin.form){
 679          if (checkin.checked == false){
 680             hiddentot.value = eval(hiddentot.value) - eval(checkin.value);
 681          } else {
 682             hiddentot.value = eval(hiddentot.value) + eval(checkin.value);
 683          }
 684          var totalecheck = eval(hiddentot.value) - eval(hiddentot.value) * eval(sconto.value) / 100  + eval(traspo.value);
 685          return((Math.round(totalecheck*100)/100).toFixed(2));
 686      }
 687  }
 688  
 689  function summa(sumtraspo)
 690  {
 691          if (isNaN(parseFloat(eval(sumtraspo.value)))){
 692             sumtraspo.value = 0.00;
 693          }
 694          var totalecheck = eval(document.myform.hiddentot.value) - eval(document.myform.hiddentot.value) * eval(document.myform.sconto.value) / 100 + eval(sumtraspo.value);
 695          return((Math.round(totalecheck*100)/100).toFixed(2));
 696  }
 697  
 698  function sconta(percsconto)
 699  {
 700          if (isNaN(parseFloat(eval(percsconto.value)))){
 701             percsconto.value = 0.00;
 702          }
 703          var totalecheck = eval(document.myform.hiddentot.value) - eval(document.myform.hiddentot.value) * eval(percsconto.value) / 100 + eval(document.myform.traspo.value);
 704          return((Math.round(totalecheck*100)/100).toFixed(2));
 705  }
 706  
 707  </script>
 708  <SCRIPT LANGUAGE="JavaScript" ID="datapopup">
 709  var cal = new CalendarPopup();
 710  cal.setReturnFunction("setMultipleValues");
 711  function setMultipleValues(y,m,d) {
 712    document.myform.initra_Y.value=y;
 713    document.myform.initra_M.value=LZ(m);
 714    document.myform.initra_D.value=LZ(d);
 715    }
 716  </SCRIPT>
 717  <form method="POST" name="myform">
 718  <?php
 719  $gForm = new venditForm();
 720  $alert_sezione='';
 721  switch($admin_aziend['fatimm']) {
 722      case 1:
 723      case 2:
 724      case 3:
 725           if ($admin_aziend['fatimm'] != $form['seziva']) $alert_sezione = $script_transl['alert1'];
 726      break;
 727      case "U":
 728           $alert_sezione = $script_transl['alert1'];
 729      break;
 730  }
 731  echo "<input type=\"hidden\" value=\"".$form['hidden_req']."\" name=\"hidden_req\" />\n";
 732  ?>
 733  <input type="hidden" name="ritorno" value="<?php echo $_POST['ritorno']; ?>">
 734  <input type="hidden" name="id_tes" value="<?php echo $form['id_tes']; ?>">
 735  <input type="hidden" name="speban" value="<?php echo $form['speban']; ?>">
 736  <input type="hidden" name="stamp" value="<?php echo $form['stamp']; ?>">
 737  <input type="hidden" name="listin" value="<?php echo $form['listin']; ?>">
 738  <input type="hidden" name="net_weight" value="<?php echo $form['net_weight']; ?>">
 739  <input type="hidden" name="gross_weight" value="<?php echo $form['gross_weight']; ?>">
 740  <input type="hidden" name="units" value="<?php echo $form['units']; ?>">
 741  <input type="hidden" name="volume" value="<?php echo $form['volume']; ?>">
 742  <input type="hidden" name="id_agente" value="<?php echo $form['id_agente']; ?>">
 743  <input type="hidden" name="caumag" value="<?php echo $form['caumag']; ?>">
 744  <div align="center" class="FacetFormHeaderFont"><?php echo $script_transl['title']; ?>
 745  <?php
 746  $select_cliente = new selectPartner('clfoco');
 747  $select_cliente->selectDocPartner('clfoco',$form['clfoco'],$form['search']['clfoco'],'clfoco',$script_transl['search_customer'],$admin_aziend['mascli'],$admin_aziend['mascli']);
 748  ?>
 749  </div>
 750  <table class="Tlarge">
 751  <?php
 752  echo "<tr>\n";
 753  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['seziva']."</td><td class=\"FacetDataTD\" >\n";
 754  $gForm->selectNumber('seziva',$form['seziva'],0,1,3,'FacetDataTD',true);
 755  echo "\t </td>\n";
 756  echo '<input type="hidden" name="indspe" value="'.$form['indspe'].'">';
 757  if (!empty($msg)) {
 758      echo '<td colspan="2" class="FacetDataTDred">'.$gForm->outputErrors($msg,$script_transl['errors'])."</td>\n";
 759  } else {
 760      echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['indspe']."</td>";
 761      echo "\t<td class=\"FacetDataTD\">".$form['indspe']."</td>\n";
 762  }
 763  echo "\t<td class=\"FacetFieldCaptionTD\">".$script_transl['datemi']."</td>\n";
 764  echo "\t<td class=\"FacetDataTD\">\n";
 765  $gForm->CalendarPopup('datemi',$form['datemi_D'],$form['datemi_M'],$form['datemi_Y']);
 766  echo "\t </td></tr> <tr>\n";
 767  echo '<td class="FacetFieldCaptionTD">'.$script_transl['banapp']."</td>\n";
 768  echo '<td colspan="3" class="FacetDataTD">';
 769  $select_banapp = new selectbanapp("banapp");
 770  $select_banapp -> addSelected($form["banapp"]);
 771  $select_banapp -> output();
 772  echo "</td>\n";
 773  echo "\t<td class=\"FacetFieldCaptionTD\" colspan=\"2\">".$script_transl['initra']."\n";
 774  $gForm->CalendarPopup('initra',$form['initra_D'],$form['initra_M'],$form['initra_Y']);
 775  // select dell'ora

 776  echo "\t <select name=\"initra_H\" class=\"FacetText\" >\n";
 777  for( $counter = 0; $counter <= 23; $counter++ )
 778      {
 779      $selected = "";
 780      if($counter ==  $form['initra_H'])
 781              $selected = "selected";
 782      echo "\t\t <option value=\"".sprintf('%02d',$counter)."\" $selected >".sprintf('%02d',$counter)."</option>\n";
 783      }
 784  echo "\t </select>\n ";
 785  // select dell'ora

 786  echo "\t <select name=\"initra_I\" class=\"FacetText\" >\n";
 787  for( $counter = 0; $counter <= 59; $counter++ )
 788      {
 789      $selected = "";
 790      if($counter ==  $form['initra_I'])
 791              $selected = "selected";
 792      echo "\t\t <option value=\"".sprintf('%02d',$counter)."\" $selected >".sprintf('%02d',$counter)."</option>\n";
 793      }
 794  echo "\t </select>\n";
 795  echo "</td></tr><tr>\n";
 796  echo "\t<td class=\"FacetFieldCaptionTD\">".$script_transl['traspo'].' '.$admin_aziend['symbol']."</td>\n";
 797  echo "\t<td class=\"FacetDataTD\"><input type=\"text\" name=\"traspo\" value=\"".$form['traspo']."\" align=\"right\" maxlength=\"6\" size=\"3\" onChange=\"this.form.total.value=summa(this);\" />\n";
 798  echo "\t </td>\n";
 799  echo "\t<td class=\"FacetFieldCaptionTD\">".$script_transl['pagame']."</td><td  class=\"FacetDataTD\">\n";
 800  $gForm->selectFromDB('pagame','pagame','codice',$form['pagame'],'codice',1,' ','descri');
 801  echo "\t </td>\n";
 802  echo '<td class="FacetFieldCaptionTD">'.$script_transl['destin']."</td>\n";
 803  echo "<td class=\"FacetDataTD\"><textarea rows=\"1\" cols=\"30\" name=\"destin\" class=\"FacetInput\">".$form['destin']."</textarea></td>\n";
 804  echo "</tr><tr>\n";
 805  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['id_agente']."</td>";
 806  echo "<td class=\"FacetDataTD\">\n";
 807  $select_agente = new selectAgente("id_agente");
 808  $select_agente -> addSelected($form["id_agente"]);
 809  $select_agente -> output();
 810  echo "</td>\n";
 811  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['spediz']."</td>\n";
 812  echo "<td class=\"FacetDataTD\"><input type=\"text\" name=\"spediz\" value=\"".$form["spediz"]."\" maxlength=\"50\" size=\"25\" class=\"FacetInput\">\n";
 813  $select_spediz = new SelectValue("spedizione");
 814  $select_spediz -> output('spediz', 'spediz');
 815  echo "</td>\n";
 816  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['portos']."</td>\n";
 817  echo "<td class=\"FacetDataTD\"><input type=\"text\" name=\"portos\" value=\"".$form["portos"]."\" maxlength=\"50\" size=\"25\" class=\"FacetInput\">\n";
 818  $select_spediz = new SelectValue("portoresa");
 819  $select_spediz -> output('portos', 'portos');
 820  echo "</td>\n";
 821  echo "</td></tr>\n";
 822  echo '<tr><td class="FacetFieldCaptionTD">';
 823  echo "%".$script_transl['sconto'].":</td><td class=\"FacetDataTD\"><input type=\"text\" value=\"".$form['sconto']."\" maxlength=\"4\" size=\"1\" name=\"sconto\" onChange=\"this.form.total.value=sconta(this);\">";
 824  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['imball']."</td>\n";
 825  echo "<td class=\"FacetDataTD\"><input type=\"text\" name=\"imball\" value=\"".$form["imball"]."\" maxlength=\"50\" size=\"25\" class=\"FacetInput\">\n";
 826  $select_spediz = new SelectValue("imballo");
 827  $select_spediz -> output('imball', 'imball');
 828  echo "</td>\n";
 829  echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['vettor']."</td>\n";
 830  echo "<td class=\"FacetDataTD\">\n";
 831  $select_vettor = new selectvettor("vettor");
 832  $select_vettor -> addSelected($form["vettor"]);
 833  $select_vettor -> output();
 834  echo "</td>\n";
 835  echo "</tr></table>\n";
 836  if (! empty ($form['righi'])) {
 837     echo '<div align="center"><b>'.$script_transl['preview_title'].'</b></div>';
 838     echo "<table class=\"Tlarge\">";
 839     echo "<tr class=\"FacetFieldCaptionTD\"><td> ".$script_transl['codart']."</td>
 840     <td> ".$script_transl['descri']."</td>
 841     <td align=\"center\"> ".$script_transl['unimis']."</td>
 842     <td align=\"right\"> ".$script_transl['quanti']."</td>
 843     <td align=\"right\"> ".$script_transl['prezzo']."</td>
 844     <td align=\"right\"> ".$script_transl['sconto']."</td>
 845     <td align=\"right\"> ".$script_transl['provvigione']."</td>
 846     <td align=\"right\"> ".$script_transl['amount']."</td>
 847     </tr>";
 848     $ctrl_tes = 0;
 849     $total_order = 0;
 850     foreach ($form['righi'] as $k => $v) {
 851          $checkin = ' disabled ';
 852          $imprig = 0;
 853          //calcolo importo rigo

 854          switch($v['tiprig']) {
 855                 case "0":
 856                      $imprig = CalcolaImportoRigo($form['righi'][$k]['quanti'], $form['righi'][$k]['prelis'], $form['righi'][$k]['sconto']);
 857                      if ($v['id_doc'] == 0) {
 858                          $checkin = ' checked';
 859                          $total_order += $imprig;
 860                      }
 861                 break;
 862                 case "1":
 863                      $imprig = CalcolaImportoRigo(1, $form['righi'][$k]['prelis'], 0);
 864                      if ($v['id_doc'] == 0) {
 865                          $checkin = ' checked';
 866                          $total_order += $imprig;
 867                      }
 868                 break;
 869                 case "2":
 870                      $checkin = '';
 871                 break;
 872                 case "3":
 873                      $checkin = '';
 874                 break;
 875                 case "6":
 876                      $body_text = gaz_dbi_get_row($gTables['body_text'],'id_body',$v['id_body_text']);
 877                      $v['descri'] = substr($body_text['body_text'],0,80);
 878                      $checkin = '';
 879                 break;
 880          }
 881          if ($ctrl_tes != $v['id_tes']) {
 882             echo "<tr><td class=\"FacetDataTD\" colspan=\"7\"> ".$script_transl['from']."<a href=\"admin_broven.php?Update&id_tes=".$v["id_tes"]."\" title=\"".$script_transl['upd_ord']."\">".$v['numdoc']."</a> ".$script_transl['del'].' '.gaz_format_date($v['datemi'])." </td></tr>";
 883          }
 884          echo "<tr>";
 885          echo "<input type=\"hidden\" name=\"righi[$k][id_tes]\" value=\"".$v['id_tes']."\">\n";
 886          echo "<input type=\"hidden\" name=\"righi[$k][datemi]\" value=\"".$v['datemi']."\">\n";
 887          echo "<input type=\"hidden\" name=\"righi[$k][tipdoc]\" value=\"".$v['tipdoc']."\">\n";
 888          echo "<input type=\"hidden\" name=\"righi[$k][numdoc]\" value=\"".$v['numdoc']."\">\n";
 889          echo "<input type=\"hidden\" name=\"righi[$k][id_rig]\" value=\"".$v['id_rig']."\">\n";
 890          echo "<input type=\"hidden\" name=\"righi[$k][tiprig]\" value=\"".$v['tiprig']."\">\n";
 891          echo "<input type=\"hidden\" name=\"righi[$k][id_doc]\" value=\"".$v['id_doc']."\">\n";
 892          echo "<input type=\"hidden\" name=\"righi[$k][id_body_text]\" value=\"".$v['id_body_text']."\">\n";
 893          echo "<input type=\"hidden\" name=\"righi[$k][codvat]\" value=\"".$v['codvat']."\">\n";
 894          echo "<input type=\"hidden\" name=\"righi[$k][pervat]\" value=\"".$v['pervat']."\">\n";
 895          echo "<input type=\"hidden\" name=\"righi[$k][ritenuta]\" value=\"".$v['ritenuta']."\">\n";
 896          echo "<input type=\"hidden\" name=\"righi[$k][codric]\" value=\"".$v['codric']."\">\n";
 897          echo "<td><input type=\"hidden\" name=\"righi[$k][codart]\" value=\"".$v['codart']."\">".$v['codart']."</td>\n";
 898          echo "<td><input type=\"hidden\" name=\"righi[$k][descri]\" value=\"".$v['descri']."\">".$v['descri']."</td>\n";
 899          echo "<td align=\"center\"><input type=\"hidden\" name=\"righi[$k][unimis]\" value=\"".$v['unimis']."\">".$v['unimis']."</td>\n";
 900          echo "<td align=\"right\"><input type=\"hidden\" name=\"righi[$k][quanti]\" value=\"".$v['quanti']."\">".$v['quanti']."</td>\n";
 901          echo "<td align=\"right\"><input type=\"hidden\" name=\"righi[$k][prelis]\" value=\"".$v['prelis']."\">".$v['prelis']."</td>\n";
 902          echo "<td align=\"right\"><input type=\"hidden\" name=\"righi[$k][provvigione]\" value=\"".$v['provvigione']."\">".$v['provvigione']."</td>\n";
 903          echo "<td align=\"right\"><input type=\"hidden\" name=\"righi[$k][sconto]\" value=\"".$v['sconto']."\">".$v['sconto']."</td>\n";
 904          echo "<td class=\"FacetDataTD\" align=\"right\">$imprig</td>\n";
 905          echo "<td class=\"FacetFieldCaptionTD\" align=\"center\"><input type=\"checkbox\" name=\"righi[$k][checkval]\"  title=\"".$script_transl['checkbox']."\" $checkin value=\"$imprig\" onclick=\"this.form.total.value=calcheck(this);\"></td>\n";
 906          echo "</tr>";
 907          $ctrl_tes = $v['id_tes'];
 908      }
 909      echo "<tr><td class=\"FacetDataTD\">\n";
 910      echo "<input type=\"submit\" name=\"Return\" value=\"".$script_transl['return']."\">&nbsp;</td>\n";
 911      echo "<td align=\"right\" colspan=\"5\" class=\"FacetFieldCaptionTD\">\n";
 912      echo "<input type=\"submit\" name=\"ddt\" value=\"".$script_transl['issue_ddt']."\" accesskey=\"d\" />\n";
 913      echo "<input type=\"submit\" name=\"fai\" value=\"".$script_transl['issue_fat']."\" accesskey=\"f\" />\n";
 914      if (!empty($alert_sezione)) echo " &sup1;";
 915      echo "<input type=\"submit\" name=\"vco\" value=\"".$script_transl['issue_cor']."\" accesskey=\"c\" />\n";
 916      echo "</td><input type=\"hidden\" name=\"hiddentot\" value=\"$total_order\">\n";
 917      echo "<td colspan=\"2\" class=\"FacetFieldCaptionTD\" align=\"right\">".$script_transl['taxable']." ".$admin_aziend['symbol']." &nbsp;\n";
 918      echo "<input type=\"text\"  style=\"text-align:right;\" value=\"".number_format(($total_order - $total_order*$form['sconto']/100 + $form['traspo']),2,'.','')."\" name=\"total\" size=\"8\" readonly />\n";
 919      echo "</td></tr>";
 920      if (!empty($alert_sezione)) echo "<tr><td colspan=\"3\"></td><td colspan=\"2\" class=\"FacetDataTDred\">$alert_sezione </td></tr>";
 921  }
 922  ?>
 923  </table>
 924  </form>
 925  </body>
 926  </html>

title

Description

title

Description

title

Description

title

title

Body