'.tr('Produzione').'

'; $search_lotto = $get['search_lotto']; $search_serial = $get['search_serial']; $search_altro = $get['search_altro']; // Calcolo prossimo lotto e serial number $rs = $dbo->fetchArray('SELECT MAX(lotto) AS max_lotto, MAX(serial) AS max_serial, MAX(altro) AS max_altro FROM mg_prodotti WHERE idarticolo='.prepare($id_record)); $max_lotto = $rs[0]['max_lotto']; $max_serial = $rs[0]['max_serial']; $max_altro = $rs[0]['max_altro']; //$next_lotto = get_next_code($max_lotto); $next_serial = get_next_code($max_serial); //$next_altro = get_next_code($max_altro); echo '
'; // Campi di inserimento lotti echo '

'.tr('Inserimento nuovi prodotti').'

'; /* // Lotto echo '
'; if (!empty($max_lotto)) { echo '

'.tr('Ultimo lotto inserito').': '.$max_lotto.'

'; } echo '
'; */ // Serial echo '
'; if (!empty($max_serial)) { echo '

'.tr('Ultimo serial number inserito').': '.$max_serial.'

'; } echo '
'; /* // Altro echo '
'; if (!empty($max_altro)) { echo '

'.tr('Ultimo codice aggiuntivo inserito').': '.$max_altro.'

'; } echo '
'; */ // Totale prodotti da inserire echo '

'.tr('Totale prodotti da inserire').': 0

'; // Visualizzo, in base alle impostazioni scelte, se il magazzino verrà movimentato if (get_var("Movimenta il magazzino durante l'inserimento o eliminazione dei lotti/serial number") == true) { echo ' '.tr("L'inserimento incrementerà la quantità dell'articolo!").''; } else { echo ' '.tr("L'inserimento non movimenterà la quantità dell'articolo!").''; } echo '
'; // Ricerca echo '

'.tr('Ricerca prodotti').'

'; // Visualizzo, in base alle impostazioni scelte, se il magazzino verrà movimentato if (get_var("Movimenta il magazzino durante l'inserimento o eliminazione dei lotti/serial number")) { echo tr("La cancellazione decrementerà la quantità dell'articolo!"); } else { echo tr("L'inserimento decrementerà la quantità dell'articolo!"); } echo '
'; // Conteggio totale prodotti $rs = $dbo->fetchArray('SELECT COUNT(id) AS tot FROM mg_prodotti WHERE idarticolo='.prepare($id_record)); $tot_prodotti = $rs[0]['tot']; // Visualizzazione di tutti i prodotti $query = 'SELECT * FROM mg_prodotti WHERE idarticolo='.prepare($id_record).' AND lotto LIKE '.prepare('%'.$search_lotto.'%').' AND serial LIKE '.prepare('%'.$search_serial.'%').' AND altro LIKE '.prepare('%'.$search_altro.'%').' ORDER BY created_at DESC, lotto DESC, serial DESC, altro DESC'; if (!empty($get['show_all3']) && $search_lotto == '' && $search_serial == '' && $search_altro == '') { $query .= ' LIMIT 0, 20'; } $rs2 = $dbo->fetchArray($query); echo ' '; for ($i = 0; $i < count($rs2); ++$i) { echo ' '; echo ' '; // Ricerca vendite su ddt $query3 = 'SELECT *, ( SELECT descrizione FROM dt_tipiddt WHERE id=(SELECT idtipoddt FROM dt_ddt WHERE id=idddt) ) AS tipo_documento, ( SELECT `dir` FROM dt_tipiddt WHERE id=(SELECT idtipoddt FROM dt_ddt WHERE id=idddt) ) AS `dir`, ( SELECT numero FROM dt_ddt WHERE id=idddt ) AS numero, ( SELECT numero_esterno FROM dt_ddt WHERE id=idddt ) AS numero_esterno, ( SELECT data FROM dt_ddt WHERE id=idddt ) AS data FROM dt_righe_ddt WHERE idarticolo='.prepare($id_record).' AND lotto='.prepare($rs2[$i]['lotto']).' AND serial='.prepare($rs2[$i]['serial']).' AND altro='.prepare($rs2[$i]['altro']); $rs3 = $dbo->fetchArray($query3); // Ricerca vendite su fatture $query4 = 'SELECT *, ( SELECT descrizione FROM co_tipidocumento WHERE id=(SELECT idtipodocumento FROM co_documenti WHERE id=iddocumento) ) AS tipo_documento, ( SELECT `dir` FROM co_tipidocumento WHERE id=(SELECT idtipodocumento FROM co_documenti WHERE id=iddocumento) ) AS `dir`, ( SELECT numero FROM co_documenti WHERE id=iddocumento ) AS numero, ( SELECT numero_esterno FROM co_documenti WHERE id=iddocumento ) AS numero_esterno, ( SELECT data FROM co_documenti WHERE id=iddocumento ) AS data FROM co_righe_documenti WHERE idarticolo='.prepare($id_record).' AND lotto='.prepare($rs2[$i]['lotto']).' AND serial='.prepare($rs2[$i]['serial']).' AND altro='.prepare($rs2[$i]['altro']); $rs4 = $dbo->fetchArray($query4); // Ricerca inserimenti su ordini $query5 = 'SELECT *, ( SELECT descrizione FROM or_tipiordine WHERE id=(SELECT idtipoordine FROM or_ordini WHERE id=idordine) ) AS tipo_documento, ( SELECT `dir` FROM or_tipiordine WHERE id=(SELECT idtipoordine FROM or_ordini WHERE id=idordine) ) AS `dir`, ( SELECT numero FROM or_ordini WHERE id=idordine ) AS numero, ( SELECT numero_esterno FROM or_ordini WHERE id=idordine ) AS numero_esterno, ( SELECT data FROM or_ordini WHERE id=idordine ) AS data FROM or_righe_ordini WHERE idarticolo='.prepare($id_record).' AND lotto='.prepare($rs2[$i]['lotto']).' AND serial='.prepare($rs2[$i]['serial']).' AND altro='.prepare($rs2[$i]['altro']); $rs5 = $dbo->fetchArray($query5); // Ricerca inserimenti su interventi $query6 = 'SELECT mg_articoli_interventi.*, in_interventi.codice, ( SELECT orario_inizio FROM in_interventi_tecnici WHERE idintervento=mg_articoli_interventi.idintervento LIMIT 0,1 ) AS data FROM mg_articoli_interventi JOIN in_interventi ON in_interventi.id = mg_articoli_interventi.idintervento WHERE idarticolo='.prepare($id_record).' AND lotto='.prepare($rs2[$i]['lotto']).' AND serial='.prepare($rs2[$i]['serial']).' AND altro='.prepare($rs2[$i]['altro']); $rs6 = $dbo->fetchArray($query6); if (!empty($rs3) || !empty($rs4) || !empty($rs5) || !empty($rs6)) { // Venduto su fatture if (!empty($rs4)) { $numero = ($rs4[0]['numero_esterno'] != '') ? $rs4[0]['numero_esterno'] : $rs4[0]['numero']; $module_id = Modules::getModule('Fatture di vendita')['id']; $id = $rs4[0]['iddocumento']; $documento = $rs4[0]['tipo_documento']; $data = $rs4[0]['data']; $subtotale = $rs4[0]['subtotale']; $iva = $rs4[0]['iva']; } // Venduto su ddt elseif (!empty($rs3)) { $numero = ($rs3[0]['numero_esterno'] != '') ? $rs3[0]['numero_esterno'] : $rs3[0]['numero']; $module_id = Modules::getModule('Ddt di vendita')['id']; $id = $rs3[0]['idddt']; $documento = $rs3[0]['tipo_documento']; $data = $rs3[0]['data']; $subtotale = $rs3[0]['subtotale']; $iva = $rs3[0]['iva']; } // Inserito su ordini elseif (!empty($rs5)) { $numero = ($rs5[0]['numero_esterno'] != '') ? $rs5[0]['numero_esterno'] : $rs5[0]['numero']; $module_id = Modules::getModule('Ordini cliente')['id']; $id = $rs5[0]['idordine']; $documento = $rs5[0]['tipo_documento']; $data = $rs5[0]['data']; $subtotale = $rs5[0]['subtotale']; $iva = $rs5[0]['iva']; } // Inserito su intervento elseif (!empty($rs6)) { $numero = ($rs6[0]['numero_esterno'] != '') ? $rs6[0]['numero_esterno'] : $rs6[0]['numero']; $module_id = Modules::getModule('Interventi')['id']; $id = $rs6[0]['idintervento']; $documento = tr('Intervento').' '.$rs6[0]['codice']; $data = $rs6[0]['data']; $extra = str_replace('_QTA_', $rs6[0]['qta'], tr('(q.tà _QTA_)')); $totale = $rs6[0]['prezzo_vendita'] * $rs6[0]['qta']; } if (empty($totale) && !empty($subtotale) && !empty($iva)) { $totale = $subtotale + $iva; } $text = str_replace(['_DOC_', '_NUM_', '_DATE_'], [$documento, $numero, Translator::dateToLocale($data)], tr('_DOC_ no _NUM_ del _DATE_')).(!empty($extra) ? ' '.$extra : ''); echo ' '; } // Non venduto else { // Documento di vendita echo ' '; // Totale echo ' '; echo ' '; } echo ' '; } echo '
'.tr('Serial').' '.tr('Data di creazione').' '.tr('Documento di vendita').' '.tr('Totale').'
'.$rs2[$i]['serial'].''.Translator::timestampToLocale($rs2[$i]['created_at']).' '.Modules::link($module_id, $id, $text).' € '.Translator::numberToLocale($totale).''; if (!empty($subtotale) && !empty($iva)) { echo '
'.Translator::numberToLocale($subtotale).' + '.Translator::numberToLocale($iva).''; } echo '
'; ?>