PDC_REPORT_CreazioneDB/sql/Collaudo/procedure/C6Mart_RP_DM_GestioneEmailSessione.sql
2025-06-10 15:29:00 +02:00

63 lines
2.5 KiB
Transact-SQL

-- =============================================
-- Author: <Luca,,Name>
-- Create date: <17/11/2008,,>
-- Description: <Popola la tabella email con i clienti a cui deve essere inviato il report con risorse non associate,,>
-- =============================================
CREATE PROCEDURE [C6Mart].[RP_DM_GestioneEmailSessione]
AS
BEGIN
DECLARE @NUMGIORNIDALPERF SMALLINT
DECLARE @NUMGIORNIDASOLLECITO SMALLINT
DECLARE @MaxInvioSoll SMALLINT
DECLARE @ID_ELAB INT
SET @NUMGIORNIDALPERF = CAST(dbo.getParametro('NUMGIORNIDALPERF') as smallint) - 1 --7
SET @NUMGIORNIDASOLLECITO = CAST(dbo.getParametro('NUMGIORNIDASOLLECITO') AS SMALLINT) - 1 --7
SET @MaxInvioSoll = CAST(dbo.getParametro('MaxInvioSoll') AS SMALLINT)--12
SET @ID_ELAB = C6MART.GETIDELAB()
INSERT INTO LOG_ESECUZIONE(Nome, Inizio, Nota)
VALUES ('RP_DM_GestioneEmailSessione',GETDATE(),'Elaborazione giornaliera')
--select * from [CONSEVO].ConsulenzaEvolutaFL.dbo.CaricamentoMassivoC6SC
--where DataGenerazione < convert(datetime,convert (varchar, getdate(), 112))
update [CONSEVO].ConsulenzaEvolutaFL.dbo.CaricamentoMassivoC6SC set chiuso = 'S'
where DataGenerazione < convert(datetime,convert (varchar, getdate(), 112))
SELECT *
INTO #CaricamentoMassivoC6SC
FROM [CONSEVO].ConsulenzaEvolutaFL.dbo.CaricamentoMassivoC6SC WHERE CHIUSO = 'N'
INSERT INTO [CONSEVO].ConsulenzaEvolutaFL.dbo.CaricamentoMassivoC6SC
SELECT DISTINCT VC.chiaveclientepb,GETDATE(),-2,'N'
FROM C6Mart.vcontrattisei VC
LEFT JOIN C6MART.CODICI_PROMOTORI_FITTIZI PF
ON VC.COD_AGENTE BETWEEN PF.CODICEDA AND PF.CODICEA
AND VC.RETE = PF.RETE
LEFT JOIN #CaricamentoMassivoC6SC RSES
ON RSES.chiaveclientepb = VC.chiaveclientepb
WHERE 1 = 1
AND VC.numSolleciti < @MaxInvioSoll
AND ((ISNULL(VC.numSolleciti,0) = 0 AND DATEDIFF(DAY,VC.Data_Perf,GETDATE()) >= @NUMGIORNIDALPERF)
OR
(DATEDIFF(DAY,isnull(VC.Data_UltimoSollecito,GETDATE()),GETDATE()) >= @NUMGIORNIDASOLLECITO))
AND VC.InvioBenvenuto = 'N'
--AND (VC.clienteMigrato = 'N' OR VC.risorseNA = 'S' OR VC.PROFILOATTIVO = 0)
AND VC.clienteMigrato = 'S'
AND VC.risorseNA = 'S'
AND VC.Data_FineAvanzato > getDate()
AND PF.RETE IS NULL
AND RSES.chiaveclientepb IS NULL
-- Log esecuzione
UPDATE
LOG_ESECUZIONE
SET
Fine = GETDATE(),
Tipo = 'UPDATE',
Righe = @@ROWCOUNT
WHERE
Nome = 'RP_DM_GestioneEmailSessione' AND
Inizio = (
SELECT
MAX(Inizio)
FROM
LOG_ESECUZIONE
WHERE
Nome = 'RP_DM_GestioneEmailSessione'
)
END