PDC_REPORT_CreazioneDB/sql/storedTestbes/C6MartPeriodico_DM_EMAIL_PB.sql
2025-06-06 19:02:52 +02:00

68 lines
1.9 KiB
Transact-SQL

-- =============================================
-- Author: Paolo Giovanetti
-- Create date: 22 gennaio 2009
-- Description: MOLTO SEMPLIFICATA RISPETTO A QUELLA DELLA FASE UNO: SOLO PB
-- =============================================
CREATE procedure [C6MartPeriodico].[DM_EMAIL_PB]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
--TRUNCATE TABLE C6MARTPERIODICO.EMAIL_PB
DECLARE @ID_ELAB INT
DECLARE @TIPO_ELAB VARCHAR(1)
SET @ID_ELAB = C6MartPeriodico.GETIDELAB()
SET @TIPO_ELAB = C6MartPeriodico.GETTIPOELAB()
-- Log esecuzione
INSERT INTO LOG_ESECUZIONE_PERIODICO
(Nome, Inizio, Nota)
VALUES (
'DM_EMAIL_PB',
GETDATE(),
'Elaborazione trimestrale'
)
SELECT DISTINCT
CONTRATTOSEI.RETE AS RETE,
CONTRATTOSEI.COD_AGENTE AS CODICE,
CASE CONTRATTOSEI.RETE
WHEN 'F' THEN 'R'
when 'W' THEN 'W'
ELSE 'P'
END AS PREFISSO,
CASE CONTRATTOSEI.RETE
WHEN 'F' THEN 'R'
when 'W' THEN 'W'
ELSE 'P'
END + CONTRATTOSEI.COD_AGENTE AS FIRMA
,
@ID_ELAB AS ID_ELAB,
@TIPO_ELAB AS TIPO_ELAB
FROM C6MARTPERIODICO.RP_vContrattiPerGenerazioneReport CONTRATTOSEI
LEFT JOIN C6MARTPERIODICO.EMAIL_PB EMAIL_PB_ESISTENTI
ON EMAIL_PB_ESISTENTI.RETE = CONTRATTOSEI.RETE
AND EMAIL_PB_ESISTENTI.CODICE = CONTRATTOSEI.COD_AGENTE
LEFT JOIN C6MARTPERIODICO.CODICI_PROMOTORI_FITTIZI PF
ON (CONTRATTOSEI.COD_AGENTE BETWEEN PF.CODICEDA AND PF.CODICEA)
AND CONTRATTOSEI.RETE = PF.RETE
WHERE EMAIL_PB_ESISTENTI.EMAIL IS NULL
AND PF.RETE IS NULL
ORDER BY 1,2
-- Log esecuzione
UPDATE
LOG_ESECUZIONE_PERIODICO
SET
Fine = GETDATE(),
Tipo = 'SELECT',
Righe = @@ROWCOUNT
WHERE
Nome = 'DM_EMAIL_PB' AND
Inizio = (
SELECT
MAX(Inizio)
FROM
LOG_ESECUZIONE_PERIODICO
WHERE
Nome = 'DM_EMAIL_PB'
)
END