Ottimizzazione query vista Fatture di acquisto
This commit is contained in:
parent
f227b7cb99
commit
421a893491
|
@ -416,3 +416,70 @@ GROUP BY
|
|||
`descrizione`, `id`
|
||||
HAVING
|
||||
2 = 2" WHERE `name` = 'Pagamenti';
|
||||
|
||||
|
||||
-- Ottimizzazione query vista Fatture di acquisto
|
||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = 'banche.descrizione' WHERE `zz_modules`.`name` = 'Fatture di acquisto' AND `zz_views`.`name` = 'Banca';
|
||||
UPDATE `zz_views` INNER JOIN `zz_modules` ON `zz_views`.`id_module` = `zz_modules`.`id` SET `zz_views`.`query` = 'conti.descrizione' WHERE `zz_modules`.`name` = 'Fatture di acquisto' AND `zz_views`.`name` = 'Conto';
|
||||
UPDATE `zz_modules` SET `options` = "SELECT
|
||||
|select|
|
||||
FROM
|
||||
`co_documenti`
|
||||
LEFT JOIN `an_anagrafiche` ON `co_documenti`.`idanagrafica` = `an_anagrafiche`.`idanagrafica`
|
||||
LEFT JOIN `co_tipidocumento` ON `co_documenti`.`idtipodocumento` = `co_tipidocumento`.`id`
|
||||
LEFT JOIN `co_statidocumento` ON `co_documenti`.`idstatodocumento` = `co_statidocumento`.`id`
|
||||
LEFT JOIN `co_ritenuta_contributi` ON `co_documenti`.`id_ritenuta_contributi` = `co_ritenuta_contributi`.`id`
|
||||
LEFT JOIN `co_pagamenti` ON `co_documenti`.`idpagamento` = `co_pagamenti`.`id`
|
||||
LEFT JOIN (SELECT co_banche.id, CONCAT(`nome`, ' - ', `iban`) AS descrizione FROM `co_banche`) AS banche ON `banche`.`id` = `co_documenti`.`id_banca_azienda`
|
||||
LEFT JOIN (SELECT iddocumento, CONCAT(co_pianodeiconti3.descrizione) AS descrizione FROM co_righe_documenti INNER JOIN co_pianodeiconti3 ON co_pianodeiconti3.id = co_righe_documenti.idconto) AS conti ON conti.iddocumento = co_documenti.id
|
||||
LEFT JOIN(
|
||||
SELECT `iddocumento`,
|
||||
SUM(`subtotale` - `sconto`) AS `totale_imponibile`,
|
||||
SUM(`iva`) AS `iva`
|
||||
FROM
|
||||
`co_righe_documenti`
|
||||
GROUP BY
|
||||
`iddocumento`
|
||||
) AS righe
|
||||
ON
|
||||
`co_documenti`.`id` = `righe`.`iddocumento`
|
||||
LEFT JOIN(
|
||||
SELECT COUNT(`d`.`id`) AS `conteggio`,
|
||||
IF(
|
||||
`d`.`numero_esterno` = '',
|
||||
`d`.`numero`,
|
||||
`d`.`numero_esterno`
|
||||
) AS `numero_documento`,
|
||||
`d`.`idanagrafica` AS `anagrafica`,
|
||||
`id_segment`
|
||||
FROM
|
||||
`co_documenti` AS `d`
|
||||
LEFT JOIN `co_tipidocumento` AS `d_tipo`
|
||||
ON
|
||||
`d`.`idtipodocumento` = `d_tipo`.`id`
|
||||
WHERE
|
||||
1 = 1 AND `d_tipo`.`dir` = 'uscita' AND(
|
||||
'|period_start|' <= `d`.`data` AND '|period_end|' >= `d`.`data` OR '|period_start|' <= `d`.`data_competenza` AND '|period_end|' >= `d`.`data_competenza`
|
||||
)
|
||||
GROUP BY
|
||||
`id_segment`,
|
||||
`numero_documento`,
|
||||
`d`.`idanagrafica`
|
||||
) AS `d`
|
||||
ON
|
||||
(
|
||||
`d`.`numero_documento` = IF(
|
||||
`co_documenti`.`numero_esterno` = '',
|
||||
`co_documenti`.`numero`,
|
||||
`co_documenti`.`numero_esterno`
|
||||
) AND `d`.`anagrafica` = `co_documenti`.`idanagrafica` AND `d`.`id_segment` = `co_documenti`.`id_segment`
|
||||
)
|
||||
WHERE
|
||||
1=1
|
||||
AND
|
||||
`dir` = 'uscita' |segment(`co_documenti`.`id_segment`)||date_period(custom, '|period_start|' <= `co_documenti`.`data` AND '|period_end|' >= `co_documenti`.`data`, '|period_start|' <= `co_documenti`.`data_competenza` AND '|period_end|' >= `co_documenti`.`data_competenza` )|
|
||||
HAVING
|
||||
2=2
|
||||
ORDER BY
|
||||
`co_documenti`.`data` DESC,
|
||||
CAST(IF(`co_documenti`.`numero` = '', `co_documenti`.`numero_esterno`, `co_documenti`.`numero`) AS UNSIGNED) DESC" WHERE `name` = 'Fatture di acquisto';
|
||||
|
|
Loading…
Reference in New Issue