From 8f8b4b3b18cf18db94bd6e6e5d58a3131f7e765b Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 21 Mar 2018 16:57:31 +0100 Subject: [PATCH] =?UTF-8?q?Rivista=20struttura=20'sezionali'=20e=20convert?= =?UTF-8?q?ita=20in=20'segmenti'=20per=20una=20maggiore=20flessibilit?= =?UTF-8?q?=C3=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core.php | 6 +-- modules/fatture/actions.php | 8 ++-- modules/fatture/add.php | 2 +- modules/fatture/controller_before.php | 22 +++++----- modules/fatture/modutil.php | 12 +++--- modules/segmenti/actions.php | 48 +++++++++++++++++++++ modules/segmenti/add.php | 41 ++++++++++++++++++ modules/{sezionali => segmenti}/edit.php | 29 ++++++++----- modules/segmenti/init.php | 5 +++ modules/{sezionali => segmenti}/modutil.php | 0 modules/sezionali/actions.php | 48 --------------------- modules/sezionali/add.php | 47 -------------------- modules/sezionali/init.php | 5 --- src/App.php | 6 +-- update/2_4.sql | 39 +++++++++-------- 15 files changed, 159 insertions(+), 159 deletions(-) create mode 100644 modules/segmenti/actions.php create mode 100644 modules/segmenti/add.php rename modules/{sezionali => segmenti}/edit.php (66%) create mode 100644 modules/segmenti/init.php rename modules/{sezionali => segmenti}/modutil.php (100%) delete mode 100644 modules/sezionali/actions.php delete mode 100644 modules/sezionali/add.php delete mode 100644 modules/sezionali/init.php diff --git a/core.php b/core.php index b62e134e2..736507645 100644 --- a/core.php +++ b/core.php @@ -176,9 +176,9 @@ if (!API::isAPIRequest()) { $_SESSION['period_end'] = date('Y').'-12-31'; } - // Impostazione automatica dei sezionali - (empty($_SESSION['entrata']['idsezionale'])) ? $_SESSION['entrata']['idsezionale'] = get_var('Sezionale predefinito fatture di vendita') : ''; - (empty($_SESSION['uscita']['idsezionale'])) ? $_SESSION['uscita']['idsezionale'] = get_var('Sezionale predefinito fatture di acquisto'): ''; + // Impostazione automatica dei segments + (empty($_SESSION[14]['id_segment'])) ? $_SESSION[14]['id_segment'] = get_var('Sezionale predefinito fatture di vendita') : ''; + (empty($_SESSION[15]['id_segment'])) ? $_SESSION[15]['id_segment'] = get_var('Sezionale predefinito fatture di acquisto'): ''; // Impostazione del tema grafico di default diff --git a/modules/fatture/actions.php b/modules/fatture/actions.php index 7d13d0522..30107cd37 100644 --- a/modules/fatture/actions.php +++ b/modules/fatture/actions.php @@ -24,7 +24,7 @@ switch (post('op')) { $idtipodocumento = post('idtipodocumento'); $numero = get_new_numerofattura($data); - $idsezionale = post('idsezionale'); + $id_segment = post('id_segment'); if ($dir == 'entrata') { $numero_esterno = get_new_numerosecondariofattura($data); $idconto = get_var('Conto predefinito fatture di vendita'); @@ -45,7 +45,7 @@ switch (post('op')) { $idpagamento = get_var('Tipo di pagamento predefinito'); } - $query = 'INSERT INTO co_documenti (numero, numero_esterno, idanagrafica, idconto, idtipodocumento, idpagamento, data, idstatodocumento, idsede, idsezionale) VALUES ('.prepare($numero).', '.prepare($numero_esterno).', '.prepare($idanagrafica).', '.prepare($idconto).', '.prepare($idtipodocumento).', '.prepare($idpagamento).', '.prepare($data).", (SELECT `id` FROM `co_statidocumento` WHERE `descrizione`='Bozza'), (SELECT idsede_fatturazione FROM an_anagrafiche WHERE idanagrafica=".prepare($idanagrafica).'), '.$idsezionale.' )'; + $query = 'INSERT INTO co_documenti (numero, numero_esterno, idanagrafica, idconto, idtipodocumento, idpagamento, data, idstatodocumento, idsede, id_segment) VALUES ('.prepare($numero).', '.prepare($numero_esterno).', '.prepare($idanagrafica).', '.prepare($idconto).', '.prepare($idtipodocumento).', '.prepare($idpagamento).', '.prepare($data).", (SELECT `id` FROM `co_statidocumento` WHERE `descrizione`='Bozza'), (SELECT idsede_fatturazione FROM an_anagrafiche WHERE idanagrafica=".prepare($idanagrafica).'), '.$id_segment.' )'; $dbo->query($query); $id_record = $dbo->lastInsertedID(); @@ -868,7 +868,7 @@ switch (post('op')) { $idddt = $post['idddt']; $numero = get_new_numerofattura($data); - $idsezionale = post('idsezionale'); + $id_segment = post('id_segment'); if ($dir == 'entrata') { $numero_esterno = get_new_numerosecondariofattura($data); @@ -885,7 +885,7 @@ switch (post('op')) { } // Creazione nuova fattura - $dbo->query('INSERT INTO co_documenti(numero, numero_esterno, data, idanagrafica, idtipodocumento, idstatodocumento, idpagamento, idconto, idsezionale) VALUES('.prepare($numero).', '.prepare($numero_esterno).', '.prepare($data).', '.prepare($idanagrafica).', (SELECT id FROM co_tipidocumento WHERE descrizione='.prepare($tipo_documento)."), (SELECT id FROM co_statidocumento WHERE descrizione='Bozza'), ".prepare($idpagamento).', '.prepare($idconto).', '.prepare($idsezionale).' )'); + $dbo->query('INSERT INTO co_documenti(numero, numero_esterno, data, idanagrafica, idtipodocumento, idstatodocumento, idpagamento, idconto, id_segment) VALUES('.prepare($numero).', '.prepare($numero_esterno).', '.prepare($data).', '.prepare($idanagrafica).', (SELECT id FROM co_tipidocumento WHERE descrizione='.prepare($tipo_documento)."), (SELECT id FROM co_statidocumento WHERE descrizione='Bozza'), ".prepare($idpagamento).', '.prepare($idconto).', '.prepare($id_segment).' )'); $id_record = $dbo->lastInsertedID(); // Lettura di tutte le righe della tabella in arrivo diff --git a/modules/fatture/add.php b/modules/fatture/add.php index 725103701..727c63b38 100644 --- a/modules/fatture/add.php +++ b/modules/fatture/add.php @@ -35,7 +35,7 @@ if ($module['name'] == 'Fatture di vendita') {
- {[ "type": "select", "label": "", "name": "idsezionale", "required": 1, "class": "", "values": "query=SELECT id, nome AS descrizione FROM co_sezionali WHERE dir='' ORDER BY nome", "value": "", "extra": "" ]} + {[ "type": "select", "label": "", "name": "id_segment", "required": 1, "class": "", "values": "query=SELECT id, name AS descrizione FROM zz_segments WHERE id_module='' ORDER BY name", "value": "", "extra": "" ]}
diff --git a/modules/fatture/controller_before.php b/modules/fatture/controller_before.php index 26754354f..d4a32b55b 100644 --- a/modules/fatture/controller_before.php +++ b/modules/fatture/controller_before.php @@ -4,19 +4,19 @@ /*deve sempre essere impostato almeno un sezionale - if (isset($_SESSION[$dir]['idsezionale'])){ - $idsezionale = $_SESSION[$dir]['idsezionale']; + if (isset($_SESSION[$id_module]['id_segment'])){ + $id_segment = $_SESSION[$id_module]['id_segment']; } else{ - if ($dir=='entrata') - (!empty($_SESSION[$dir]['idsezionale'])) ? $idsezionale = $_SESSION[$dir]['idsezionale'] :$idsezionale = get_var("Sezionale predefinito fatture di vendita"); + if ($id_module=='14') + (!empty($_SESSION[$id_module]['id_segment'])) ? $id_segment = $_SESSION[$id_module]['id_segment'] :$id_segment = get_var("Sezionale predefinito fatture di vendita"); - if ($dir=='uscita') - $idsezionale = get_var('Sezionale predefinito fatture di acquisto'); + if ($id_module=='15') + $id_segment = get_var('Sezionale predefinito fatture di acquisto'); - $_SESSION[$dir]['idsezionale'] = $idsezionale; + $_SESSION[$id_module]['id_segment'] = $id_segment; } */ @@ -26,7 +26,7 @@
- {[ "type": "select", "label": "Sezionale", "name": "idsezionale_", "required": 0, "class": "", "values": "query=SELECT id, nome AS descrizione FROM co_sezionali WHERE dir = ''", "value": "", "extra": "" ]} + {[ "type": "select", "label": "Sezionale", "name": "idsezionale_", "required": 0, "class": "", "values": "query=SELECT id, name AS descrizione FROM zz_segments WHERE id_module = ''", "value": "", "extra": "" ]}
@@ -35,13 +35,11 @@ $(document).ready(function () { $("#idsezionale_").on("change", function(){ - - //alert (''); if ($(this).val()<1){ - session_set(',idsezionale', '', 1, 1); + session_set(',id_segment', '', 1, 1); }else{ - session_set(',idsezionale', $(this).val(), 0, 1); + session_set(',id_segment', $(this).val(), 0, 1); } }); diff --git a/modules/fatture/modutil.php b/modules/fatture/modutil.php index 74042352a..c079074d7 100644 --- a/modules/fatture/modutil.php +++ b/modules/fatture/modutil.php @@ -24,12 +24,12 @@ function get_new_numerosecondariofattura($data) global $dbo; global $dir; global $idtipodocumento; - global $idsezionale; + global $id_segment; - // recupero maschera per questo sezionale - $rs_maschera = $dbo->fetchArray("SELECT maschera FROM co_sezionali WHERE id='".$idsezionale."'"); + // recupero maschera per questo segmento + $rs_maschera = $dbo->fetchArray("SELECT pattern FROM zz_segments WHERE id = '".$id_segment."'"); // esempio: ####/YY - $maschera = $rs_maschera[0]['maschera']; + $maschera = $rs_maschera[0]['pattern']; // estraggo blocchi di caratteri standard da sostituire preg_match('/[#]+/', $maschera, $m1 ); @@ -37,7 +37,7 @@ function get_new_numerosecondariofattura($data) $anno = substr( $data, 0, 4); - $query = "SELECT numero_esterno FROM co_documenti WHERE DATE_FORMAT(data,'%Y')='".$anno."' AND idsezionale='".$idsezionale."' "; + $query = "SELECT numero_esterno FROM co_documenti WHERE DATE_FORMAT(data,'%Y')='".$anno."' AND id_segment='".$id_segment."' "; // Marzo 2017 // nel caso ci fossero lettere prima della maschera ### per il numero (es. FT-0001-2017) // è necessario l'ordinamento alfabetico "ORDER BY numero_esterno" altrimenti @@ -54,7 +54,7 @@ function get_new_numerosecondariofattura($data) $numero_esterno = get_next_code( $rs_ultima_fattura[0]['numero_esterno'], 1, $maschera ); //$numero_esterno = Util\Generator::generate($maschera, $rs_ultima_fattura[0]['numero_esterno']); - /*echo $idsezionale."
"; + /*echo $id_segment."
"; echo $query."
"; echo $rs_ultima_fattura[0]['numero_esterno']."
"; echo $maschera."
"; diff --git a/modules/segmenti/actions.php b/modules/segmenti/actions.php new file mode 100644 index 000000000..110520e5b --- /dev/null +++ b/modules/segmenti/actions.php @@ -0,0 +1,48 @@ +query($query); + + $_SESSION['infos'][] = tr('Modifiche salvate correttamente.'); + + break; + + case 'add': + + $name = post('name'); + $category = post('category'); + (strpos(post('pattern'), '#') !== false) ? $pattern = post('pattern') : $pattern = '####'; + $id_module_ = post('id_module_'); + $note = post('note'); + + $dbo->query("INSERT INTO zz_segments( name, category, pattern, id_module, note ) VALUES ( \"$name\", \"$category\", \"$pattern\", \"$id_module_\", \"$note\" )"); + $id_record = $dbo->last_inserted_id(); + + $_SESSION['infos'][] = tr('Nuovo segmento aggiunto.'); + + break; + + case 'delete': + + $query = "DELETE FROM zz_segments WHERE id=\"$id_record\""; + $rs = $dbo->query($query); + + // TODO + // eliminare riferimento sulle fatture eventuali collegate a questo segmento? + + $_SESSION['infos'][] = tr('Segmento eliminato.'); + + break; + } diff --git a/modules/segmenti/add.php b/modules/segmenti/add.php new file mode 100644 index 000000000..1d87bd5ac --- /dev/null +++ b/modules/segmenti/add.php @@ -0,0 +1,41 @@ +
+ + + +
+ +
+ {[ "type": "text", "label": "", "name": "name", "required": 1, "class": "", "value": "$name$", "extra": "" ]} +
+ +
+ {[ "type": "text", "label": "", "name": "category", "required": 1, "class": "", "value": "$category$", "extra": "" ]} +
+ +
+ {[ "type": "text", "label": "", "name": "pattern", "required": 1, "class": "alphanumeric-mask", "value": "$pattern$", "maxlength": 25, "placeholder":"####/YY", "extra": "" ]} +
+ +
+ {[ "type": "select", "label": "", "name": "id_module_", "required": 1, "class": "", "values": "list=\"14\": \"Fatture di vendita\", \"15\": \"Fatture di acquisto\"", "value": "$id_module$", "extra": "" ]} +
+ +
+ +
+ +
+ {[ "type": "textarea", "label": "Note", "name": "note", "required": 0, "class": "", "value": "", "extra": "" ]} +
+ +
+ + + +
+
+ diff --git a/modules/sezionali/edit.php b/modules/segmenti/edit.php similarity index 66% rename from modules/sezionali/edit.php rename to modules/segmenti/edit.php index 79d0aef8f..7e8ce496c 100644 --- a/modules/sezionali/edit.php +++ b/modules/segmenti/edit.php @@ -6,23 +6,29 @@
-

+

+
- {[ "type": "text", "label": "", "name": "nome", "required": 1, "class": "", "value": "$nome$", "extra": "" ]} + {[ "type": "text", "label": "", "name": "name", "required": 1, "class": "", "value": "$name$", "extra": "" ]}
+
- {[ "type": "text", "label": "", "name": "maschera", "required": 1, "class": "alphanumeric-mask", "value": "$maschera$", "maxlength": 25, "placeholder":"####/YY", "extra": "" ]} + {[ "type": "text", "label": "", "name": "category", "required": 1, "class": "", "value": "$category$", "extra": "" ]}
+ +
- {[ "type": "select", "label": "", "name": "dir", "required": 1, "class": "", "values": "list=\"entrata\": \"Documenti di vendita\", \"uscita\": \"Documenti di acquisto\"", "value": "$dir$", "extra": "" ]} + {[ "type": "text", "label": "", "name": "pattern", "required": 1, "class": "alphanumeric-mask", "value": "$pattern$", "maxlength": 25, "placeholder":"####/YY", "extra": "" ]}
+
- {[ "type": "select", "label": "", "name": "idautomezzo", "required": 0, "class": "", "values": "query=SELECT id, nome AS descrizione FROM dt_automezzi", "value": "$idautomezzo$", "extra": "" ]} + {[ "type": "select", "label": "", "name": "id_module_", "required": 1, "class": "", "values": "list=\"14\": \"Fatture di vendita\", \"15\": \"Fatture di acquisto\"", "value": "$id_module$", "extra": "" ]}
+
@@ -63,14 +69,15 @@ fetchArray('SELECT COUNT(*) AS tot_fatture FROM co_documenti WHERE idsezionale='.prepare($id_record)); + $fatture = $dbo->fetchArray('SELECT COUNT(*) AS tot_fatture FROM co_documenti WHERE id_segment='.prepare($id_record)); $tot_fatture = $fatture[0]['tot_fatture']; if ($tot_fatture > 0) { echo "
"; - echo tr("Ci sono _TOT_ fatture collegate a questo sezionale. Il comando elimina è stato disattivato, eliminare le fatture per attivare il comando 'Elimina sezionale'.", [ - '_TOT_' => $tot_fatture, + echo tr("Ci sono _TOT_ fatture collegate a questo segmento del modulo '_MODULO_'. Il comando elimina è stato disattivato, eliminare le fatture per attivare il comando 'Elimina segmento'.", [ + '_TOT_' => $tot_fatture, + '_MODULO_' => $records[0]['modulo'], ]); echo "
"; @@ -81,8 +88,8 @@ echo "
"; - echo tr("Questo è l'unico sezionale per i documenti in '_DIR_'. Il comando elimina è stato disattivato.", [ - '_DIR_' => $records[0]['dir'], + echo tr("Questo è l'unico segmento per il modulo '_MODULO_'. Il comando elimina è stato disattivato.", [ + '_MODULO_' => $records[0]['modulo'], ]); echo "
"; @@ -93,7 +100,7 @@ - + fetchArray("SELECT *, (SELECT name FROM zz_modules WHERE id = zz_segments.id_module) AS modulo, (SELECT COUNT(t.id) FROM zz_segments t WHERE t.id_module = zz_segments.id_module) AS n_sezionali FROM zz_segments WHERE id='$id_record'"); \ No newline at end of file diff --git a/modules/sezionali/modutil.php b/modules/segmenti/modutil.php similarity index 100% rename from modules/sezionali/modutil.php rename to modules/segmenti/modutil.php diff --git a/modules/sezionali/actions.php b/modules/sezionali/actions.php deleted file mode 100644 index 0e7fb6b78..000000000 --- a/modules/sezionali/actions.php +++ /dev/null @@ -1,48 +0,0 @@ -query($query); - - $_SESSION['infos'][] = tr('Modifiche salvate correttamente.'); - - break; - - case 'add': - - $nome = post('nome'); - (strpos(post('maschera'), '#') !== false) ? $maschera = post('maschera') : $maschera = '##'; - $dir = post('dir'); - $idautomezzo = post('idautomezzo'); - $note = post('note'); - - $dbo->query("INSERT INTO co_sezionali( nome, maschera, dir, idautomezzo, note ) VALUES ( \"$nome\", \"$maschera\", \"$dir\", \"$idautomezzo\", \"$note\" )"); - $id_record = $dbo->last_inserted_id(); - - $_SESSION['infos'][] = tr('Nuovo sezionale aggiunto.'); - - break; - - case 'delete': - - $query = "DELETE FROM co_sezionali WHERE id=\"$id_record\""; - $rs = $dbo->query($query); - - // TODO - // eliminare riferimento sulle fatture eventuali collegate a questo sezionale? - - $_SESSION['infos'][] = tr('Sezionale eliminato.'); - - break; - } diff --git a/modules/sezionali/add.php b/modules/sezionali/add.php deleted file mode 100644 index 165c4dfa3..000000000 --- a/modules/sezionali/add.php +++ /dev/null @@ -1,47 +0,0 @@ -
- - - -
- -
- {[ "type": "text", "label": "Inserisci un nome per questo sezionale:", "name": "nome", "required": 1, "class": "", "value": "", "extra": "" ]} -
- -
- {[ "type": "text", "label": "Maschera", "name": "maschera", "required": 1, "class": "alphanumeric-mask", "value": "", "maxlength": 25, "placeholder":"####/YY", "extra": "" ]} -
- - -
- - -
- - -
- {[ "type": "select", "label": "Documenti", "name": "dir", "required": 1, "class": "", "values": "list=\"entrata\": \"Documenti di vendita\", \"uscita\": \"Documenti di acquisto\"", "value": "", "extra": "" ]} -
-
- {[ "type": "select", "label": "Magazzino", "name": "idautomezzo", "required": 0, "class": "", "values": "query=SELECT id, nome AS descrizione FROM dt_automezzi", "value": "", "extra": "" ]} -
- -
- -
- -
- {[ "type": "textarea", "label": "Note", "name": "note", "required": 0, "class": "", "value": "", "extra": "" ]} -
- -
- - - -
-
- diff --git a/modules/sezionali/init.php b/modules/sezionali/init.php deleted file mode 100644 index f7cb697d9..000000000 --- a/modules/sezionali/init.php +++ /dev/null @@ -1,5 +0,0 @@ -fetchArray("SELECT *, (SELECT COUNT(t.id) FROM co_sezionali t WHERE t.dir = co_sezionali.dir) AS n_sezionali FROM co_sezionali WHERE id='$id_record'"); diff --git a/src/App.php b/src/App.php index 3653fae8a..b2e01b705 100644 --- a/src/App.php +++ b/src/App.php @@ -337,11 +337,11 @@ class App // Sostituzione dei sezionali $sezionali = [ - '|sezionale_uscita|' => $_SESSION['uscita']['idsezionale'], - '|sezionale_entrata|' => $_SESSION['entrata']['idsezionale'], + '|sezionale_entrata|' => $_SESSION[14]['id_segment'], + '|sezionale_uscita|' => $_SESSION[15]['id_segment'], ]; foreach ($sezionali as $key => $value) { - $query = str_replace($key, !empty($value) ? ' AND idsezionale = '.prepare($value) : '', $query); + $query = str_replace($key, !empty($value) ? ' AND id_segment = '.prepare($value) : '', $query); } return $query; diff --git a/update/2_4.sql b/update/2_4.sql index 03b8306a1..b079e4d9c 100644 --- a/update/2_4.sql +++ b/update/2_4.sql @@ -157,37 +157,38 @@ DELETE FROM `zz_settings` WHERE (`nome` = 'Password SMTP') OR (`nome` = 'Sicurezza SMTP'); --- SEZIONALI --- Modifico co_documenti per aggiungere riferimento al sezionale -ALTER TABLE `co_documenti` ADD `idsezionale` int(11) NOT NULL ; +-- SEGNENTI +-- Modifico co_documenti per aggiungere riferimento al segmento +ALTER TABLE `co_documenti` ADD `id_segment` int(11) NOT NULL ; --- Creo tabella sezionali -CREATE TABLE IF NOT EXISTS `co_sezionali` ( +-- Creo tabella segmenti +CREATE TABLE IF NOT EXISTS `zz_segments` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `nome` varchar(255) NOT NULL, - `maschera` varchar(255) NOT NULL, - `dir` varchar(50) NOT NULL, - `idautomezzo` int(11) NULL , + `id_module` int(11) NOT NULL, + `category` varchar(255) NOT NULL, + `name` varchar(255) NOT NULL, + `pattern` varchar(255) NOT NULL, `note` text NOT NULL, PRIMARY KEY (`id`) ); --- Popolo con i sezionali di default -INSERT INTO `co_sezionali` (`id`, `nome`, `maschera`, `dir`, `idautomezzo`, `note`) VALUES -(1, 'Standard vendite', '####/YY', 'entrata', NULL, ''); +-- Popolo con i segmenti di default +INSERT INTO `zz_segments` (`id`, `id_module`, `category`, `name`, `pattern`,`note`) VALUES +(1, 14, 'Fatture', 'Standard vendite', '####/YY', ''), +(2, 15, 'Fatture', 'Standard acquisti', '####', ''); --- Collego le fatture esistenti al sezionale di default -UPDATE `co_documenti` SET `idsezionale`='1' WHERE `idtipodocumento` IN (SELECT `id` FROM `co_tipidocumento` WHERE `co_tipidocumento`.`dir`='entrata'); -UPDATE `co_documenti` SET `idsezionale`='2' WHERE `idtipodocumento` IN (SELECT `id` FROM `co_tipidocumento` WHERE `co_tipidocumento`.`dir`='uscita'); +-- Collego le fatture esistenti al segmento di default +UPDATE `co_documenti` SET `id_segment`='1' WHERE `idtipodocumento` IN (SELECT `id` FROM `co_tipidocumento` WHERE `co_tipidocumento`.`dir`='entrata'); +UPDATE `co_documenti` SET `id_segment`='2' WHERE `idtipodocumento` IN (SELECT `id` FROM `co_tipidocumento` WHERE `co_tipidocumento`.`dir`='uscita'); --- Innesto modulo sezionali sotto "Contabilità" +-- Innesto modulo segmenti sotto "Strumenti" INSERT INTO `zz_modules` (`id`, `name`, `title`, `directory`, `options`, `options2`, `icon`, `version`, `compatibility`, `order`, `parent`, `default`, `enabled`) VALUES -(NULL, 'Sezionali', 'Sezionali', 'sezionali', '{ "main_query": [ { "type": "table", "fields": "Tipo documenti, Nome, Maschera, Magazzino, Note", "query": "SELECT `id`, `nome` AS `Nome`, `maschera` AS `Maschera`, (SELECT nome FROM dt_automezzi WHERE dt_automezzi.id = idautomezzo) AS Magazzino, IF(`dir`=''entrata'', ''Documenti di vendita'', ''Documenti di acquisto'') AS `Tipo documenti`, `note` AS `Note` FROM `co_sezionali` HAVING 2=2 ORDER BY `Tipo documenti`, `Nome`"} ]}', '', 'fa fa-database', '2.4', '2.4', 1, 12, 1, 1); +(NULL, 'Segmenti', 'Segmenti', 'segmenti', '{ "main_query": [ { "type": "table", "fields": "Modulo, Categoria, Nome, Maschera, Note", "query": "SELECT `id`, `category` AS `Categoria`, `name` AS `Nome`, (SELECT name FROM zz_modules WHERE id = zz_segments.id_module) AS Modulo, `pattern` AS `Maschera`, `note` AS `Note` FROM `zz_segments` HAVING 2=2 ORDER BY name, id_module"} ]}', '', 'fa fa-database', '2.4', '2.4', 1, 36, 1, 1); -- Aggiungo impostazione predefinita INSERT INTO `zz_settings` (`idimpostazione`, `nome`, `valore`, `tipo`, `editable`, `sezione`) VALUES -(NULL, 'Sezionale predefinito fatture di vendita', '1', 'query=SELECT id, CONCAT(nome, '': '', maschera) AS descrizione FROM co_sezionali WHERE dir=''entrata'' ORDER BY nome', 1, 'Fatturazione'), -(NULL, 'Sezionale predefinito fatture di acquisto', '2', 'query=SELECT id, CONCAT(nome, '': '', maschera) AS descrizione FROM co_sezionali WHERE dir=''uscita'' ORDER BY nome', 1, 'Fatturazione'); +(NULL, 'Sezionale predefinito fatture di vendita', '1', 'query=SELECT id, CONCAT(name, '': '', pattern) AS descrizione FROM zz_segments WHERE id_module = 14 ORDER BY name', 1, 'Fatturazione'), +(NULL, 'Sezionale predefinito fatture di acquisto', '2', 'query=SELECT id, CONCAT(name, '': '', pattern) AS descrizione FROM zz_segments WHERE id_module = 15 ORDER BY name', 1, 'Fatturazione'); -- Aggiorno widget Fatturato con i sezionali UPDATE `zz_widgets` SET `query` = 'SELECT CONCAT_WS(" ", REPLACE(REPLACE(REPLACE(FORMAT(SUM((SELECT SUM(subtotale+iva-sconto) FROM co_righe_documenti WHERE iddocumento=co_documenti.id)+iva_rivalsainps+rivalsainps+bollo-ritenutaacconto), 2), ",", "#"), ".", ","), "#", "."), "€") AS dato FROM co_documenti WHERE idtipodocumento IN (SELECT id FROM co_tipidocumento WHERE dir="entrata") |sezionale_entrata| AND data >= "|period_start|" AND data <= "|period_end|" AND 1=1' WHERE `zz_widgets`.`name` = 'Fatturato';