diff --git a/modules/stampe_contabili/edit.php b/modules/stampe_contabili/edit.php
index dead4d6e1..f55bc3ef3 100755
--- a/modules/stampe_contabili/edit.php
+++ b/modules/stampe_contabili/edit.php
@@ -12,16 +12,22 @@ echo '
-
'.tr('Registri iva dal _START_ al _END_', [
+ '.tr('Registri iva dal _START_ al _END_', [
'_START_' => Translator::dateToLocale($_SESSION['period_start']),
'_END_' => Translator::dateToLocale($_SESSION['period_end']),
]).'
-
- '.Prints::getLink('Registro IVA', $id_record, 'btn-primary', '
'.tr('Stampa registro').'
'.tr('IVA vendite'), '|default| fa-2x', 'dir=entrata').'
+
';
- '.Prints::getLink('Registro IVA', $id_record, 'btn-primary', ' '.tr('Stampa registro').' '.tr('IVA acquisti'), '|default| fa-2x', 'dir=uscita').'
+echo '
+ '.tr('Stampa registro').' '.tr('IVA vendite').' ';
+
+
+echo '
+ '.tr('Stampa registro').' '.tr('IVA acquisti').' ';
+
+echo '
@@ -29,14 +35,14 @@ echo '
-
'.tr('Comunicazione dati fatture (ex-spesometro) dal _START_ al _END_', [
+ '.tr('Comunicazione dati fatture (ex-spesometro) dal _START_ al _END_', [
'_START_' => Translator::dateToLocale($_SESSION['period_start']),
'_END_' => Translator::dateToLocale($_SESSION['period_end']),
]).'
- '.Prints::getLink('Spesometro', $id_record, 'btn-primary', ' '.tr('Stampa').' '.tr('dati fatture'), '|default| fa-2x', 'dir=uscita').'
+ '.Prints::getLink('Spesometro', $id_record, 'btn-primary col-md-5', ' '.tr('Stampa dati fatture').' '.tr(' vendite e acquisti'), '|default| fa-2x', 'dir=uscita').'
@@ -44,16 +50,16 @@ echo '
-
'.tr('Fatturato dal _START_ al _END_', [
+ '.tr('Fatturato dal _START_ al _END_', [
'_START_' => Translator::dateToLocale($_SESSION['period_start']),
'_END_' => Translator::dateToLocale($_SESSION['period_end']),
]).'
- '.Prints::getLink('Fatturato', $id_record, 'btn-primary', ' '.tr('Stampa fatturato').' '.tr('in entrata'), '|default| fa-2x', 'dir=entrata').'
+ '.Prints::getLink('Fatturato', $id_record, 'btn-primary col-md-5', ' '.tr('Stampa fatturato').' '.tr('in entrata'), '|default| fa-2x', 'dir=entrata').'
- '.Prints::getLink('Fatturato', $id_record, 'btn-primary', ' '.tr('Stampa fatturato').' '.tr('in uscita'), '|default| fa-2x', 'dir=uscita').'
+ '.Prints::getLink('Fatturato', $id_record, 'btn-primary col-md-5 col-md-push-2', ' '.tr('Stampa fatturato').' '.tr('in uscita'), '|default| fa-2x', 'dir=uscita').'
diff --git a/modules/stampe_contabili/stampa_registro_iva.php b/modules/stampe_contabili/stampa_registro_iva.php
new file mode 100644
index 000000000..3580751e5
--- /dev/null
+++ b/modules/stampe_contabili/stampa_registro_iva.php
@@ -0,0 +1,64 @@
+
+
+
+
+ {[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_sezionale", "required": "1", "values": "query=SELECT id AS id, name AS descrizione FROM zz_segments WHERE id_module = (SELECT id FROM zz_modules WHERE name = \''.(($dir == 'entrata') ? 'Fatture di vendita' : 'Fatture di acquisto').'\') AND is_fiscale = 1 UNION SELECT 0 AS id, \'Tutti i sezionali\' AS descrizione", "value": "'.$_SESSION['stampe_contabili']['id_sezionale'].'" ]}
+
+
+
+ {[ "type": "select", "label": "'.tr('Formato').'", "name": "format", "required": "1", "values": "list=\"A4\": \"'.tr('A4').'\", \"A3\": \"'.tr('A3').'\"", "value": "'.$_SESSION['stampe_contabili']['format'].'" ]}
+
+
+
+ {[ "type": "select", "label": "'.tr('Orientamento').'", "name": "orientation", "required": "1", "values": "list=\"L\": \"'.tr('Orizzontale').'\", \"P\": \"'.tr('Verticale').'\"", "value": "'.$_SESSION['stampe_contabili']['orientation'].'" ]}
+
+
+
+
+
+
+ '.tr('Stampa').'
+
+
+
+
+
+
+';
+
+echo '
+';
diff --git a/templates/registro_iva/init.php b/templates/registro_iva/init.php
index 48a654415..2791e92c8 100755
--- a/templates/registro_iva/init.php
+++ b/templates/registro_iva/init.php
@@ -4,6 +4,9 @@ include_once __DIR__.'/../../core.php';
$dir = $_GET['dir'];
+$stampe_contabili = $_SESSION['stampe_contabili'];
+$id_sezionale = $stampe_contabili['id_sezionale'];
+
$date_start = $_SESSION['period_start'];
$date_end = $_SESSION['period_end'];
@@ -24,9 +27,9 @@ FROM co_documenti
INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id
INNER JOIN co_iva ON co_righe_documenti.idiva=co_iva.id
INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = co_documenti.idanagrafica
-WHERE dir = '.prepare($dir).' AND idstatodocumento NOT IN (SELECT id FROM co_statidocumento WHERE descrizione="Bozza" OR descrizione="Annullata") AND is_descrizione = 0 AND co_documenti.data >= '.prepare($date_start).' AND co_documenti.data <= '.prepare($date_end).'
+WHERE dir = '.prepare($dir).' AND idstatodocumento NOT IN (SELECT id FROM co_statidocumento WHERE descrizione="Bozza" OR descrizione="Annullata") AND is_descrizione = 0 AND co_documenti.data >= '.prepare($date_start).' AND co_documenti.data <= '.prepare($date_end).' AND '.((!empty($id_sezionale)) ? 'co_documenti.id_segment = '.prepare($id_sezionale).'' : '1=1').'
GROUP BY co_documenti.id, co_righe_documenti.idiva
-ORDER BY co_documenti.id, co_documenti.'.(($dir == 'entrata') ? 'data' : 'numero');
+ORDER BY co_documenti.'.(($dir == 'entrata') ? 'data' : 'numero').', co_documenti.'.(($dir == 'entrata') ? 'numero_esterno' : 'data_competenza');
$records = $dbo->fetchArray($query);
// Sostituzioni specifiche
diff --git a/templates/registro_iva/piece.php b/templates/registro_iva/piece.php
index ba6d300c0..6f095c31f 100755
--- a/templates/registro_iva/piece.php
+++ b/templates/registro_iva/piece.php
@@ -28,6 +28,7 @@ if ($record['numero'] == $previous_number) {
'.(($dir == 'uscita') ? $record['numero'] : '-').'
'.$record['numero_esterno'].'
'.Translator::datetoLocale($record['data']).'
+
'.Translator::datetoLocale($record['data_competenza']).'
'.$record['codice_tipo_documento_fe'].'
'.$record['codice_anagrafica'].' / '.safe_truncate(mb_strtoupper(html_entity_decode($record['ragione_sociale']), 'UTF-8'), 50).'
'.moneyFormat($record['totale']).' ';
diff --git a/templates/registro_iva/settings.php b/templates/registro_iva/settings.php
index 793edc9bf..a41a33757 100755
--- a/templates/registro_iva/settings.php
+++ b/templates/registro_iva/settings.php
@@ -1,6 +1,10 @@
'L',
+ 'format' => $format,
+ 'orientation' => $orientation,
'font-size' => '11pt',
];
diff --git a/templates/registro_iva/top.php b/templates/registro_iva/top.php
index 5aa637279..a16d882da 100755
--- a/templates/registro_iva/top.php
+++ b/templates/registro_iva/top.php
@@ -32,7 +32,8 @@ echo '
'.$titolo.'
'.tr('Prot.').'
'.tr('No doc.').'
- '.tr('Data').'
+ '.tr('Data doc.').'
+ '.tr('Data comp.').'
'.tr('Tipo').'
'.$tipo.'
'.tr('Tot. doc.').'