while ($row = gaz_dbi_fetch_array($result)) { if (!empty($row['artico'])) { $n++; if ($n > 15) { gaz_set_time_limit (40); // azzero il tempo altrimenti vado in fatal_error $n=0; } $upd_mm->uploadMag($row['id_rif'], $row['tipdoc'], $row['numdoc'], $row['seziva'], $row['datdoc'], $row['clfoco'], $row['scochi'], $row['caumag'], $row['artico'], $row['quanti'], $row['prezzo'], $row['scorig'], 0, $admin_aziend['stock_eval_method'], false, $row['protoc'] ); } } header("Location:report_movmag.php"); exit; } }
Ognuno dovrebbe avere ricevuto una copia della Licenza Pubblica Generica GNU insieme a questo programma; in caso contrario, si scriva alla Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Stati Uniti. -------------------------------------------------------------------------- */ require("../../library/include/datlib.inc.php"); $admin_aziend=checkAdmin(); if (isset($_POST['Delete'])) { $upd_mm = new magazzForm; $form = gaz_dbi_get_row($gTables['movmag'], 'id_mov', intval($_POST['id_mov'])); $upd_mm->uploadMag('DEL',$form['tipdoc'],'','','','','','','','','','',$form['id_mov'],$admin_aziend['stock_eval_method']); if ($form['id_rif'] > 0) { //se il movimento di magazzino è stato generato da un rigo di documento lo azzero gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $form['id_rif'], 'id_mag', 0); } header("Location: report_movmag.php"); exit; } else { $form = gaz_dbi_get_row($gTables['movmag'], 'id_mov', $_GET['id_mov']); $causal = gaz_dbi_get_row($gTables['caumag'], 'codice', $form['caumag']); } if (isset($_POST['Return'])){ header("Location: report_movmag.php"); exit; }
} elseif (isset($form["row_$i"]) && $val_old_row['id_body_text'] == 0 ) { //prima era un rigo diverso da testo bodytextInsert(array('table_name_ref'=>'rigdoc','id_ref'=>$val_old_row['id_rig'],'body_text'=>$form["row_$i"],'lang_id'=>$admin_aziend['id_language'])); gaz_dbi_put_row($gTables['rigdoc'], 'id_rig', $val_old_row['id_rig'], 'id_body_text', gaz_dbi_last_id()); } elseif (!isset($form["row_$i"]) && $val_old_row['id_body_text'] > 0){ //un rigo che prima era testo adesso non lo è più gaz_dbi_del_row($gTables['body_text'], "table_name_ref = 'rigdoc' AND id_ref", $val_old_row['id_rig']); } if ($form['rows'][$i]['id_mag'] > 0 ){ //se il rigo ha un movimento di magazzino associato $upd_mm->uploadMag($val_old_row['id_rig'], $form['tipdoc'], $form['numdoc'], $form['seziva'], $datemi, $form['clfoco'], $form['sconto'], $form['caumag'], $form['rows'][$i]['codart'], $form['rows'][$i]['quanti'], $form['rows'][$i]['prelis'], $form['rows'][$i]['sconto'], $val_old_row['id_mag'], $admin_aziend['stock_eval_method'], false, $form['protoc'] ); } } else { //altrimenti lo elimino if ($val_old_row['id_mag'] > 0){ //se c'è stato un movimento di magazzino lo azzero $upd_mm->uploadMag('DEL',$form['tipdoc'],'','','','','','','','','','',$val_old_row['id_mag'],$admin_aziend['stock_eval_method']); } gaz_dbi_del_row($gTables['rigdoc'], "id_rig", $val_old_row['id_rig']); }
} elseif (substr($testata['tipdoc'],0,2) == 'AF'){ $where = "tipdoc LIKE 'AF_'"; } elseif (substr($testata['tipdoc'],0,2) == 'AD'){ $where = "tipdoc LIKE 'AD_'"; } $rs_ultimo_documento = gaz_dbi_dyn_query("*", $gTables['tesdoc'], $where,"id_tes DESC",0,1); $ultimo_documento = gaz_dbi_fetch_array($rs_ultimo_documento); // ricavo il progressivo annuo, ma se e' il primo documento dell'anno, resetto il contatore if ($ultimo_documento and $ultimo_documento['id_tes'] == $testata['id_tes']) { //allora procedo all'eliminazione della testata e dei righi... gaz_dbi_del_row($gTables['tesdoc'], "id_tes", $testata['id_tes']); $rs_righidel = gaz_dbi_dyn_query("*", $gTables['rigdoc'], "id_tes = '".$testata['id_tes']."'","id_tes desc"); while ($a_row = gaz_dbi_fetch_array($rs_righidel)) { gaz_dbi_del_row($gTables['rigdoc'], "id_rig", $a_row['id_rig']); if (intval($a_row['id_mag']) > 0){ //se c'è stato un movimento di magazzino lo azzero $upd_mm->uploadMag('DEL',$testata['tipdoc'],'','','','','','','','','','',$a_row['id_mag'],$admin_aziend['stock_eval_method']); } } header("Location: ".$_POST['ritorno']); exit; } else { $message = "Si stà tentando di eliminare un documento diverso dall'ultimo emesso !".$ultimo_documento['tipdoc'].$ultimo_documento['id_tes']; } } if (isset($_POST['Return'])) { header("Location: report_ddtacq.php"); exit; } $form = gaz_dbi_get_row($gTables['tesdoc'], "id_tes", $_GET['id_tes']); $anagrafica = new Anagrafica();
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'], $form['sconto'], $form['caumag'], $v['codart'], $v['quanti'], $v['prelis'], $v['sconto'], 0, $admin_aziend['stock_eval_method'] ); } //modifico il rigo dell'ordine indicandoci l'id della testata del DdT gaz_dbi_put_row($gTables['rigbro'], "id_rig", $v['id_rig'], "id_doc",$last_id ); } if ($ctrl_tes != 0 and $ctrl_tes != $v['id_tes']) { //se non è il primo rigo processato //controllo se ci sono ancora righi inevasi $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); $inevasi = gaz_dbi_fetch_array($rs_righi_inevasi);
if (isset($_POST['Delete'])){ //controllo se sono stati emessi documenti nel frattempo... $ultimo_documento = gaz_dbi_fetch_array($rs_ultimo_documento); if ($ultimo_documento) { if (($ultimo_documento['tipdoc'] == 'VRI' || $ultimo_documento['tipdoc'] == 'VCO' || substr($ultimo_documento['tipdoc'],0,2) == 'DD') and $ultimo_documento['numdoc'] == $row['numdoc']) { gaz_dbi_del_row($gTables['tesdoc'], 'id_tes', $row['id_tes']); gaz_dbi_del_row($gTables['tesmov'], 'id_tes', $row['id_con']); gaz_dbi_del_row($gTables['rigmoc'], 'id_tes', $row['id_con']); gaz_dbi_del_row($gTables['rigmoi'], 'id_tes', $row['id_con']); gaz_dbi_put_query($gTables['rigbro'], 'id_doc = '.$row["id_tes"],"id_doc",""); //cancello i righi $rs_righidel = gaz_dbi_dyn_query("*", $gTables['rigdoc'], "id_tes = '".$row['id_tes']."'"); while ($val_old_row = gaz_dbi_fetch_array($rs_righidel)) { if (intval($val_old_row['id_mag']) > 0){ //se c'è stato un movimento di magazzino lo azzero $upd_mm->uploadMag('DEL',$row['tipdoc'],'','','','','','','','','','',$val_old_row['id_mag']); } gaz_dbi_del_row($gTables['rigdoc'], "id_rig", $val_old_row['id_rig']); gaz_dbi_del_row($gTables['body_text'], "table_name_ref = 'rigdoc' AND id_ref", $val_old_row['id_rig']); } header("Location: ".$_POST['ritorno']); exit; } elseif ($ultimo_documento['protoc'] == $_GET['protoc'] and $ultimo_documento['tipdoc'] != 'FAD') { //allora procedo all'eliminazione della testata e dei righi... //cancello la testata gaz_dbi_del_row($gTables['tesdoc'], "id_tes", $row['id_tes']); gaz_dbi_del_row($gTables['tesmov'], 'id_tes', $row['id_con']); gaz_dbi_del_row($gTables['rigmoc'], 'id_tes', $row['id_con']); gaz_dbi_del_row($gTables['rigmoi'], 'id_tes', $row['id_con']); gaz_dbi_put_query($gTables['rigbro'], 'id_doc = '.$row["id_tes"],"id_doc",""); // cancello pure l'eventuale movimento di split payment
} if (empty($msg)) { // nessun errore $upd_mm = new magazzForm; //formatto le date $form['datreg'] = $form['annreg']."-".$form['mesreg']."-".$form['gioreg']; $form['datdoc'] = $form['anndoc']."-".$form['mesdoc']."-".$form['giodoc']; $new_caumag = gaz_dbi_get_row($gTables['caumag'], "codice", $form['caumag']); if (!empty($form['artico'])) { $upd_mm->uploadMag($form['id_rif'], $form['tipdoc'], 0, // numdoc è in desdoc 0, // seziva è in desdoc $form['datdoc'], $form['clfoco'], $form['scochi'], $form['caumag'], $form['artico'], $form['quanti'], $form['prezzo'], $form['scorig'], $form['id_mov'], $admin_aziend['stock_eval_method'], array('datreg'=>$form['datreg'],'operat'=>$form['operat'],'desdoc'=>$form['desdoc']) ); } header("Location:report_movmag.php"); exit; } } } elseif (!isset($_POST['Insert'])) { //se e' il primo accesso per INSERT $form['hidden_req'] = ''; //registri per il form della testata