diff --git a/ajax_select.php b/ajax_select.php index 366e76edf..4ca1eaa1d 100644 --- a/ajax_select.php +++ b/ajax_select.php @@ -231,9 +231,9 @@ switch ($op) { $filter[] = 'mg_articoli.id='.prepare($element); } - $where[] = 'attivo=1'; + $where[] = 'attivo = 1'; if (!empty($superselect['dir']) && $superselect['dir'] == 'entrata') { - //$where[] = 'qta>0'; + //$where[] = '(qta > 0 OR servizio = 1)'; } if (!empty($search)) { @@ -241,7 +241,6 @@ switch ($op) { $search_fields[] = 'mg_articoli.codice LIKE '.prepare('%'.$search.'%'); } - $wh = ''; if (!empty($search_fields)) { $where[] = '('.implode(' OR ', $search_fields).')'; } @@ -250,6 +249,7 @@ switch ($op) { $where[] = '('.implode(' OR ', $filter).')'; } + $wh = ''; if (count($where) != 0) { $wh = 'WHERE '.implode(' AND ', $where); } diff --git a/modules/articoli/modutil.php b/modules/articoli/modutil.php index 73f71e13f..dabab38f7 100644 --- a/modules/articoli/modutil.php +++ b/modules/articoli/modutil.php @@ -12,7 +12,7 @@ function add_movimento_magazzino($idarticolo, $qta, $array = [], $descrizone = ' if (empty($qta)) { return false; } - + //Info Articolo $rs_art = $dbo->fetchArray("SELECT * FROM mg_articoli WHERE id='".$idarticolo."'"); @@ -79,9 +79,9 @@ function add_movimento_magazzino($idarticolo, $qta, $array = [], $descrizone = ' $movimento = str_replace(['_NAME_', '_TYPE_', '_NUM_'], [$nome, $tipo, $numero], $movimento); $new = ($qta > 0 ? '+' : '').$qta; - + //Movimento il magazzino solo se l'articolo non è un servizio - if($rs_art[0]['servizio']==0){ + if ($rs_art[0]['servizio'] == 0) { // Movimentazione effettiva if (empty($array['idintervento']) || empty($array['idautomezzo'])) { $dbo->query('UPDATE mg_articoli SET qta = qta + '.$new.' WHERE id = '.prepare($idarticolo)); diff --git a/modules/fatture/edit.php b/modules/fatture/edit.php index 2b24704c2..7aad27565 100644 --- a/modules/fatture/edit.php +++ b/modules/fatture/edit.php @@ -7,6 +7,7 @@ $dir = $rs[0]['dir']; $tipodoc = $rs[0]['descrizione']; $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica']; +$_SESSION['superselect']['ddt'] = $dir; ?>
@@ -17,12 +18,12 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica']; - +
-

+

@@ -42,7 +43,7 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica'];
'; $label = tr('Numero secondario'); } else { - $label = tr('Numero fattura'); + $label = tr('Numero fattura'); } ?>
@@ -109,7 +110,7 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica'];
- {[ "type": "select", "label": "", "name": "idtipodocumento", "required": 1, "values": "query=SELECT id, descrizione FROM co_tipidocumento WHERE dir=''", "value": "$idtipodocumento$" ]} + {[ "type": "select", "label": "", "name": "idtipodocumento", "required": 1, "values": "query=SELECT id, descrizione FROM co_tipidocumento WHERE dir=''", "value": "$idtipodocumento$" ]}
@@ -120,7 +121,7 @@ $_SESSION['superselect']['idanagrafica'] = $records[0]['idanagrafica']; $ajaxsource = 'conti-acquisti'; } ?> - {[ "type": "select", "label": "", "name": "idconto", "required": 1, "value": "$idconto$", "ajax-source": "" ]} + {[ "type": "select", "label": "", "name": "idconto", "required": 1, "value": "$idconto$", "ajax-source": "" ]}
@@ -191,13 +192,13 @@ $da_pagare = $rs3[0]['da_pagare']; if (($n2 <= 0 && $records[0]['stato'] == 'Emessa') || $differenza != 0) { ?> - Aggiungi prima nota...

+ ...

- Riapri fattura... + ... @@ -206,7 +207,7 @@ if ($records[0]['stato'] == 'Pagato') {
- {[ "type": "number", "label": "", "name": "sconto_generico", "value": "$sconto_globale$", "help": "", "icon-after": "choice|untprc|$tipo_sconto_globale$"", "name": "sconto_generico", "value": "$sconto_globale$", "help": "", "icon-after": "choice|untprc|$tipo_sconto_globale$"fetchNum($qi); + $int_query = 'SELECT COUNT(*) AS tot FROM in_interventi WHERE idanagrafica='.prepare($records[0]['idanagrafica'])." AND NOT idstatointervento='DENY' AND id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)"; + $interventi = $dbo->fetchArray($int_query)[0]['tot']; // Se non trovo niente provo a vedere se ce ne sono per clienti terzi if (empty($interventi)) { // Lettura interventi non rifiutati, non fatturati e non collegati a preventivi o contratti (clienti terzi) - $qi = 'SELECT id FROM in_interventi WHERE idclientefinale='.prepare($records[0]['idanagrafica'])." AND NOT idstatointervento='DENY' AND id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)"; - $interventi = $dbo->fetchNum($qi); + $int_query = 'SELECT COUNT(*) AS tot FROM in_interventi WHERE idclientefinale='.prepare($records[0]['idanagrafica'])." AND NOT idstatointervento='DENY' AND id NOT IN (SELECT idintervento FROM co_righe_documenti WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_preventivi_interventi WHERE idintervento IS NOT NULL) AND id NOT IN (SELECT idintervento FROM co_righe_contratti WHERE idintervento IS NOT NULL)"; + $interventi = $dbo->fetchArray($int_query)[0]['tot']; } echo ' @@ -266,16 +267,16 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') { '; // Lettura preventivi accettati, in attesa di conferma o in lavorazione - $qp = 'SELECT id FROM co_preventivi WHERE idanagrafica='.prepare($records[0]['idanagrafica'])." AND id NOT IN (SELECT idpreventivo FROM co_righe_documenti WHERE NOT idpreventivo=NULL) AND idstato IN( SELECT id FROM co_statipreventivi WHERE descrizione='Accettato' OR descrizione='In lavorazione' OR descrizione='In attesa di conferma')"; - $preventivi = $dbo->fetchNum($qp); + $prev_query = 'SELECT COUNT(*) AS tot FROM co_preventivi WHERE idanagrafica='.prepare($records[0]['idanagrafica'])." AND id NOT IN (SELECT idpreventivo FROM co_righe_documenti WHERE NOT idpreventivo=NULL) AND idstato IN( SELECT id FROM co_statipreventivi WHERE descrizione='Accettato' OR descrizione='In lavorazione' OR descrizione='In attesa di conferma')"; + $preventivi = $dbo->fetchArray($prev_query)[0]['tot']; echo ' Preventivo '; // Lettura contratti accettati, in attesa di conferma o in lavorazione - $qc = 'SELECT id FROM co_contratti WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND id NOT IN (SELECT idcontratto FROM co_righe_documenti WHERE NOT idcontratto=NULL) AND idstato IN( SELECT id FROM co_staticontratti WHERE fatturabile = 1) AND NOT EXISTS (SELECT id FROM co_righe_documenti WHERE co_righe_documenti.idcontratto = co_contratti.id)'; - $contratti = $dbo->fetchNum($qc); + $contr_query = 'SELECT COUNT(*) AS tot FROM co_contratti WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND id NOT IN (SELECT idcontratto FROM co_righe_documenti WHERE NOT idcontratto=NULL) AND idstato IN( SELECT id FROM co_staticontratti WHERE fatturabile = 1) AND NOT EXISTS (SELECT id FROM co_righe_documenti WHERE co_righe_documenti.idcontratto = co_contratti.id)'; + $contratti = $dbo->fetchArray($contr_query)[0]['tot']; echo ' @@ -283,8 +284,8 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') { '; // Lettura ddt - $qd = 'SELECT id FROM dt_ddt WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND idstatoddt IN (SELECT id FROM dt_statiddt WHERE descrizione IN(\'Bozza\', \'Parzialmente fatturato\')) AND idtipoddt=(SELECT id FROM dt_tipiddt WHERE dir='.prepare($dir).') AND dt_ddt.id IN (SELECT idddt FROM dt_righe_ddt WHERE dt_righe_ddt.idddt = dt_ddt.id AND (qta - qta_evasa) > 0)'; - $ddt = $dbo->fetchNum($qd); + $ddt_query = 'SELECT COUNT(*) AS tot FROM dt_ddt WHERE idanagrafica='.prepare($records[0]['idanagrafica']).' AND idstatoddt IN (SELECT id FROM dt_statiddt WHERE descrizione IN(\'Bozza\', \'Parzialmente fatturato\')) AND idtipoddt=(SELECT id FROM dt_tipiddt WHERE dir='.prepare($dir).') AND dt_ddt.id IN (SELECT idddt FROM dt_righe_ddt WHERE dt_righe_ddt.idddt = dt_ddt.id AND (qta - qta_evasa) > 0)'; + $ddt = $dbo->fetchArray($ddt_query)[0]['tot']; echo ' Ddt @@ -292,7 +293,12 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') { } // Lettura articoli - $articoli = $dbo->fetchNum('SELECT * FROM mg_articoli WHERE qta > 0'); + $art_query = 'SELECT COUNT(*) AS tot FROM mg_articoli WHERE attivo = 1'; + if ($dir == 'entrata') { + $art_query .= ' AND (qta > 0 OR servizio = 1)'; + } + + $articoli = $dbo->fetchArray($art_query)[0]['tot']; echo ' Articolo @@ -302,7 +308,7 @@ if ($records[0]['stato'] != 'Pagato' && $records[0]['stato'] != 'Emessa') { Riga generica '; - + echo ' Descrizione @@ -341,11 +347,11 @@ if ($dir == 'entrata') { } else { if ($records[0]['descrizione_tipodoc'] == 'Fattura accompagnatoria di vendita') { ?> - Stampa fattura + Stampa fattura - Stampa fattura + Stampa fattura
-{( "name": "filelist_and_upload", "id_module": "", "id_record": "" )} +{( "name": "filelist_and_upload", "id_module": "", "id_record": "" )}