UPDATE`zz_widgets`SET`query`='SELECT COUNT(dati.id) AS dato FROM(SELECT id, ((SELECT SUM(co_righe_contratti.qta) FROM co_righe_contratti WHERE co_righe_contratti.um=''ore'' AND co_righe_contratti.idcontratto=co_contratti.id) - IFNULL( (SELECT SUM(in_interventi_tecnici.ore) FROM in_interventi_tecnici INNER JOIN in_interventi ON in_interventi_tecnici.idintervento=in_interventi.id WHERE in_interventi.id_contratto=co_contratti.id AND in_interventi.idstatointervento IN (SELECT in_statiintervento.idstatointervento FROM in_statiintervento WHERE in_statiintervento.is_completato = 1)), 0) ) AS ore_rimanenti, DATEDIFF(data_conclusione, NOW()) AS giorni_rimanenti, data_conclusione, ore_preavviso_rinnovo, giorni_preavviso_rinnovo, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=co_contratti.idanagrafica) AS ragione_sociale FROM co_contratti WHERE idstato IN (SELECT id FROM co_staticontratti WHERE is_fatturabile = 1) AND rinnovabile = 1 AND YEAR(data_conclusione) > 1970 AND (SELECT id FROM co_contratti contratti WHERE contratti.idcontratto_prev = co_contratti.id) IS NULL HAVING (ore_rimanenti < ore_preavviso_rinnovo OR DATEDIFF(data_conclusione, NOW()) < ABS(giorni_preavviso_rinnovo)) ORDER BY giorni_rimanenti ASC, ore_rimanenti ASC) dati'WHERE`zz_widgets`.`name`='Contratti in scadenza';
(NULL,(SELECT`id`FROM`zz_modules`WHERE`name`='Interventi'),'Attività','orario_inizio BETWEEN ''|period_start|'' AND ''|period_end|'' OR orario_fine BETWEEN ''|period_start|'' AND ''|period_end|''','WHR','####','',0,0,0,0),
(NULL,(SELECT`id`FROM`zz_modules`WHERE`name`='Interventi'),'Promemoria','((in_interventi_tecnici.orario_inizio=''0000-00-00 00:00:00'' AND in_interventi_tecnici.orario_fine=''0000-00-00 00:00:00'') OR in_interventi_tecnici.id IS NULL)','WHR','####','',0,0,0,0);
INSERTINTO`zz_settings`(`id`,`nome`,`valore`,`tipo`,`editable`,`sezione`,`order`,`help`)VALUES(NULL,'Notifica al tecnico l''assegnazione all''attività','0','boolean','1','Interventi',NULL,'Notifica via email al tecnico le nuove sessioni di lavoro che gli sono state assegnate (l''indirizzo email deve essere specificato nella sua anagrafica)');
INSERTINTO`zz_settings`(`id`,`nome`,`valore`,`tipo`,`editable`,`sezione`,`order`,`help`)VALUES(NULL,'Notifica al tecnico la rimozione dall''attività','0','boolean','1','Interventi',NULL,'Notifica via email al tecnico la rimozione dalle sessioni di lavoro che gli erano state assegnate (l''indirizzo email deve essere specificato nella sua anagrafica)');
-- Impostazione "Totali delle tabelle ristretti alla selezione"
INSERTINTO`zz_settings`(`id`,`nome`,`valore`,`tipo`,`editable`,`sezione`,`order`)VALUES(NULL,'Totali delle tabelle ristretti alla selezione','0','boolean','1','Generali',119);
INSERTINTO`zz_plugins`(`id`,`name`,`title`,`idmodule_from`,`idmodule_to`,`position`,`script`,`enabled`,`default`,`order`,`compatibility`,`version`,`options2`,`options`,`directory`,`help`)VALUES(NULL,'Storico attività','Storico attività',(SELECTidFROMzz_modulesWHEREname='Interventi'),(SELECTidFROMzz_modulesWHEREname='Anagrafiche'),'tab','','1','1','0','2.*','0.1',NULL,'{ "main_query": [ { "type": "table", "fields": "Numero, Data inizio, Data fine, Tipo", "query": "SELECT in_interventi.id, in_interventi.codice AS Numero, DATE_FORMAT(MAX(orario_inizio),''%d/%m/%Y'') AS ''Data inizio'', DATE_FORMAT(MAX(orario_fine),''%d/%m/%Y'') AS ''Data fine'', (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=in_interventi.idtipointervento) AS ''Tipo'', (SELECT `id` FROM `zz_modules` WHERE `name` = ''Interventi'') AS _link_module_, in_interventi.id AS _link_record_ FROM in_interventi LEFT JOIN `in_interventi_tecnici` ON `in_interventi_tecnici`.`idintervento` = `in_interventi`.`id` LEFT JOIN `in_statiintervento` ON `in_interventi`.`idstatointervento`=`in_statiintervento`.`idstatointervento` WHERE 1=1 AND in_interventi.deleted_at IS NULL AND idanagrafica = |id_parent| HAVING 2=2 ORDER BY in_interventi.id DESC"} ]}','','');
-- Fix prezzo_unitario_ivato e sconto_iva_unitario per i documenti