diff --git a/update/2_4_14.sql b/update/2_4_14.sql index 9af0e5fda..1d305ed40 100755 --- a/update/2_4_14.sql +++ b/update/2_4_14.sql @@ -196,4 +196,198 @@ INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, UPDATE `zz_widgets` SET `query` = 'SELECT COUNT(id) AS dato FROM in_interventi WHERE in_interventi.idstatointervento = (SELECT in_statiintervento.idstatointervento FROM in_statiintervento WHERE in_statiintervento.codice=''WIP'') ORDER BY in_interventi.data_richiesta ASC' WHERE `name` = 'Attività confermate'; -- Permetto valore null per id_categoria articoli -ALTER TABLE `mg_articoli` CHANGE `id_categoria` `id_categoria` INT(11) NULL; \ No newline at end of file +ALTER TABLE `mg_articoli` CHANGE `id_categoria` `id_categoria` INT(11) NULL; + +-- Correzione totali per le Viste + +-- Fatture di vendita +UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `co_documenti` + INNER JOIN `an_anagrafiche` ON `co_documenti`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento` = `co_tipidocumento`.`id` + INNER JOIN `co_statidocumento` ON `co_documenti`.`idstatodocumento` = `co_statidocumento`.`id` + LEFT JOIN `fe_stati_documento` ON `co_documenti`.`codice_stato_fe` = `fe_stati_documento`.`codice` + LEFT OUTER JOIN ( + SELECT `iddocumento`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `co_righe_documenti` + GROUP BY `iddocumento` + ) AS righe ON `co_documenti`.`id` = `righe`.`iddocumento` + LEFT JOIN ( + SELECT `numero_esterno`, `id_segment` + FROM `co_documenti` + WHERE `co_documenti`.`idtipodocumento` IN(SELECT `id` FROM `co_tipidocumento` WHERE `dir` = ''entrata'') |date_period(`co_documenti`.`data`)| AND `numero_esterno` != '''' + GROUP BY `id_segment`, `numero_esterno` + HAVING COUNT(`numero_esterno`) > 1 + ) dup ON `co_documenti`.`numero_esterno` = `dup`.`numero_esterno` AND `dup`.`id_segment` = `co_documenti`.`id_segment` + LEFT OUTER JOIN ( + SELECT `zz_operations`.`id_email`, `zz_operations`.`id_record` + FROM `zz_operations` + INNER JOIN `em_emails` ON `zz_operations`.`id_email` = `em_emails`.`id` + INNER JOIN `em_templates` ON `em_emails`.`id_template` = `em_templates`.`id` + INNER JOIN `zz_modules` ON `zz_operations`.`id_module` = `zz_modules`.`id` + WHERE `zz_modules`.`name` = ''Fatture di vendita'' AND `zz_operations`.`op` = ''send-email'' + GROUP BY `zz_operations`.`id_record` + ) AS `email` ON `email`.`id_record` = `co_documenti`.`id` +WHERE 1=1 AND `dir` = ''entrata'' |segment(`co_documenti`.`id_segment`)| |date_period(`co_documenti`.`data`)| +HAVING 2=2 +ORDER BY `co_documenti`.`data` DESC, CAST(`co_documenti`.`numero_esterno` AS UNSIGNED) DESC' WHERE `name` = 'Fatture di vendita'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita'), 'Totale ivato', 'righe.totale', 9, 1, 1, 1, 1); + +-- Fatture di acquisto +UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `co_documenti` + INNER JOIN `an_anagrafiche` ON `co_documenti`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento` = `co_tipidocumento`.`id` + INNER JOIN `co_statidocumento` ON `co_documenti`.`idstatodocumento` = `co_statidocumento`.`id` + LEFT OUTER JOIN ( + SELECT `iddocumento`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `co_righe_documenti` + GROUP BY `iddocumento` + ) AS righe ON `co_documenti`.`id` = `righe`.`iddocumento` +WHERE 1=1 AND `dir` = ''uscita'' |segment(`co_documenti`.`id_segment`)| |date_period(`co_documenti`.`data`)| +HAVING 2=2 +ORDER BY `co_documenti`.`data` DESC, CAST(IF(`co_documenti`.`numero_esterno` = '''', `co_documenti`.`numero`, `co_documenti`.`numero_esterno`) AS UNSIGNED) DESC' WHERE `name` = 'Fatture di acquisto'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di acquisto') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di acquisto'), 'Totale ivato', 'righe.totale', 6, 1, 1, 1, 1); + +-- Contratti +UPDATE `zz_modules` SET `options` = 'SELECT |select| +FROM `co_contratti` + INNER JOIN `an_anagrafiche` ON `co_contratti`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `co_staticontratti` ON `co_contratti`.`idstato` = `co_staticontratti`.`id` + LEFT OUTER JOIN ( + SELECT `idcontratto`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `co_righe_contratti` + GROUP BY `idcontratto` + ) AS righe ON `co_contratti`.`id` = `righe`.`idcontratto` + LEFT OUTER JOIN ( + SELECT GROUP_CONCAT(CONCAT(matricola, IF(nome != '''', CONCAT('' - '', nome), '''')) SEPARATOR ''
'') AS descrizione, my_impianti_contratti.idcontratto + FROM my_impianti + INNER JOIN my_impianti_contratti ON my_impianti.id = my_impianti_contratti.idimpianto + GROUP BY my_impianti_contratti.idcontratto + ) AS impianti ON impianti.idcontratto = co_contratti.id +WHERE 1=1 |date_period(custom,''|period_start|'' >= `data_bozza` AND ''|period_start|'' <= `data_conclusione`,''|period_end|'' >= `data_bozza` AND ''|period_end|'' <= `data_conclusione`,`data_bozza` >= ''|period_start|'' AND `data_bozza` <= ''|period_end|'',`data_conclusione` >= ''|period_start|'' AND `data_conclusione` <= ''|period_end|'',`data_bozza` >= ''|period_start|'' AND `data_conclusione` = ''0000-00-00'')| +HAVING 2=2 +ORDER BY `co_contratti`.`id` DESC' WHERE `name` = 'Contratti'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Totale ivato', 'righe.totale', 5, 1, 1, 1, 1); + +-- Preventivi +UPDATE `zz_modules` SET `options` = 'SELECT |select| +FROM `co_preventivi` + INNER JOIN `an_anagrafiche` ON `co_preventivi`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `co_statipreventivi` ON `co_preventivi`.`idstato` = `co_statipreventivi`.`id` + LEFT OUTER JOIN ( + SELECT `idpreventivo`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `co_righe_preventivi` + GROUP BY `idpreventivo` + ) AS righe ON `co_preventivi`.`id` = `righe`.`idpreventivo` +WHERE 1=1 |date_period(custom,''|period_start|'' >= `data_bozza` AND ''|period_start|'' <= `data_conclusione`,''|period_end|'' >= `data_bozza` AND ''|period_end|'' <= `data_conclusione`,`data_bozza` >= ''|period_start|'' AND `data_bozza` <= ''|period_end|'',`data_conclusione` >= ''|period_start|'' AND `data_conclusione` <= ''|period_end|'',`data_bozza` >= ''|period_start|'' AND `data_conclusione` = ''0000-00-00'')| +HAVING 2=2 +ORDER BY `co_preventivi`.`id` DESC' WHERE `name` = 'Preventivi'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'Totale ivato', 'righe.totale', 5, 1, 1, 1, 1); + +-- Ddt di acquisto +UPDATE `zz_modules` SET `options` = 'SELECT |select| FROM `dt_ddt` + INNER JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` + LEFT OUTER JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` + LEFT OUTER JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` + LEFT OUTER JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` + LEFT OUTER JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` + LEFT OUTER JOIN `an_sedi` AS `sedi_destinazione` ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` + LEFT OUTER JOIN ( + SELECT `idddt`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `dt_righe_ddt` + GROUP BY `idddt` + ) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` +WHERE 1=1 AND `dir` = ''uscita'' |date_period(`data`)| +HAVING 2=2 +ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC,`dt_ddt`.created_at DESC' WHERE `name` = 'Ddt di acquisto'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di acquisto') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di acquisto'), 'Totale ivato', 'righe.totale', 9, 1, 1, 1, 1); + +-- Ddt di vendita +UPDATE `zz_modules` SET `options` = 'SELECT |select| +FROM `dt_ddt` + INNER JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` + LEFT OUTER JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` + LEFT OUTER JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` + LEFT OUTER JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` + LEFT OUTER JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` + LEFT OUTER JOIN `an_sedi` AS `sedi_destinazione` ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` + LEFT OUTER JOIN ( + SELECT `idddt`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `dt_righe_ddt` + GROUP BY `idddt` + ) AS righe ON `dt_ddt`.`id` = `righe`.`idddt` +WHERE 1=1 AND `dir` = ''entrata'' |date_period(`data`)| +HAVING 2=2 +ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC,`dt_ddt`.created_at DESC' WHERE `name` = 'Ddt di vendita'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di vendita') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di vendita'), 'Totale ivato', 'righe.totale', 9, 1, 1, 1, 1); + +-- Ordini cliente +UPDATE `zz_modules` SET `options` = 'SELECT |select| +FROM `or_ordini` + INNER JOIN `an_anagrafiche` ON `or_ordini`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine` = `or_tipiordine`.`id` + LEFT OUTER JOIN ( + SELECT `idordine`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `or_righe_ordini` + GROUP BY `idordine` + ) AS righe ON `or_ordini`.`id` = `righe`.`idordine` +WHERE 1=1 AND `dir` = ''entrata'' |date_period(`data`)| +HAVING 2=2 +ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC' WHERE `name` = 'Ordini cliente'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini cliente') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini cliente'), 'Totale ivato', 'righe.totale', 5, 1, 1, 1, 1); + +-- Ordini fornitore +UPDATE `zz_modules` SET `options` = 'SELECT |select| +FROM `or_ordini` + INNER JOIN `an_anagrafiche` ON `or_ordini`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` + INNER JOIN `or_tipiordine` ON `or_ordini`.`idtipoordine` = `or_tipiordine`.`id` + LEFT OUTER JOIN ( + SELECT `idordine`, + SUM(`subtotale` - `sconto`) AS `totale_imponibile`, + SUM(`subtotale` - `sconto` + `iva` ) AS `totale` + FROM `or_righe_ordini` + GROUP BY `idordine` + ) AS righe ON `or_ordini`.`id` = `righe`.`idordine` +WHERE 1=1 AND `dir` = ''uscita'' |date_period(`data`)| +HAVING 2=2 +ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC' WHERE `name` = 'Ordini fornitore'; + +UPDATE `zz_views` SET `query` = 'righe.totale_imponibile' WHERE `id_module` = (SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini fornitore') AND `name` = 'Totale'; +INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `format`, `default`, `visible`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini fornitore'), 'Totale ivato', 'righe.totale', 5, 1, 1, 1, 1);