<label>Tipo:</label> </td> <td style="width: 100px; text-align: center;"> <label>Giacenza:</label> </td> <td style="width: 120px; text-align: center;"> <label>Riordino:</label> </td> </tr> <tr><td colspan="9"><hr /></td></tr> </table> <?php foreach ($Prodotti as $key => $field) { $GiacenzaProdotto = getGiacenza($field['cod_int'], 1); if ($field['um'] == "Pz") { $GiacenzaProdotto = sprintf("%d", $GiacenzaProdotto); $SogliaRiordino = sprintf("%d", $field['riordino']); } else { $GiacenzaProdotto = sprintf("%.2f", $GiacenzaProdotto); $SogliaRiordino = sprintf("%.2f", $field['riordino']); } // se la giacenza del prodotto e' > 0 allora elencalo if ($GiacenzaProdotto > 0 && isset($_POST['only_giacenza'])) { ?> <div id="<?php echo "prod_{$key}"; ?> " class="expander"> <table class="dettaglio" style="width: 100%;">
</a> <input type="checkbox" title="Commuta Selezione" onclick="Javascript: SelectAll('multisel', 'comm'); void(0);" /> </th> </tr> <tr><th colspan="10"><hr /></th></tr> <?php foreach ($Campi as $key => $field) { $Image = $field['cod_forn'] . ".jpg"; $DisponibilitaProdotto = getGiacenza($field['cod_int'], 1); if ($field['um'] == "Pz") { $DisponibilitaProdotto = sprintf("%." . PRECISIONE_DECIMALI . "f", $DisponibilitaProdotto); } ?> <tr> <td> <?php echo $field['cod_forn']; ?> </td> <td> <?php echo $field['cod_int']; ?>
<td style="width: 150px;"> <label>Tipo:</label> </td> <td style="width: 100px; text-align: center;"> <label>Giacenza:</label> </td> <td style="width: 100px; text-align: center;"> <label>Riordino:</label> </td> </tr> <tr><td colspan="9"><hr /></td></tr> </table> <?php foreach ($Prodotti as $key => $field) { $giac_prod = getGiacenza($field['cod_int'], 0); $prodotto = $d->GetRows("*", "view_prodotti", "cod_int = '" . $field['cod_int'] . "'", "", "", 1); ?> <div id="<?php echo "prod_{$key}"; ?> " class="expander"> <table class="dettaglio" style="width: 100%;"> <tr onclick="Javascript: Expand('prod_<?php echo $key; ?> ', 'img<?php echo $key; ?>
function AddDocumentRow($RowType, $IdProdotto, $IdIVA = "", $Note = "", $Quantita = 1, $Sconto = 0, $Prezzo = 0) { global $d; $DocumentRow = array(); $UpdateDocumentRow = ""; if (!isset($_SESSION['documento']['dettaglio'])) { $_SESSION['documento']['dettaglio'] = array(); } if (is_numeric($IdProdotto) && $IdProdotto > 0) { // si tratta di un prodotto reale, estraggo tutti i dati dall'anagrafica: //~ echo "[Debug][AddDocumentRow]: si tratta di un prodotto reale, estraggo tutti i dati dall'anagrafica <br />"; $ProdottoArray = $d->GetRows("*", "view_prodotti", "id_prodotto = '{$IdProdotto}' LIMIT 1", "", "", 1); $DocumentRow = $ProdottoArray[0]; } elseif (is_numeric($IdProdotto) && $IdProdotto == 0) { // si tratta di una voce arbitraria o una nota ( todo ): //~ echo "[Debug][AddDocumentRow]: si tratta di una voce arbitraria o una nota ( todo ) <br />"; $DocumentRow['id_prodotto'] = 0; $DocumentRow['cod_int'] = "-"; $DocumentRow['cod_forn'] = "-"; $DocumentRow['um'] = "-"; } //~ echo "[Debug][AddDocumentRow]: IVA: '$IdIVA' <br />"; if ($IdIVA == "") { // Recupera i dati dell'iva del prodotto se non e' stato fornito l'id: //~ echo "[Debug][AddDocumentRow]: Recupera i dati dell'iva del prodotto se non e' stato fornito l'id <br />"; $IvaArray = $d->GetRows("*", "tab_iva", "id_iva = '" . $ProdottoArray[0]['id_iva'] . "'", "", "", 1); $DocumentRow['id_iva'] = $IvaArray[0]['id_iva']; $DocumentRow['iva'] = $IvaArray[0]['iva']; $DocumentRow['desc_iva'] = $IvaArray[0]['desc_iva']; unset($IvaArray); } elseif (is_numeric($IdIVA)) { // Importa i dati dell'iva in base all'id fornito: //~ echo "[Debug][AddDocumentRow]: Importa i dati dell'iva in base all'id fornito <br />"; $IvaArray = $d->GetRows("*", "tab_iva", "id_iva = '{$IdIVA}'", "", "", 1); //~ echo "<pre>"; //~ print_r($IvaArray); //~ echo "</pre>"; $DocumentRow['id_iva'] = $IvaArray[0]['id_iva']; $DocumentRow['iva'] = $IvaArray[0]['iva']; $DocumentRow['desc_iva'] = $IvaArray[0]['desc_iva']; unset($IvaArray); } //~ echo "[Debug][AddDocumentRow]: NOTE: $Note <br />"; if ($Note == "") { if (is_numeric($IdProdotto) && $IdProdotto > 0) { /* si tratta di un prodotto, quindi utilizzo le note * dall'anagrafica per popolare il dato */ $DocumentRow['note'] = $ProdottoArray[0]['note']; } } else { // utilizzo il valore fornito per popolare il campo: if (is_numeric($IdProdotto) && $IdProdotto == 0) { // si tratta di una voce arbitraria o una nota ( todo ): //~ echo "[Debug][AddDocumentRow]: si tratta di una voce arbitraria o una nota ( todo ) <br />"; $DocumentRow['marca'] = ""; $DocumentRow['modello'] = $Note; $DocumentRow['voce_arb'] = $Note; } else { $DocumentRow['note'] = $Note; } } //~ echo "[Debug][AddDocumentRow]: Quantita: $Quantita <br />"; if ($Quantita == "" || $Quantita < 0) { // Se la quantità scelta è nulla o < 1 allora impostala ad 1: //~ echo "[Debug][AddDocumentRow]: Quantita' inferiore a zero, la porto ad 1 <br />"; $Quantita = 1; } if ($Quantita > 0) { if ($_SESSION['documento']['tipo_doc'] == 5) { $DocumentRow['disp'] = getGiacenza($DocumentRow['cod_int']); $DocumentRow['qta'] = getDisponibilita($IdProdotto, $Quantita); $DocumentRow['prz'] = $ProdottoArray[0]['prz_ve']; } else { // disponibilita' in altri casi non realmente importante $DocumentRow['disp'] = getGiacenza($DocumentRow['cod_int']); $DocumentRow['qta'] = $Quantita; $DocumentRow['prz'] = $ProdottoArray[0]['prz_acq']; } } switch ($RowType) { case "prodotto": /* * 01/07/2012 12:49:13 CEST Claudio Giordano * * Verifico la presenza dello stesso articolo nel documento */ foreach ($_SESSION['documento']['dettaglio'] as $key => $field) { if ($field['id_prodotto'] == $ProdottoArray[0]['id_prodotto']) { //~ echo "[Debug][AddDocumentRow]: l'articolo e' presente nel documento con KEY: $key <br />"; $UpdateDocumentRow = $key; } } $DocumentRow['sco'] = $Sconto; $DocumentRow['voce_arb'] = ""; unset($temp_array); break; case "nota": // TODO break; case "voce": $DocumentRow['sco'] = $Sconto; break; default: echo "[Debug][AddDocumentRow]: Errore, tipo di riga non riconsciuto, esco <br />"; return; } //~ echo "[Debug][AddDocumentRow]: UpdateDocumentRow: '$UpdateDocumentRow' <br />"; if (!is_numeric($UpdateDocumentRow)) { // accoda la riga al dettaglio: //~ echo "[Debug][AddDocumentRow]: aggiungo la nuova riga al documento <br />"; array_push($_SESSION['documento']['dettaglio'], $DocumentRow); } else { /* * se e' stato trovato il prodotto nel dettaglio aggiorna/sostituisci la riga * incrementando anche la quantita' */ //~ echo "[Debug][AddDocumentRow]: aggiorno la riga $UpdateDocumentRow del documento con i nuovi dati <br />"; //~ echo "[Debug]: sess_qta: ".$_SESSION['documento']['dettaglio'][$UpdateDocumentRow]['qta']." <br />"; //~ echo "[Debug]: row_qta: ".$DocumentRow['qta']." <br />"; //~ echo "[Debug]: _qta: $Quantita <br />"; $DocumentRow['qta'] = floatval(floatval($_SESSION['documento']['dettaglio'][$UpdateDocumentRow]['qta']) + floatval($Quantita)); $_SESSION['documento']['dettaglio'][$UpdateDocumentRow] = $DocumentRow; } unset($ProdottoArray); }