diff --git a/templates/liquidazione_iva/body.php b/templates/liquidazione_iva/body.php index 8194a1767..425b6dc25 100644 --- a/templates/liquidazione_iva/body.php +++ b/templates/liquidazione_iva/body.php @@ -19,27 +19,27 @@ include_once __DIR__.'/../../core.php'; -$totale_iva_vendite = sum(array_column($iva_vendite, 'iva')); -$totale_subtotale_vendite = sum(array_column($iva_vendite, 'subtotale')); -$totale_iva_acquisti = sum(array_column($iva_acquisti, 'iva')); -$totale_subtotale_acquisti = sum(array_column($iva_acquisti, 'subtotale')); +$totale_iva_vendite = sum(array_column($iva_vendite, 'iva'), null, 2); +$totale_subtotale_vendite = sum(array_column($iva_vendite, 'subtotale'), null, 2); +$totale_iva_acquisti = sum(array_column($iva_acquisti, 'iva'), null, 2); +$totale_subtotale_acquisti = sum(array_column($iva_acquisti, 'subtotale'), null, 2); -$totale_iva_esigibile = sum(array_column($iva_vendite_esigibile, 'iva')); -$totale_iva_nonesigibile = sum(array_column($iva_vendite_nonesigibile, 'iva')); -$subtotale_iva_esigibile = sum(array_column($iva_vendite_esigibile, 'subtotale')); -$subtotale_iva_nonesigibile = sum(array_column($iva_vendite_nonesigibile, 'subtotale')); +$totale_iva_esigibile = sum(array_column($iva_vendite_esigibile, 'iva'), null, 2); +$totale_iva_nonesigibile = sum(array_column($iva_vendite_nonesigibile, 'iva'), null, 2); +$subtotale_iva_esigibile = sum(array_column($iva_vendite_esigibile, 'subtotale'), null, 2); +$subtotale_iva_nonesigibile = sum(array_column($iva_vendite_nonesigibile, 'subtotale'), null, 2); -$totale_iva_detraibile = sum(array_column($iva_acquisti_detraibile, 'iva')); -$totale_iva_nondetraibile = sum(array_column($iva_acquisti_nondetraibile, 'iva')); -$subtotale_iva_detraibile = sum(array_column($iva_acquisti_detraibile, 'subtotale')); -$subtotale_iva_nondetraibile = sum(array_column($iva_acquisti_nondetraibile, 'subtotale')); +$totale_iva_detraibile = sum(array_column($iva_acquisti_detraibile, 'iva'), null, 2); +$totale_iva_nondetraibile = sum(array_column($iva_acquisti_nondetraibile, 'iva'), null, 2); +$subtotale_iva_detraibile = sum(array_column($iva_acquisti_detraibile, 'subtotale'), null, 2); +$subtotale_iva_nondetraibile = sum(array_column($iva_acquisti_nondetraibile, 'subtotale'), null, 2); -$totale_iva_vendite_anno_precedente = sum(array_column($iva_vendite_anno_precedente, 'iva')); -$totale_iva_acquisti_anno_precedente = sum(array_column($iva_acquisti_anno_precedente, 'iva')); +$totale_iva_vendite_anno_precedente = sum(array_column($iva_vendite_anno_precedente, 'iva'), null, 2); +$totale_iva_acquisti_anno_precedente = sum(array_column($iva_acquisti_anno_precedente, 'iva'), null, 2); $totale_iva_anno_precedente = $totale_iva_vendite_anno_precedente - $totale_iva_acquisti_anno_precedente; -$totale_iva_vendite_periodo_precedente = sum(array_column($iva_vendite_periodo_precedente, 'iva')); -$totale_iva_acquisti_periodo_precedente = sum(array_column($iva_acquisti_periodo_precedente, 'iva')); +$totale_iva_vendite_periodo_precedente = sum(array_column($iva_vendite_periodo_precedente, 'iva'), null, 2); +$totale_iva_acquisti_periodo_precedente = sum(array_column($iva_acquisti_periodo_precedente, 'iva'), null, 2); $totale_iva_periodo_precedente = $totale_iva_vendite_periodo_precedente - $totale_iva_acquisti_periodo_precedente; $totale_iva = $totale_iva_esigibile - $totale_iva_detraibile; @@ -69,10 +69,20 @@ echo ' IVA ESIGIBILE DEL PERIODO '; +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_vendite_esigibile as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -91,10 +101,20 @@ echo ' IVA NON ESIGIBILE DEL PERIODO '; +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_vendite_nonesigibile as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -112,10 +132,21 @@ echo ' RIEPILOGO GENERALE IVA VENDITE '; + +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_vendite as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -149,10 +180,20 @@ echo ' IVA DETRAIBILE DEL PERIODO '; +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_acquisti_detraibile as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -172,10 +213,20 @@ echo ' IVA NON DETRAIBILE DEL PERIODO '; +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_acquisti_nondetraibile as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -194,10 +245,21 @@ echo ' RIEPILOGO GENERALE IVA ACQUISTI '; + +// Somma importi arrotondati per fattura +$aliquote=[]; + foreach ($iva_acquisti as $record) { + $aliquote[$record['aliquota']]['cod_iva'] = $record['cod_iva']; + $aliquote[$record['aliquota']]['descrizione'] = $record['descrizione']; + $aliquote[$record['aliquota']]['subtotale'] += sum($record['subtotale'], null, 2); + $aliquote[$record['aliquota']]['iva'] += sum($record['iva'], null, 2); +} + +foreach ($aliquote as $aliquota=>$record) { echo ' - '.round($record['aliquota']).'% + '.round($aliquota).'% '.$record['cod_iva'].' '.$record['descrizione'].' '.moneyFormat($record['subtotale'], 2).' @@ -220,7 +282,7 @@ echo ' - + diff --git a/templates/liquidazione_iva/init.php b/templates/liquidazione_iva/init.php index 425d4b4c1..73035b4eb 100644 --- a/templates/liquidazione_iva/init.php +++ b/templates/liquidazione_iva/init.php @@ -43,6 +43,7 @@ if (!empty($vendita_banco)){ $iva_vendite_esigibile = $dbo->fetchArray(' SELECT + id, cod_iva, aliquota, descrizione, @@ -51,6 +52,7 @@ $iva_vendite_esigibile = $dbo->fetchArray(' FROM ( SELECT + co_documenti.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -64,9 +66,10 @@ $iva_vendite_esigibile = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND co_documenti.split_payment = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, co_documenti.id UNION SELECT + vb_venditabanco.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -82,16 +85,18 @@ $iva_vendite_esigibile = $dbo->fetchArray(' WHERE vb_venditabanco.data >= '.prepare($date_start).' AND vb_venditabanco.data <= '.prepare($date_end).' AND vb_righe_venditabanco.is_descrizione = 0 AND vb_stati_vendita.descrizione = "Pagato" GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, vb_venditabanco.id ) AS tabella GROUP BY cod_iva, aliquota, - descrizione;'); + descrizione, + id'); $iva_vendite = $dbo->fetchArray(' SELECT + id, cod_iva, aliquota, descrizione, @@ -100,6 +105,7 @@ $iva_vendite = $dbo->fetchArray(' FROM ( SELECT + co_documenti.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -113,9 +119,10 @@ $iva_vendite = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, co_documenti.id UNION SELECT + vb_venditabanco.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -131,15 +138,17 @@ $iva_vendite = $dbo->fetchArray(' WHERE vb_venditabanco.data >= '.prepare($date_start).' AND vb_venditabanco.data <= '.prepare($date_end).' AND vb_righe_venditabanco.is_descrizione = 0 AND vb_stati_vendita.descrizione = "Pagato" GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, vb_venditabanco.id ) AS tabella GROUP BY cod_iva, aliquota, - descrizione;'); + descrizione, + id'); $iva_vendite_anno_precedente = $dbo->fetchArray(' SELECT + id, cod_iva, aliquota, descrizione, @@ -148,6 +157,7 @@ $iva_vendite_anno_precedente = $dbo->fetchArray(' FROM ( SELECT + co_documenti.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -161,9 +171,10 @@ $iva_vendite_anno_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($anno_precedente_start).' AND co_documenti.data_competenza <= '.prepare($anno_precedente_end).' GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, co_documenti.id UNION SELECT + vb_venditabanco.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -179,15 +190,17 @@ $iva_vendite_anno_precedente = $dbo->fetchArray(' WHERE vb_venditabanco.data >= '.prepare($anno_precedente_start).' AND vb_venditabanco.data <= '.prepare($anno_precedente_end).' AND vb_righe_venditabanco.is_descrizione = 0 AND vb_stati_vendita.descrizione = "Pagato" GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, vb_venditabanco.id ) AS tabella GROUP BY cod_iva, aliquota, - descrizione;'); + descrizione, + id'); $iva_vendite_periodo_precedente = $dbo->fetchArray(' SELECT + id, cod_iva, aliquota, descrizione, @@ -196,6 +209,7 @@ $iva_vendite_periodo_precedente = $dbo->fetchArray(' FROM ( SELECT + co_documenti.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -209,9 +223,10 @@ $iva_vendite_periodo_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($periodo_precedente_start).' AND co_documenti.data_competenza <= '.prepare($periodo_precedente_end).' GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, co_documenti.id UNION SELECT + vb_venditabanco.id AS id, co_iva.codice_natura_fe AS cod_iva, co_iva.percentuale AS aliquota, co_iva.descrizione AS descrizione, @@ -227,12 +242,13 @@ $iva_vendite_periodo_precedente = $dbo->fetchArray(' WHERE vb_venditabanco.data >= '.prepare($periodo_precedente_start).' AND vb_venditabanco.data <= '.prepare($periodo_precedente_end).' AND vb_righe_venditabanco.is_descrizione = 0 AND vb_stati_vendita.descrizione = "Pagato" GROUP BY - cod_iva, aliquota, descrizione + cod_iva, aliquota, descrizione, vb_venditabanco.id ) AS tabella GROUP BY cod_iva, aliquota, - descrizione;'); + descrizione, + id'); } @@ -253,7 +269,7 @@ $iva_vendite_esigibile = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND co_documenti.split_payment = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_vendite = $dbo->fetchArray(' SELECT @@ -270,7 +286,7 @@ $iva_vendite = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_vendite_anno_precedente = $dbo->fetchArray(' SELECT @@ -287,7 +303,7 @@ $iva_vendite_anno_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($anno_precedente_start).' AND co_documenti.data_competenza <= '.prepare($anno_precedente_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_vendite_periodo_precedente = $dbo->fetchArray(' SELECT @@ -304,7 +320,7 @@ $iva_vendite_periodo_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($periodo_precedente_start).' AND co_documenti.data_competenza <= '.prepare($periodo_precedente_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); } $iva_vendite_nonesigibile = $dbo->fetchArray(' @@ -322,7 +338,7 @@ $iva_vendite_nonesigibile = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "entrata" AND co_righe_documenti.is_descrizione = 0 AND co_documenti.split_payment = 1 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_acquisti_detraibile = $dbo->fetchArray(' SELECT @@ -339,7 +355,7 @@ $iva_acquisti_detraibile = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "uscita" AND co_righe_documenti.is_descrizione = 0 AND co_documenti.split_payment = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' AND co_iva.indetraibile != 100 GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_acquisti_nondetraibile = $dbo->fetchArray(' SELECT @@ -356,7 +372,7 @@ $iva_acquisti_nondetraibile = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "uscita" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= ' . prepare($date_start) . ' AND co_documenti.data_competenza <= ' . prepare($date_end) . ' AND co_iva.indetraibile != 0 GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_acquisti = $dbo->fetchArray(' SELECT @@ -373,7 +389,7 @@ $iva_acquisti = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "uscita" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($date_start).' AND co_documenti.data_competenza <= '.prepare($date_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_acquisti_anno_precedente = $dbo->fetchArray(' SELECT @@ -390,7 +406,7 @@ $iva_acquisti_anno_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "uscita" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($anno_precedente_start).' AND co_documenti.data_competenza <= '.prepare($anno_precedente_end).' GROUP BY - co_iva.id;'); + co_iva.id, co_documenti.id'); $iva_acquisti_periodo_precedente = $dbo->fetchArray(' SELECT @@ -407,4 +423,4 @@ $iva_acquisti_periodo_precedente = $dbo->fetchArray(' WHERE co_tipidocumento.dir = "uscita" AND co_righe_documenti.is_descrizione = 0 AND idstatodocumento NOT IN(SELECT id FROM co_statidocumento WHERE descrizione = "Bozza" OR descrizione = "Annullata") AND co_documenti.data_competenza >= '.prepare($periodo_precedente_start).' AND co_documenti.data_competenza <= '.prepare($periodo_precedente_end).' GROUP BY - co_iva.id;'); \ No newline at end of file + co_iva.id, co_documenti.id'); \ No newline at end of file diff --git a/templates/registro_iva/bottom.php b/templates/registro_iva/bottom.php index a53851d0c..de9f050c1 100755 --- a/templates/registro_iva/bottom.php +++ b/templates/registro_iva/bottom.php @@ -19,8 +19,8 @@ include_once __DIR__.'/../../core.php'; -$totale_iva = sum(array_column($records, 'iva')); -$totale_subtotale = sum(array_column($records, 'subtotale')); +$totale_iva = sum(array_column($records, 'iva'), null, 2); +$totale_subtotale = sum(array_column($records, 'subtotale'), null, 2); echo ' @@ -42,8 +42,8 @@ echo ' foreach ($iva as $descrizione => $tot_iva) { if (!empty($descrizione)) { - $somma_iva = sum($iva[$descrizione]); - $somma_totale = sum($totale[$descrizione]); + $somma_iva = sum($iva[$descrizione], null, 2); + $somma_totale = sum($totale[$descrizione], null, 2); echo ' diff --git a/templates/registro_iva/init.php b/templates/registro_iva/init.php index 840a83038..5dd27e646 100755 --- a/templates/registro_iva/init.php +++ b/templates/registro_iva/init.php @@ -33,7 +33,7 @@ $vendita_banco = $dbo->fetchNum("SELECT * FROM zz_modules WHERE name='Vendita al $v_iva = []; $v_totale = []; -if ((!empty($vendita_banco)) && ($id_sezionale == -1) && ($tipo == 'vendite')){ +if ((!empty($vendita_banco)) && ($tipo == 'vendite')){ $query = ' SELECT data_registrazione,
PROSPETTO RIEPILOGATIVO DI LIQUIDAZIONE I.V.A.PROSPETTO RIEPILOGATIVO DI LIQUIDAZIONE IVA
DESCRIZIONE IMPORTO