mirror of
https://github.com/devcode-it/openstamanager.git
synced 2024-12-22 21:28:08 +01:00
Prezzo di acquisto e guadagno - Fatture di vendita e preventivi (#385)
* Implementato il guadagno sulle fatture di vendita * Fix calcolo guadagno e etichette degli input * Implementato prezzo di acquisto e guadagno nei preventivi
This commit is contained in:
parent
ac2c2e0a6f
commit
cc2a95a39b
@ -26,20 +26,66 @@ echo '
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
// Costo unitario
|
||||
// Prezzo di acquisto unitario
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{[ "type": "number", "label": "'.tr('Costo unitario').'", "name": "prezzo", "value": "'.$result['prezzo'].'", "required": 1, "icon-after": "€" ]}
|
||||
<div class="col-md-3">
|
||||
{[ "type": "number", "label": "'.tr('Prezzo di acquisto unitario').'", "name": "prezzo_acquisto", "value": "'.$result['prezzo_unitario_acquisto'].'", "required": 0, "icon-after": "€", "onkeyup": "aggiorna_guadagno()" ]}
|
||||
</div>';
|
||||
|
||||
// Prezzo di vendita unitario
|
||||
echo '
|
||||
<div class="col-md-3">
|
||||
{[ "type": "number", "label": "'.tr('Prezzo di vendita unitario').'", "name": "prezzo", "value": "'.$result['prezzo'].'", "required": 1, "icon-after": "€", "onkeyup": "aggiorna_guadagno()" ]}
|
||||
</div>';
|
||||
|
||||
// Sconto unitario
|
||||
echo '
|
||||
<div class="col-md-6">
|
||||
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$result['sconto_unitario'].'", "icon-after": "choice|untprc|'.$result['tipo_sconto'].'" ]}
|
||||
<div class="col-md-3">
|
||||
{[ "type": "number", "label": "'.tr('Sconto unitario').'", "name": "sconto", "value": "'.$result['sconto_unitario'].'", "icon-after": "choice|untprc|'.$result['tipo_sconto'].'", "onkeyup": "aggiorna_guadagno()"]}
|
||||
</div>';
|
||||
|
||||
// Guadagno unitario
|
||||
echo '
|
||||
<div class="col-md-3">
|
||||
{[ "type": "number", "label": "'.tr('Guadagno unitario').'", "name": "guadagno", "value": "'.$result['sconto_unitario'].'", "icon-after": "€", "disabled": 1 ]}
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
// Funzione per l'aggiornamento in tempo reale del guadagno
|
||||
|
||||
echo '
|
||||
<script>
|
||||
function aggiorna_guadagno() {
|
||||
var prezzo_acquisto = parseFloat($("#prezzo_acquisto").val().replace(/\./g, ""));
|
||||
var prezzo = parseFloat($("#prezzo").val().replace(/\./g, ""));
|
||||
var sconto = parseFloat($("#sconto").val().replace(/\./g, ""));
|
||||
if ($("#tipo_sconto").val() === "PRC") {
|
||||
sconto = sconto / 100 * prezzo
|
||||
}
|
||||
var guadagno = $("#guadagno");
|
||||
var parentdiv = guadagno.parent();
|
||||
var errorsdiv = parentdiv.parent().find("div[id*=\'errors\']");
|
||||
guadagno.val(prezzo - sconto - prezzo_acquisto);
|
||||
if (parseFloat(guadagno.val().replace(/\./g, "")) < 0) {
|
||||
guadagno.css("color", "red");
|
||||
parentdiv.addClass("has-error");
|
||||
errorsdiv.addClass("has-error");
|
||||
if (errorsdiv.find(".help-block").length === 0) {
|
||||
errorsdiv.append("<span class=\'help-block\'>Il guadagno è negativo!</span>");
|
||||
}
|
||||
} else {
|
||||
guadagno.css("color", "black");
|
||||
parentdiv.removeClass("has-error");
|
||||
errorsdiv.removeClass("has-error");
|
||||
errorsdiv.find(".help-block").remove()
|
||||
}
|
||||
}
|
||||
aggiorna_guadagno();
|
||||
$("#tipo_sconto").change(aggiorna_guadagno)
|
||||
</script>
|
||||
';
|
||||
|
||||
if ($module['name'] == 'Fatture di vendita') {
|
||||
$collapsed = empty($result['data_inizio_periodo']) && empty($result['data_fine_periodo']) && empty($result['riferimento_amministrazione']);
|
||||
|
||||
|
@ -622,6 +622,7 @@ switch (post('op')) {
|
||||
$riga->id_rivalsa_inps = post('id_rivalsa_inps');
|
||||
}
|
||||
|
||||
$riga->prezzo_unitario_acquisto = post("prezzo_acquisto");
|
||||
$riga->prezzo_unitario_vendita = post('prezzo');
|
||||
$riga->qta = $qta;
|
||||
$riga->sconto_unitario = post('sconto');
|
||||
|
@ -16,9 +16,11 @@ echo '
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').'</th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Prezzo unitario').'</th>
|
||||
<th width="150">'.tr('Prezzo acq. unitario').'</th>
|
||||
<th width="160">'.tr('Prezzo vend. unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Importo').'</th>
|
||||
<th width="120">'.tr('Guadagno').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@ -28,6 +30,7 @@ if (!empty($rs)) {
|
||||
foreach ($rs as $r) {
|
||||
// Valori assoluti
|
||||
$r['qta'] = abs($r['qta']);
|
||||
$r['prezzo_unitario_acquisto'] = abs($r['prezzo_unitario_acquisto']);
|
||||
$r['subtotale'] = abs($r['subtotale']);
|
||||
$r['sconto_unitario'] = abs($r['sconto_unitario']);
|
||||
$r['sconto'] = abs($r['sconto']);
|
||||
@ -143,7 +146,16 @@ if (!empty($rs)) {
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Prezzo unitario
|
||||
// Prezzo di acquisto unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($r['prezzo_unitario_acquisto']).' €';
|
||||
}
|
||||
|
||||
// Prezzo di vendita unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
@ -186,6 +198,22 @@ if (!empty($rs)) {
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Guadagno
|
||||
$guadagno = $r['subtotale'] - ($r['prezzo_unitario_acquisto'] * $r["qta"]) - ($r["sconto_unitario"] * $r["qta"]);
|
||||
if ($guadagno < 0) {
|
||||
$guadagno_style = "background-color: #FFC6C6; border: 3px solid red";
|
||||
} else {
|
||||
$guadagno_style = "";
|
||||
}
|
||||
echo '
|
||||
<td class="text-right" style="' . $guadagno_style . '">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($guadagno).' €';
|
||||
}
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Possibilità di rimuovere una riga solo se la fattura non è pagata
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
@ -236,6 +264,10 @@ echo '
|
||||
</tbody>';
|
||||
|
||||
// Calcoli
|
||||
$totale_acquisto = 0;
|
||||
foreach ($rs as $r) {
|
||||
$totale_acquisto += ($r["prezzo_unitario_acquisto"] * $r["qta"]);
|
||||
}
|
||||
$imponibile = sum(array_column($rs, 'subtotale'));
|
||||
$sconto = sum(array_column($rs, 'sconto'));
|
||||
$iva = sum(array_column($rs, 'iva'));
|
||||
@ -264,10 +296,15 @@ $totale_iva = abs($totale_iva);
|
||||
$totale = abs($totale);
|
||||
$netto_a_pagare = abs($netto_a_pagare);
|
||||
|
||||
$totale_guadagno = sum([
|
||||
$imponibile_scontato
|
||||
-$totale_acquisto
|
||||
]);
|
||||
|
||||
// IMPONIBILE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -280,7 +317,7 @@ echo '
|
||||
if (abs($sconto) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Sconto', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -292,7 +329,7 @@ if (abs($sconto) > 0) {
|
||||
// IMPONIBILE SCONTATO
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Imponibile scontato', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -306,7 +343,7 @@ if (abs($sconto) > 0) {
|
||||
if (abs($record['rivalsainps']) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Rivalsa INPS', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -320,7 +357,7 @@ if (abs($record['rivalsainps']) > 0) {
|
||||
if (abs($totale_iva) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Iva', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -333,7 +370,7 @@ if (abs($totale_iva) > 0) {
|
||||
// TOTALE
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -346,7 +383,7 @@ echo '
|
||||
if (abs($record['bollo']) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Marca da bollo', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -360,7 +397,7 @@ if (abs($record['bollo']) > 0) {
|
||||
if (abs($record['ritenutaacconto']) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr("Ritenuta d'acconto", [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -376,7 +413,7 @@ if (abs($record['ritenutaacconto']) > 0) {
|
||||
if ($totale != $netto_a_pagare) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Netto a pagare', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -386,6 +423,23 @@ if ($totale != $netto_a_pagare) {
|
||||
</tr>';
|
||||
}
|
||||
|
||||
// GUADAGNO TOTALE
|
||||
if ($totale_guadagno < 0) {
|
||||
$guadagno_style = "background-color: #FFC6C6; border: 3px solid red";
|
||||
} else {
|
||||
$guadagno_style = "";
|
||||
}
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Guadagno totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right" style="' . $guadagno_style . '">
|
||||
'.Translator::numberToLocale($totale_guadagno).' €
|
||||
</td>
|
||||
<td></td>
|
||||
</tr>';
|
||||
|
||||
echo '
|
||||
</table>';
|
||||
|
||||
|
@ -236,6 +236,7 @@ switch (post('op')) {
|
||||
|
||||
$qta = post('qta');
|
||||
$prezzo = post('prezzo');
|
||||
$prezzo_acquisto = post("prezzo_acquisto");
|
||||
|
||||
// Calcolo dello sconto
|
||||
$sconto_unitario = post('sconto');
|
||||
@ -256,7 +257,7 @@ switch (post('op')) {
|
||||
$iva = ($subtot - $sconto) / 100 * $rs2[0]['percentuale'];
|
||||
$iva_indetraibile = $iva / 100 * $rs2[0]['indetraibile'];
|
||||
|
||||
$dbo->query('INSERT INTO co_righe_preventivi(idpreventivo, idarticolo, idiva, desc_iva, iva, iva_indetraibile, descrizione, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, is_descrizione, `order`) VALUES ('.prepare($id_record).', '.prepare($idarticolo).', '.prepare($idiva).', '.prepare($rs2[0]['descrizione']).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare(empty($qta)).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe_preventivi AS t WHERE idpreventivo='.prepare($id_record).'))');
|
||||
$dbo->query('INSERT INTO co_righe_preventivi(idpreventivo, idarticolo, idiva, desc_iva, iva, iva_indetraibile, descrizione, prezzo_unitario_acquisto, subtotale, um, qta, sconto, sconto_unitario, tipo_sconto, is_descrizione, `order`) VALUES ('.prepare($id_record).', '.prepare($idarticolo).', '.prepare($idiva).', '.prepare($rs2[0]['descrizione']).', '.prepare($iva).', '.prepare($iva_indetraibile).', '.prepare($descrizione).', '.prepare($prezzo_acquisto).', '.prepare($subtot).', '.prepare($um).', '.prepare($qta).', '.prepare($sconto).', '.prepare($sconto_unitario).', '.prepare($tipo_sconto).', '.prepare(empty($qta)).', (SELECT IFNULL(MAX(`order`) + 1, 0) FROM co_righe_preventivi AS t WHERE idpreventivo='.prepare($id_record).'))');
|
||||
|
||||
// Messaggi informativi
|
||||
if (!empty($idarticolo)) {
|
||||
@ -279,6 +280,7 @@ switch (post('op')) {
|
||||
|
||||
$qta = post('qta');
|
||||
$prezzo = post('prezzo');
|
||||
$prezzo_acquisto = post("prezzo_acquisto");
|
||||
$subtot = $prezzo * $qta;
|
||||
|
||||
// Calcolo dello sconto
|
||||
@ -302,7 +304,7 @@ switch (post('op')) {
|
||||
|
||||
if ($is_descrizione == 0) {
|
||||
// Modifica riga generica sul documento
|
||||
$query = 'UPDATE co_righe_preventivi SET idarticolo='.prepare($idarticolo).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga);
|
||||
$query = 'UPDATE co_righe_preventivi SET idarticolo='.prepare($idarticolo).', idiva='.prepare($idiva).', desc_iva='.prepare($desc_iva).', iva='.prepare($iva).', iva_indetraibile='.prepare($iva_indetraibile).', descrizione='.prepare($descrizione).', prezzo_unitario_acquisto='.prepare($prezzo_acquisto).',subtotale='.prepare($subtot).', sconto='.prepare($sconto).', sconto_unitario='.prepare($sconto_unitario).', tipo_sconto='.prepare($tipo_sconto).', um='.prepare($um).', qta='.prepare($qta).' WHERE id='.prepare($idriga);
|
||||
} else {
|
||||
$query = 'UPDATE co_righe_preventivi SET descrizione='.prepare($descrizione).' WHERE id='.prepare($idriga);
|
||||
}
|
||||
|
@ -15,9 +15,11 @@ echo '
|
||||
<th>'.tr('Descrizione').'</th>
|
||||
<th width="120">'.tr('Q.tà').'</th>
|
||||
<th width="80">'.tr('U.m.').'</th>
|
||||
<th width="120">'.tr('Costo unitario').'</th>
|
||||
<th width="150">'.tr('Prezzo acq. unitario').'</th>
|
||||
<th width="160">'.tr('Prezzo vend. unitario').'</th>
|
||||
<th width="120">'.tr('Iva').'</th>
|
||||
<th width="120">'.tr('Imponibile').'</th>
|
||||
<th width="120">'.tr('Guadagno').'</th>
|
||||
<th width="60"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@ -58,7 +60,16 @@ foreach ($rs as $r) {
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// costo unitario
|
||||
// Prezzo di acquisto unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($r['prezzo_unitario_acquisto']).' €';
|
||||
}
|
||||
|
||||
// prezzo di vendita unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
@ -95,8 +106,22 @@ foreach ($rs as $r) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($r['subtotale'] - $r['sconto']).' €';
|
||||
}
|
||||
echo'
|
||||
</td>';
|
||||
|
||||
// Guadagno
|
||||
$guadagno = $r['subtotale'] - ($r['prezzo_unitario_acquisto'] * $r["qta"]) - ($r["sconto_unitario"] * $r["qta"]);
|
||||
if ($guadagno < 0) {
|
||||
$guadagno_style = "background-color: #FFC6C6; border: 3px solid red";
|
||||
} else {
|
||||
$guadagno_style = "";
|
||||
}
|
||||
echo '
|
||||
<td class="text-right" style="' . $guadagno_style . '">';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo '
|
||||
'.Translator::numberToLocale($guadagno).' €';
|
||||
}
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Possibilità di rimuovere una riga solo se il preventivo non è stato pagato
|
||||
echo '
|
||||
@ -130,6 +155,10 @@ foreach ($rs as $r) {
|
||||
}
|
||||
|
||||
// Calcoli
|
||||
$totale_acquisto = 0;
|
||||
foreach ($rs as $r) {
|
||||
$totale_acquisto += ($r["prezzo_unitario_acquisto"] * $r["qta"]);
|
||||
}
|
||||
$imponibile = sum(array_column($rs, 'subtotale'));
|
||||
$sconto = sum(array_column($rs, 'sconto'));
|
||||
$iva = sum(array_column($rs, 'iva'));
|
||||
@ -140,6 +169,11 @@ $totale = sum([
|
||||
$imponibile_scontato,
|
||||
$iva,
|
||||
]);
|
||||
$totale_guadagno = sum([
|
||||
$imponibile_scontato
|
||||
-$totale_acquisto
|
||||
]);
|
||||
|
||||
|
||||
echo '
|
||||
</tbody>';
|
||||
@ -148,7 +182,7 @@ echo '
|
||||
if (abs($sconto) > 0) {
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -159,7 +193,7 @@ if (abs($sconto) > 0) {
|
||||
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Sconto', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -171,7 +205,7 @@ if (abs($sconto) > 0) {
|
||||
// Totale imponibile
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Imponibile scontato', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -183,7 +217,7 @@ if (abs($sconto) > 0) {
|
||||
// Totale imponibile
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -196,7 +230,7 @@ if (abs($sconto) > 0) {
|
||||
// Totale iva
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('IVA', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -208,7 +242,7 @@ echo '
|
||||
// Totale preventivo
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="5" class="text-right">
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right">
|
||||
@ -217,6 +251,23 @@ echo '
|
||||
<td></td>
|
||||
</tr>';
|
||||
|
||||
// GUADAGNO TOTALE
|
||||
if ($totale_guadagno < 0) {
|
||||
$guadagno_style = "background-color: #FFC6C6; border: 3px solid red";
|
||||
} else {
|
||||
$guadagno_style = "";
|
||||
}
|
||||
echo '
|
||||
<tr>
|
||||
<td colspan="7" class="text-right">
|
||||
<b>'.tr('Guadagno totale', [], ['upper' => true]).':</b>
|
||||
</td>
|
||||
<td align="right" style="' . $guadagno_style . '">
|
||||
'.Translator::numberToLocale($totale_guadagno).' €
|
||||
</td>
|
||||
<td></td>
|
||||
</tr>';
|
||||
|
||||
echo '
|
||||
</table>';
|
||||
|
||||
|
@ -23,6 +23,11 @@ UPDATE `zz_views` SET `query` = '(SELECT `descrizione` FROM `fe_stati_documento`
|
||||
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`) VALUES
|
||||
(NULL, 'OSMCloud Services API Token', '', 'string', 1, 'Fatturazione Elettronica', 11);
|
||||
|
||||
-- Prezzo di acquisto nelle fatture di vendita e nei preventivi
|
||||
|
||||
ALTER TABLE `co_righe_documenti` ADD `prezzo_unitario_acquisto` DECIMAL(12,4) NOT NULL AFTER `descrizione`;
|
||||
ALTER TABLE `co_righe_preventivi` ADD `prezzo_unitario_acquisto` DECIMAL(12,4) NOT NULL AFTER `descrizione`;
|
||||
|
||||
-- Allineo valore Iva predefinita secondo nuovi codici tabella co_iva
|
||||
UPDATE `zz_settings` SET `valore` = (SELECT id FROM `co_iva` WHERE `codice` = 22 LIMIT 0,1) WHERE `nome` = 'Iva predefinita' AND `valore` = 91;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user