-- Schema: C6MartPeriodico -- Stored Procedure: DM_MONITORAGGIO_REPORT -- ============================================= -- Author: Alessandro Tringali -- Create date: 19 Dicembre 2009 -- Description: -- ============================================= CREATE procedure [C6MartPeriodico].[DM_MONITORAGGIO_REPORT] AS BEGIN SET NOCOUNT ON; DECLARE @ID_ELAB INT SET @ID_ELAB = [C6MartPeriodico].GETIDELAB() -- Log esecuzione INSERT INTO LOG_ESECUZIONE (Nome, Inizio, Nota) VALUES ( 'DM_MONITORAGGIO_REPORT', GETDATE(), 'Elaborazione trimestrale' ) TRUNCATE TABLE [C6MartPeriodico].[MONITORAGGIO_REPORT] INSERT INTO [C6MartPeriodico].[MONITORAGGIO_REPORT] ([RETE] ,[COD_FISCALE] ,[DATA_INVIO] ,[CTV_TOTALE] ,[CTV_EXT] ,[CTV_INV] ,[CTV_RIS] ,[CTV_PRE] ,[CTV_LIQ] ,[CTV_CC] ,[CTV_NA] ,[PARTITA_VIAGGIANTE] ,[VAR_COMPLESSIVO] ,[VAR_COPERTURA] ,[PROFILO] ,[VAR_MAX_PROFILO] , riskclass , riskclassmax ,[ID_ELAB]) SELECT RETE, COD_FISCALE, DATA_FASE AS DATA_INVIO, SUM(CONTROVALORE) as CTV_TOTALE, SUM(CASE WHEN AREA= 'EXT' THEN CONTROVALORE ELSE 0 END ) AS CTV_EXT, SUM(CASE WHEN AREA= 'INV' THEN CONTROVALORE ELSE 0 END ) AS CTV_INV, SUM(CASE WHEN AREA= 'RIS' THEN CONTROVALORE ELSE 0 END )AS CTV_RIS, SUM(CASE WHEN AREA= 'PRE' THEN CONTROVALORE ELSE 0 END )AS CTV_PRE, SUM(CASE WHEN AREA= 'LIQ' THEN CONTROVALORE ELSE 0 END ) AS CTV_LIQ, Max(CONTOCORRENTE )AS CTV_CC, Max(RISORSENONALLOCATE) AS CTV_NA, MAX(INVESTIMENTIINCORSO) AS PARTITA_VIAGGIANTE, MAX(VAR_PERC_PTF) AS VAR_COMPLESSIVO, MAX(COPERTURA) as VAR_COPERTURA, mAX(PROFILO) AS PROFILO, MAX(MAX_VAR) AS VAR_MAX_PROFILO, MAX(RISKCLASS) AS RISKCLASS, MAX(RISKCLASSMAX) AS RISKCLASSMAX, @ID_ELAB AS ID_ELAB FROM C6STAGINGPERIODICO.S80_EVOL_STAMPA_C6 GROUP BY RETE, COD_FISCALE, DATA_FASE -- Log esecuzione UPDATE LOG_ESECUZIONE SET Fine = GETDATE(), Tipo = 'INSERT', Righe = @@ROWCOUNT WHERE Nome = 'DM_MONITORAGGIO_REPORT' AND Inizio = ( SELECT MAX(Inizio) FROM LOG_ESECUZIONE WHERE Nome = 'DM_MONITORAGGIO_REPORT' ) END