From d2bf162b17582c58b1bdf91ae7da2e1602b31b8d Mon Sep 17 00:00:00 2001 From: Dasc3er Date: Mon, 1 Mar 2021 09:41:49 +0100 Subject: [PATCH] Correzione widget Fatturato e Acquisti per le Note --- modules/articoli/src/Import/CSV.php | 2 +- modules/import/edit.php | 8 ++++---- update/2_4_22.sql | 29 ++++++++++++++++++++++++++--- 3 files changed, 31 insertions(+), 8 deletions(-) diff --git a/modules/articoli/src/Import/CSV.php b/modules/articoli/src/Import/CSV.php index bc47d4c0a..a07591193 100644 --- a/modules/articoli/src/Import/CSV.php +++ b/modules/articoli/src/Import/CSV.php @@ -186,7 +186,7 @@ class CSV extends CSVImporter if (!isset($first_record['anagrafica_listino']) || empty($this->getPrimaryKey())) { return; } - + foreach ($rows as $row) { // Interpretazione secondo la selezione $record = $this->getRecord($row); diff --git a/modules/import/edit.php b/modules/import/edit.php index 432690b97..e8fe06afb 100755 --- a/modules/import/edit.php +++ b/modules/import/edit.php @@ -40,12 +40,12 @@ if (empty($id_record)) { $campi_disponibili = []; foreach ($fields as $key => $value) { $campi_disponibili[] = [ - 'id' => $key+1, + 'id' => $key + 1, 'text' => $value['label'], ]; if ($value['primary_key']) { - $primary_key = $key+1; + $primary_key = $key + 1; } } @@ -101,8 +101,8 @@ if (empty($id_record)) { $nome = trim(string_lowercase($prima_riga[$column])); if (in_array($nome, $nomi_disponibili[$key])) { $escludi_prima_riga = 1; - $selezionato = $key+1; - break; + $selezionato = $key + 1; + break; } } diff --git a/update/2_4_22.sql b/update/2_4_22.sql index ccff28a14..4dee79548 100644 --- a/update/2_4_22.sql +++ b/update/2_4_22.sql @@ -200,9 +200,6 @@ INSERT INTO `zz_api_resources` (`id`, `version`, `type`, `resource`, `class`, `e INSERT INTO `zz_views` (`id`, `id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `search_inside`, `order_by`, `visible`, `summable`, `default`) VALUES (NULL, (SELECT id FROM zz_modules WHERE name='Impianti'), 'Categoria', '(SELECT nome FROM my_impianti_categorie WHERE my_impianti_categorie.id=id_categoria)', 6, 1, 0, 0, '', '', 1, 0, 1); --- Fix quantità positiva per Note di credito -UPDATE `co_righe_documenti` SET `qta` = ABS(`qta`), `qta_evasa` = ABS(`qta_evasa`); - -- -- Struttura della tabella `zz_imports` -- @@ -263,3 +260,29 @@ INSERT INTO `zz_views` (`id`, `id_module`, `name`, `query`, `order`, `search`, ` -- Nota: lo sconto finale è limitato alla Fattura, e non può derivare da ulteriori documenti ALTER TABLE `co_documenti` ADD `sconto_finale` DECIMAL(17,8) NOT NULL, ADD `sconto_finale_percentuale` DECIMAL(17,8) NOT NULL; + +-- Fix quantità positiva per Note di credito +UPDATE `co_righe_documenti` SET `qta` = ABS(`qta`), `qta_evasa` = ABS(`qta_evasa`), `subtotale` = ABS(`subtotale`); + +-- Correzione widget con utilizzo interno delle quantità negative per Note +UPDATE `zz_widgets` SET `query` = 'SELECT + CONCAT_WS('' '', REPLACE(REPLACE(REPLACE(FORMAT(( + SELECT SUM( + (subtotale - sconto) * IF(co_tipidocumento.reversed, -1, 1) + ) + ), 2), '','', ''#''), ''.'', '',''), ''#'', ''.''), ''€'') AS dato +FROM co_righe_documenti + INNER JOIN co_documenti ON co_righe_documenti.iddocumento = co_documenti.id + INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento = co_tipidocumento.id +WHERE co_tipidocumento.dir=''entrata'' |segment| AND data >= ''|period_start|'' AND data <= ''|period_end|'' AND 1=1' WHERE `zz_widgets`.`name`='Fatturato'; + +UPDATE `zz_widgets` SET `query` = 'SELECT + CONCAT_WS('' '', REPLACE(REPLACE(REPLACE(FORMAT(( + SELECT SUM( + (subtotale - sconto) * IF(co_tipidocumento.reversed, -1, 1) + ) + ), 2), '','', ''#''), ''.'', '',''), ''#'', ''.''), ''€'') AS dato +FROM co_righe_documenti + INNER JOIN co_documenti ON co_righe_documenti.iddocumento = co_documenti.id + INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento = co_tipidocumento.id +WHERE co_tipidocumento.dir=''uscita'' |segment| AND data >= ''|period_start|'' AND data <= ''|period_end|'' AND 1=1' WHERE `zz_widgets`.`name`='Acquisti';