Beispiel #1
0
 } else { //in tutti gli altri casi si deve prendere quanto inserito nel form
    $form['datfat'] = $initra;
    $form['protoc'] = getProtocol($form['tipdoc'],$form['annemi'],$sezione);
    $form['numdoc'] = $form['numfat'];
 }
 //inserisco la testata
 $form['status'] = '';
 $form['initra'] = $initra;
 $form['datemi'] = $datemi;
 tesdocInsert($form);
 //recupero l'id assegnato dall'inserimento
 $ultimo_id = gaz_dbi_last_id();
 //inserisco i righi
 foreach ($form['rows'] as $i => $value) {
       $form['rows'][$i]['id_tes'] = $ultimo_id;
       rigdocInsert($form['rows'][$i]);
       $last_rigdoc_id = gaz_dbi_last_id();
       if (isset($form["row_$i"])) { //se è un rigo testo lo inserisco il contenuto in body_text
           bodytextInsert(array('table_name_ref'=>'rigdoc','id_ref'=>$last_rigdoc_id,'body_text'=>$form["row_$i"],'lang_id'=>$admin_aziend['id_language']));
           gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $last_rigdoc_id, 'id_body_text', gaz_dbi_last_id());
       }
       if ($admin_aziend['conmag'] == 2 and
          $form['rows'][$i]['tiprig'] == 0 and
          !empty($form['rows'][$i]['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
          $upd_mm->uploadMag(gaz_dbi_last_id(),
                         $form['tipdoc'],
                         $form['numdoc'],
                         $form['seziva'],
                         $datemi,
                         $form['clfoco'],
                         $form['sconto'],
Beispiel #2
0
     // ricavo l'ultimo numero di fattura dell'anno
     $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);
     $last_f = gaz_dbi_fetch_array($rs_last_f);
     if ($last_f) {
        $form['numfat'] = $last_f['fattura'] + 1;
     } else {
        $form['numfat'] = 1;
     }
     $form['datfat'] = $form['datemi'];
 }
 tesdocInsert($form);
 $last_id = gaz_dbi_last_id();
 //inserisco i righi
 foreach ($form['rows'] as $v) {
       $v['id_tes'] = $last_id;
       rigdocInsert($v);
       if ($admin_aziend['conmag'] == 2 and
          $v['tiprig'] == 0 and
          !empty($v['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
          $magazz->uploadMag(gaz_dbi_last_id(),
                         $form['tipdoc'],
                         $form['numdoc'],
                         '',
                         $form['datemi'],
                         $form['clfoco'],
                         $form['sconto'],
                         $form['caumag'],
                         $v['codart'],
                         $v['quanti'],
                         $v['prelis'],
                         $v['sconto'],
Beispiel #3
0
 $last_id = gaz_dbi_last_id();
 $ctrl_tes = 0;
 foreach ($form['righi'] as $k => $v) {
     if ($v['id_tes'] != $ctrl_tes) {  //se fa parte di un'ordine diverso dal precedente
        //inserisco un rigo descrittivo per il riferimento all'ordine sulla fattura immediata
        $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);
        $row_descri['id_tes'] = $last_id;
        $row_descri['tiprig'] = 2;
        rigdocInsert($row_descri);
     }
     if (isset($v['checkval'])) {   //se e' un rigo selezionato
         //lo inserisco nella fattura immediata
         $row = $v;
         unset ($row['id_rig']);
         $row['id_tes'] = $last_id;
         rigdocInsert($row);
         $last_rigdoc_id = gaz_dbi_last_id();
         if ($v['id_body_text'] > 0) { //se è un rigo testo copio il contenuto vecchio su uno nuovo
            $old_body_text = gaz_dbi_get_row($gTables['body_text'],"id_body",$v['id_body_text']);
            bodytextInsert(array('table_name_ref'=>'rigdoc','id_ref'=>$last_rigdoc_id,'body_text'=>$old_body_text['body_text']));
            gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $last_rigdoc_id, 'id_body_text', gaz_dbi_last_id());
         }
         if ($admin_aziend['conmag'] == 2 and
           $form['righi'][$k]['tiprig'] == 0 and
           !empty($form['righi'][$k]['codart'])) { //se l'impostazione in azienda prevede l'aggiornamento automatico dei movimenti di magazzino
           $upd_mm->uploadMag($last_rigdoc_id,
                          $form['tipdoc'],
                          $form['numdoc'],
                          $form['seziva'],
                          $dataemiss,
                          $form['clfoco'],
        rigdocInsert($rows_data);
        // e se ci sono altri addebiti
        $rs_rows = gaz_dbi_dyn_query("*", $gTables['contract_row'],"id_contract = ".$val['id_contract'],'id_row ASC');
        while ($row = gaz_dbi_fetch_array($rs_rows)) {
               $vat_per = gaz_dbi_get_row($gTables['aliiva'],'codice',$row['vat_code']);
               $rows_data = array('id_tes'=>$tesdoc_id,'tiprig'=>0,
                                  'descri'=>$row['descri'],
                                  'unimis'=>$row['unimis'],
                                  'quanti'=>$row['quanti'],
                                  'prelis'=>$row['price'],
                                  'sconto'=>$row['discount'],
                                  'codvat'=>$row['vat_code'],
                                  'pervat'=>$vat_per['aliquo'],
                                  'codric'=>$row['cod_revenue']
                                  );
               rigdocInsert($rows_data);
        }
    }
 }
 //Mando in stampa le ricevute o le fatture generate
 if ($cntr['doc_type']=='VRI'){
          $doc_type = 7;
 } else {
          $doc_type = 4;
 }
 $locazione = "Location: select_docforprint.php?tipdoc=".$doc_type."&seziva=".$form['vat_section'].
              "&proini=".$first_protoc."&profin=".$last_protoc.
              "&numini=".$first_numdoc."&numfin=".$last_numdoc.
              "&datini=".strftime("%Y%m%d",$uts_this_month)."&datfin=".strftime("%Y%m%d",$uts_this_month);
 header($locazione);
 exit;