From fdb95e8a1cfc61696812e98eb9b5b9e02908c730 Mon Sep 17 00:00:00 2001 From: loviuz Date: Fri, 8 Jan 2021 10:55:45 +0100 Subject: [PATCH] =?UTF-8?q?Ottimizzazione=20calcolo=20quantit=C3=A0=20su?= =?UTF-8?q?=20modulo=20"Giacenze=20sedi"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- update/2_4_21.sql | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/update/2_4_21.sql b/update/2_4_21.sql index 4fcff39cc..1a01386be 100644 --- a/update/2_4_21.sql +++ b/update/2_4_21.sql @@ -19,4 +19,18 @@ UPDATE `zz_settings` SET `editable` = '1', `tipo` = 'list[5,10,15,20,25,30,35,40 -- Impostazioni per decidere eventuali date predefinite per l'inizio o la fine del calendario (impostate al login) INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Inizio periodo calendario', '', 'date', '1', 'Generali', '23', NULL); -INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Fine periodo calendario', '', 'date', '1', 'Generali', '23', NULL); \ No newline at end of file +INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Fine periodo calendario', '', 'date', '1', 'Generali', '23', NULL); + +-- Ottimizzazione calcolo quantità su modulo "Giacenze sedi" +UPDATE `zz_modules` SET `options`='SELECT |select| FROM `mg_articoli` + LEFT OUTER JOIN an_anagrafiche ON mg_articoli.id_fornitore = an_anagrafiche.idanagrafica + LEFT OUTER JOIN co_iva ON mg_articoli.idiva_vendita = co_iva.id + LEFT OUTER JOIN ( + SELECT SUM(qta - qta_evasa) AS qta_impegnata, idarticolo FROM or_righe_ordini + INNER JOIN or_ordini ON or_righe_ordini.idordine = or_ordini.id + WHERE idstatoordine IN (SELECT id FROM or_statiordine WHERE completato = 0) + GROUP BY idarticolo + ) ordini ON ordini.idarticolo = mg_articoli.id + LEFT OUTER JOIN (SELECT `idarticolo`, `idsede_azienda`, SUM(`qta`) AS `qta` FROM `mg_movimenti` WHERE `idsede_azienda` = |giacenze_sedi_idsede| GROUP BY `idarticolo`, `idsede_azienda`) movimenti ON `mg_articoli`.`id` = `movimenti`.`idarticolo` +WHERE 1=1 AND `mg_articoli`.`deleted_at` IS NULL HAVING 2=2 AND `Q.tà` > 0 ORDER BY `descrizione`' WHERE `name` = 'Giacenze sedi'; +UPDATE `zz_views` SET `query`='movimenti.qta', `format`=1 WHERE `id_module`=(SELECT `id` FROM `zz_modules` WHERE `name`='Giacenze sedi') AND `name`='Q.tà'; \ No newline at end of file