From 1aa0da2946d41768af2319edd0b607c6f7196cc0 Mon Sep 17 00:00:00 2001 From: Pek5892 Date: Fri, 18 Nov 2022 13:02:39 +0100 Subject: [PATCH] Ottimizzazione query vista ddt uscita --- update/2_4_38.sql | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/update/2_4_38.sql b/update/2_4_38.sql index 75f3edb40..b503b9223 100644 --- a/update/2_4_38.sql +++ b/update/2_4_38.sql @@ -163,3 +163,43 @@ ORDER BY `data` DESC, CAST(`numero_esterno` AS UNSIGNED) DESC" WHERE `name` = 'Ordini fornitore'; +-- Ottimizzazione query vista ddt uscita +UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = 'dt_statiddt.icona' WHERE `zz_modules`.`name` = 'Ddt di vendita' AND `zz_views`.`name` = 'icon_Stato'; +UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = 'dt_statiddt.descrizione' WHERE `zz_modules`.`name` = 'Ddt di vendita' AND `zz_views`.`name` = 'icon_title_Stato'; +UPDATE `zz_modules` SET `options` = "SELECT + |select| +FROM + `dt_ddt` +LEFT JOIN `an_anagrafiche` ON `dt_ddt`.`idanagrafica` = `an_anagrafiche`.`idanagrafica` +LEFT JOIN `dt_tipiddt` ON `dt_ddt`.`idtipoddt` = `dt_tipiddt`.`id` +LEFT JOIN `dt_causalet` ON `dt_ddt`.`idcausalet` = `dt_causalet`.`id` +LEFT JOIN `dt_spedizione` ON `dt_ddt`.`idspedizione` = `dt_spedizione`.`id` +LEFT JOIN `an_anagrafiche` `vettori` ON `dt_ddt`.`idvettore` = `vettori`.`idanagrafica` +LEFT JOIN `an_sedi` AS sedi ON `dt_ddt`.`idsede_partenza` = sedi.`id` +LEFT JOIN `an_sedi` AS `sedi_destinazione`ON `dt_ddt`.`idsede_destinazione` = `sedi_destinazione`.`id` +LEFT 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` +LEFT JOIN `dt_statiddt` ON `dt_statiddt`.`id` = `dt_ddt`.`idstatoddt` +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'; +