-- Schema: C6Mart -- Stored Procedure: RP_DM_CheckEmail CREATE procedure [C6Mart].[RP_DM_CheckEmail] AS BEGIN DECLARE @NUMGIORNIDALPERF SMALLINT DECLARE @NUMGIORNIDASOLLECITO SMALLINT DECLARE @ID_ELAB INT DECLARE @MaxInvioSoll as SMALLINT SET @MaxInvioSoll = CAST(dbo.getParametro('MaxInvioSoll') as smallint) SET @ID_ELAB = C6MART.GETIDELAB() SET @NUMGIORNIDALPERF = CAST(dbo.getParametro('NUMGIORNIDALPERF') as smallint) --7 SET @NUMGIORNIDASOLLECITO = CAST(dbo.getParametro('NUMGIORNIDASOLLECITO') as smallint) --7 -- Log esecuzione INSERT INTO LOG_ESECUZIONE(Nome, Inizio, Nota) VALUES ('RP_DM_CheckEmail',GETDATE(),'Elaborazione giornaliera') SELECT E.Email_Id,E.Tipo,E.Data_Generazione,E.Inviata,E.Data_Invio,E.Data_Comunicazione_Host,E.ID_ELAB,C.* INTO #EMAILCK FROM C6MART.GESTIONE_EMAIL E INNER JOIN C6MART.VCONTRATTISEI C ON E.COD_FISCALE=C.COD_FISCALE AND E.RETE=C.RETE WHERE ISNULL(E.Inviata,'N') <> 'S' DELETE c6mart.test_logmd WHERE CMD = 'GENERATO GIORNO PRECEDENTE' INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'GENERATO GIORNO PRECEDENTE',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione < convert(varchar, GetDate(), 101) INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'EMAIL NOMIG NON CONGRUENTE',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione >= convert(varchar, GetDate(), 101) AND SUBSTRING(TIPO,2,11) = '_SOLL_NOMIG' AND CLIENTEMIGRATO = 'S' INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'EMAIL NOASS NON CONGRUENTE',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione >= convert(varchar, GetDate(), 101) AND SUBSTRING(TIPO,2,11) = '_SOLL_NOASS' AND RISORSENA = 'N' INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'EMAIL NOPRO NON CONGRUENTE',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione >= convert(varchar, GetDate(), 101) AND SUBSTRING(TIPO,2,11) = '_SOLL_NOPRO' AND PROFILOATTIVO = 1 INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'SUPERATO PERIODO DI PERF',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione >= convert(varchar, GetDate(), 101) AND SUBSTRING(TIPO,2,11) IN ('_SOLL_NOMIG','_SOLL_NOASS','_SOLL_NOPRO') AND DATEDIFF(d,DATA_PERF, GETDATE()) > (CAST(dbo.getParametro('MaxInvioSoll') as smallint)-1) * CAST(dbo.getParametro('NUMGIORNIDASOLLECITO') as smallint)+ CAST(dbo.getParametro('NUMGIORNIDALPERF') as smallint) INSERT INTO c6mart.test_logmd (CMD,dtinsert,COD_FISCALE,RETE,NOTE) SELECT 'BLOCCATO CF 01484040488',GETDATE(),COD_FISCALE,RETE,'EMAIL_ID '+CONVERT(VARCHAR,EMAIL_ID) FROM #EMAILCK WHERE Data_Generazione >= convert(varchar, GetDate(), 101) AND COD_FISCALE = '01484040488' -- Log esecuzione UPDATE LOG_ESECUZIONE SET Fine = GETDATE(), Tipo = 'INSERT', Righe = @@ROWCOUNT WHERE Nome = 'RP_DM_CheckEmail' AND Inizio = ( SELECT MAX(Inizio) FROM LOG_ESECUZIONE WHERE Nome = 'RP_DM_CheckEmail' ) END