2022-11-15 17:38:42 +01:00
-- Aggiunto modulo Listini clienti
RENAME TABLE ` mg_listini ` TO ` mg_piani_sconto ` ;
ALTER TABLE ` an_anagrafiche ` CHANGE ` idlistino_acquisti ` ` id_piano_sconto_acquisti ` INT ( 11 ) NULL DEFAULT NULL ;
ALTER TABLE ` an_anagrafiche ` CHANGE ` idlistino_vendite ` ` id_piano_sconto_vendite ` INT ( 11 ) NULL DEFAULT NULL ;
ALTER TABLE ` an_anagrafiche ` ADD ` id_listino ` INT NOT NULL AFTER ` id_piano_sconto_acquisti ` ;
CREATE TABLE ` mg_listini ` ( ` id ` INT NOT NULL AUTO_INCREMENT , ` nome ` VARCHAR ( 255 ) NOT NULL , ` data_attivazione ` DATE NULL , ` data_scadenza_predefinita ` DATE NULL , ` is_sempre_visibile ` BOOLEAN NOT NULL , ` note ` TEXT NOT NULL , ` created_at ` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , ` updated_at ` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , PRIMARY KEY ( ` id ` ) ) ;
CREATE TABLE ` mg_listini_articoli ` ( ` id ` INT NOT NULL AUTO_INCREMENT , ` id_listino ` INT NOT NULL , ` id_articolo ` INT NOT NULL , ` data_scadenza ` DATE NOT NULL , ` prezzo_unitario ` DECIMAL ( 15 , 6 ) NOT NULL , ` prezzo_unitario_ivato ` DECIMAL ( 15 , 6 ) NOT NULL , ` sconto_percentuale ` DECIMAL ( 15 , 6 ) NOT NULL , ` dir ` VARCHAR ( 20 ) NOT NULL , ` created_at ` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , ` updated_at ` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , PRIMARY KEY ( ` id ` ) ) ;
INSERT INTO ` zz_modules ` ( ` id ` , ` name ` , ` title ` , ` directory ` , ` options ` , ` options2 ` , ` icon ` , ` version ` , ` compatibility ` , ` order ` , ` parent ` , ` default ` , ` enabled ` , ` use_notes ` , ` use_checklists ` ) VALUES ( NULL , ' Listini cliente ' , ' Listini cliente ' , ' listini_cliente ' , ' SELECT |select| FROM `mg_listini` WHERE 1=1 HAVING 2=2 ' , ' ' , ' fa fa-angle-right ' , ' 2.* ' , ' 2.* ' , ' 2 ' , ( SELECT ` id ` FROM ` zz_modules ` AS ` t ` WHERE ` t ` . ` name ` = ' Magazzino ' ) , ' 1 ' , ' 1 ' , ' 0 ' , ' 0 ' ) ;
2022-11-16 15:46:19 +01:00
INSERT INTO ` zz_views ` ( ` id_module ` , ` name ` , ` query ` , ` order ` , ` search ` , ` slow ` , ` format ` , ` html_format ` , ` search_inside ` , ` order_by ` , ` visible ` , ` summable ` , ` default ` ) VALUES
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' id ' , ' id ' , 1 , 1 , 0 , 0 , 0 , ' ' , ' ' , 0 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Nome ' , ' nome ' , 2 , 1 , 0 , 0 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ,
2022-11-15 17:38:42 +01:00
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Data attivazione ' , ' data_attivazione ' , 3 , 1 , 0 , 1 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Articoli ' , ' (SELECT COUNT(id) FROM mg_listini_articoli WHERE id_listino=mg_listini.id) ' , 4 , 1 , 0 , 0 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Anagrafiche ' , ' (SELECT COUNT(idanagrafica) FROM an_anagrafiche WHERE id_listino=mg_listini.id) ' , 5 , 1 , 0 , 0 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Ultima modifica ' , ' (SELECT username FROM zz_users WHERE id=(SELECT id_utente FROM zz_operations WHERE id_module=(SELECT id FROM zz_modules WHERE name=\ ' Listini cliente \ ' ) AND id_record=mg_listini.id ORDER BY id DESC LIMIT 0,1)) ' , 6 , 1 , 0 , 0 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ,
( ( SELECT ` id ` FROM ` zz_modules ` WHERE name = ' Listini cliente ' ) , ' Sempre visibile ' , ' IF(is_sempre_visibile=0,\ ' NO \ ' ,\ ' SÌ \ ' ) ' , 7 , 1 , 0 , 0 , 0 , ' ' , ' ' , 1 , 0 , 1 ) ;
UPDATE ` zz_plugins ` SET ` title ` = ' Netto clienti ' , ` name ` = ' Netto Clienti ' WHERE ` zz_plugins ` . ` name ` = ' Listino Clienti ' ;
ALTER TABLE ` mg_articoli ` ADD ` minimo_vendita ` DECIMAL ( 15 , 6 ) NOT NULL AFTER ` prezzo_vendita_ivato ` ;
2022-11-15 17:40:40 +01:00
ALTER TABLE ` mg_articoli ` ADD ` minimo_vendita_ivato ` DECIMAL ( 15 , 6 ) NOT NULL AFTER ` minimo_vendita ` ;
2022-11-17 12:47:29 +01:00
INSERT INTO ` zz_settings ` ( ` id ` , ` nome ` , ` valore ` , ` tipo ` , ` editable ` , ` sezione ` , ` order ` , ` help ` ) VALUES ( NULL , ' Bloccare i prezzi inferiori al minimo di vendita ' , ' 0 ' , ' boolean ' , ' 1 ' , ' Fatturazione ' , NULL , NULL ) ;
2022-11-15 17:40:40 +01:00
-- Aggiunto task invio mail
INSERT INTO ` zz_tasks ` ( ` id ` , ` name ` , ` class ` , ` expression ` , ` next_execution_at ` , ` last_executed_at ` ) VALUES ( NULL , ' Invio automatico mail ' , ' Modules\\Emails\\EmailTask ' , ' */1 * * * * ' , NULL , NULL ) ;
2022-11-16 18:01:32 +01:00
-- Ottimizzazione query vista anagrafiche
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' sedi.nomi ' WHERE ` zz_modules ` . ` name ` = ' Anagrafiche ' AND ` zz_views ` . ` name ` = ' Sedi ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' an_anagrafiche.citta ' WHERE ` zz_modules ` . ` name ` = ' Anagrafiche ' AND ` zz_views ` . ` name ` = ' Città ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' an_anagrafiche.codice_destinatario ' WHERE ` zz_modules ` . ` name ` = ' Anagrafiche ' AND ` zz_views ` . ` name ` = ' Codice destinatario ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' an_anagrafiche.telefono ' WHERE ` zz_modules ` . ` name ` = ' Anagrafiche ' AND ` zz_views ` . ` name ` = ' Telefono ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' referenti.nomi ' WHERE ` zz_modules ` . ` name ` = ' Anagrafiche ' AND ` zz_views ` . ` name ` = ' Referenti ' ;
UPDATE ` zz_modules ` SET ` options ` = " SELECT
| select |
FROM
` an_anagrafiche `
LEFT JOIN ` an_relazioni ` ON ` an_anagrafiche ` . ` idrelazione ` = ` an_relazioni ` . ` id `
LEFT JOIN ` an_tipianagrafiche_anagrafiche ` ON ` an_tipianagrafiche_anagrafiche ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
LEFT JOIN ` an_tipianagrafiche ` ON ` an_tipianagrafiche ` . ` idtipoanagrafica ` = ` an_tipianagrafiche_anagrafiche ` . ` idtipoanagrafica `
LEFT JOIN ( SELECT ` idanagrafica ` , GROUP_CONCAT ( nomesede SEPARATOR ' , ' ) AS nomi FROM ` an_sedi ` GROUP BY idanagrafica ) AS sedi ON ` an_anagrafiche ` . ` idanagrafica ` = ` sedi ` . ` idanagrafica `
LEFT JOIN ( SELECT ` idanagrafica ` , GROUP_CONCAT ( nome SEPARATOR ' , ' ) AS nomi FROM ` an_referenti ` GROUP BY idanagrafica ) AS referenti ON ` an_anagrafiche ` . ` idanagrafica ` = ` referenti ` . ` idanagrafica `
WHERE
1 = 1 AND ` deleted_at ` IS NULL
GROUP BY
` an_anagrafiche ` . ` idanagrafica `
HAVING
2 = 2
ORDER BY
TRIM ( ` ragione_sociale ` ) " WHERE `name` = 'Anagrafiche';
2022-11-17 16:58:59 +01:00
-- Creazione modelli prima nota per liquidazione salari e stipendi
INSERT INTO ` co_pianodeiconti3 ` ( ` id ` , ` numero ` , ` descrizione ` , ` idpianodeiconti2 ` , ` dir ` , ` percentuale_deducibile ` ) VALUES
( NULL , ' 000080 ' , ' Personale c/Retribuzioni ' , ' 8 ' , ' ' , ' 100.00 ' ) ,
( NULL , ' 000090 ' , ' INPS c/Competenza ' , ' 8 ' , ' ' , ' 100.00 ' ) ,
( NULL , ' 000090 ' , ' Erario c/Ritenute dipendenti ' , ' 5 ' , ' ' , ' 100.00 ' ) ;
INSERT INTO ` co_movimenti_modelli ` ( ` id ` , ` idmastrino ` , ` nome ` , ` descrizione ` , ` idconto ` , ` totale ` ) VALUES
( NULL , 3 , ' Liquidazione salari e stipendi ' , ' Liquidazione retribuzione relativa al mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' Costi salari e stipendi ' ) , ' 0.0 ' ) ,
( NULL , 3 , ' Liquidazione salari e stipendi ' , ' Liquidazione retribuzione relativa al mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' INPS c/Competenza ' ) , ' 0.0 ' ) ,
( NULL , 3 , ' Liquidazione salari e stipendi ' , ' Liquidazione retribuzione relativa al mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' Personale c/Retribuzioni ' ) , ' 0.0 ' ) ;
INSERT INTO ` co_movimenti_modelli ` ( ` id ` , ` idmastrino ` , ` nome ` , ` descrizione ` , ` idconto ` , ` totale ` ) VALUES
( NULL , 4 , ' Pagamento salari e stipendi ' , ' Pagamento ai dipendenti delle retribuzioni nette del mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' Personale c/Retribuzioni ' ) , ' 0.0 ' ) ,
( NULL , 4 , ' Pagamento salari e stipendi ' , ' Pagamento ai dipendenti delle retribuzioni nette del mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' INPS c/Competenza ' ) , ' 0.0 ' ) ,
( NULL , 4 , ' Pagamento salari e stipendi ' , ' Pagamento ai dipendenti delle retribuzioni nette del mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' Erario c/Ritenute dipendenti ' ) , ' 0.0 ' ) ,
( NULL , 4 , ' Pagamento salari e stipendi ' , ' Pagamento ai dipendenti delle retribuzioni nette del mese di ... ' , ( SELECT id FROM co_pianodeiconti3 WHERE descrizione = ' Banca C/C ' ) , ' 0.0 ' ) ;
2022-11-17 16:59:31 +01:00
-- Ottimizzazione query vista prima nota
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' co_documenti.numero_esterno ' WHERE ` zz_modules ` . ` name ` = ' Prima nota ' AND ` zz_views ` . ` name ` = ' Rif. fattura ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' an_anagrafiche.ragione_sociale ' WHERE ` zz_modules ` . ` name ` = ' Prima nota ' AND ` zz_views ` . ` name ` = ' Controparte ' ;
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' co_movimenti.data ' WHERE ` zz_modules ` . ` name ` = ' Prima nota ' AND ` zz_views ` . ` name ` = ' Data ' ;
UPDATE ` zz_modules ` SET ` options ` = "
SELECT
| select |
FROM
` co_movimenti `
INNER JOIN ` co_pianodeiconti3 ` ON ` co_movimenti ` . ` idconto ` = ` co_pianodeiconti3 ` . ` id `
LEFT JOIN ` co_documenti ` ON ` co_documenti ` . ` id ` = ` co_movimenti ` . ` iddocumento `
LEFT JOIN ` an_anagrafiche ` ON ` co_movimenti ` . ` id_anagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
WHERE
1 = 1 AND ` primanota ` = 1 | date_period ( ` co_movimenti ` . ` data ` ) |
GROUP BY
` idmastrino ` ,
` primanota ` ,
` co_movimenti ` . ` data ` ,
` numero_esterno ` ,
` co_movimenti ` . ` descrizione ` ,
` an_anagrafiche ` . ` ragione_sociale `
HAVING
2 = 2
ORDER BY
` co_movimenti ` . ` data `
DESC " WHERE `name` = 'Prima nota';
2022-11-17 17:00:08 +01:00
-- Ottimizzazione query vista ordini cliente
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' or_statiordine.icona ' WHERE ` zz_modules ` . ` name ` = ' Ordini cliente ' 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 ` = ' or_statiordine.descrizione ' WHERE ` zz_modules ` . ` name ` = ' Ordini cliente ' AND ` zz_views ` . ` name ` = ' icon_title_Stato ' ;
UPDATE ` zz_modules ` SET ` options ` = " SELECT
| select |
FROM
` or_ordini `
LEFT JOIN ` or_tipiordine ` ON ` or_ordini ` . ` idtipoordine ` = ` or_tipiordine ` . ` id `
LEFT JOIN ` an_anagrafiche ` ON ` or_ordini ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
LEFT JOIN ( SELECT ` idordine ` , SUM ( ` qta ` - ` qta_evasa ` ) AS ` qta_da_evadere ` , 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 `
LEFT JOIN ( SELECT ` idordine ` , MIN ( ` data_evasione ` ) AS ` data_evasione ` FROM ` or_righe_ordini ` WHERE ( ` qta ` - ` qta_evasa ` ) > 0 GROUP BY ` idordine ` ) AS ` righe_da_evadere ` ON ` righe ` . ` idordine ` = ` righe_da_evadere ` . ` idordine `
LEFT JOIN ` or_statiordine ` ON ` or_statiordine ` . ` id ` = ` or_ordini ` . ` idstatoordine `
LEFT JOIN (
SELECT GROUP_CONCAT ( DISTINCT co_documenti . numero_esterno SEPARATOR ' , ' ) AS info , co_righe_documenti . original_document_id AS idordine FROM co_documenti INNER JOIN co_righe_documenti ON co_documenti . id = co_righe_documenti . iddocumento WHERE original_document_type = ' Modules\\Ordini\\Ordine ' GROUP BY idordine
) AS fattura ON fattura . idordine = or_ordini . id
LEFT 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 ` = ' Ordini cliente ' AND ` zz_operations ` . ` op ` = ' send-email '
GROUP BY ` zz_operations ` . ` id_record `
) AS ` email ` ON ` email ` . ` id_record ` = ` or_ordini ` . ` id `
WHERE
1 = 1 AND ` dir ` = ' entrata ' | date_period ( ` or_ordini ` . ` data ` ) |
HAVING
2 = 2
ORDER BY
` data ` DESC ,
2022-11-17 17:00:40 +01:00
CAST ( ` numero_esterno ` AS UNSIGNED ) DESC " WHERE `name` = 'Ordini cliente';
-- Ottimizzazione query vista ordini fornitore
UPDATE ` zz_views ` INNER JOIN ` zz_modules ` ON ` zz_views ` . ` id_module ` = ` zz_modules ` . ` id ` SET ` zz_views ` . ` query ` = ' or_statiordine.icona ' WHERE ` zz_modules ` . ` name ` = ' Ordini fornitore ' 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 ` = ' or_statiordine.descrizione ' WHERE ` zz_modules ` . ` name ` = ' Ordini fornitore ' AND ` zz_views ` . ` name ` = ' icon_title_Stato ' ;
UPDATE ` zz_modules ` SET ` options ` = " SELECT
| select |
FROM
` or_ordini `
LEFT JOIN ` or_tipiordine ` ON ` or_ordini ` . ` idtipoordine ` = ` or_tipiordine ` . ` id `
LEFT JOIN ` an_anagrafiche ` ON ` or_ordini ` . ` idanagrafica ` = ` an_anagrafiche ` . ` idanagrafica `
LEFT JOIN ( SELECT ` idordine ` , SUM ( ` qta ` - ` qta_evasa ` ) AS ` qta_da_evadere ` , 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 `
LEFT JOIN ( SELECT ` idordine ` , MIN ( ` data_evasione ` ) AS ` data_evasione ` FROM ` or_righe_ordini ` WHERE ( ` qta ` - ` qta_evasa ` ) > 0 GROUP BY ` idordine ` ) AS ` righe_da_evadere ` ON ` righe ` . ` idordine ` = ` righe_da_evadere ` . ` idordine `
LEFT JOIN ` or_statiordine ` ON ` or_statiordine ` . ` id ` = ` or_ordini ` . ` idstatoordine `
LEFT JOIN (
SELECT GROUP_CONCAT ( DISTINCT co_documenti . numero_esterno SEPARATOR ' , ' ) AS info , co_righe_documenti . original_document_id AS idordine FROM co_documenti INNER JOIN co_righe_documenti ON co_documenti . id = co_righe_documenti . iddocumento WHERE original_document_type = ' Modules\\Ordini\\Ordine ' GROUP BY idordine
) AS fattura ON fattura . idordine = or_ordini . id
LEFT 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 ` = ' Ordini fornitore ' AND ` zz_operations ` . ` op ` = ' send-email '
GROUP BY ` zz_operations ` . ` id_record `
) AS ` email ` ON ` email ` . ` id_record ` = ` or_ordini ` . ` id `
WHERE
1 = 1 AND ` dir ` = ' uscita ' | date_period ( ` or_ordini ` . ` data ` ) |
HAVING
2 = 2
ORDER BY
` data ` DESC ,
CAST ( ` numero_esterno ` AS UNSIGNED ) DESC " WHERE `name` = 'Ordini fornitore';
2022-11-18 13:02:39 +01:00
-- 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';
2022-11-18 13:05:19 +01:00
-- Ottimizzazione query vista ddt entrata
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 acquisto ' 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 acquisto ' 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 ` = ' 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';