145 lines
3.7 KiB
SQL
145 lines
3.7 KiB
SQL
-- Schema: C6MartPeriodico
|
|
-- Stored Procedure: RP_AggiornaFlagContratto
|
|
|
|
--select * from C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [C6MartPeriodico].[RP_AggiornaFlagContratto]
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
-- SET NOCOUNT ON;
|
|
|
|
-- Log esecuzione
|
|
INSERT INTO LOG_ESECUZIONE
|
|
(Nome, Inizio, Nota)
|
|
VALUES (
|
|
'RP_AggiornaFlagContratto',
|
|
GETDATE(),
|
|
'Elaborazione giornaliera'
|
|
)
|
|
/*
|
|
select top 1 *
|
|
from C6MartPeriodico.CONTRATTOSEI_METADATI where risorseNa is null
|
|
*/
|
|
--AGGIORNAMENTO TABELLA CONTRATTOSEI
|
|
--FLAG RISORSE NON ASSOCIATE
|
|
--SOLO PER I CLIENTI A CUI ANDREBBE INVIATO IL REPORT
|
|
UPDATE C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
SET
|
|
RisorseNA =
|
|
CASE
|
|
WHEN CLIENTIRISNA.percRisorseNA >= CAST(dbo.GETPARAMETRO('PercMaxRisorseNA') AS DECIMAL(5,2)) THEN 'S'
|
|
ELSE 'N'
|
|
END
|
|
--AGGIUNTA perchè mancava, FABRIZIO E VALERIO per Azzeramento numero solleciti email
|
|
,NumSolleciti =
|
|
CASE
|
|
WHEN (C6.ClienteMigrato = 'S') and (CLIENTIRISNA.percRisorseNA < CAST(dbo.GETPARAMETRO('PercMaxRisorseNA') AS DECIMAL(5,2))) THEN 0
|
|
ELSE NumSolleciti
|
|
END
|
|
FROM C6MartPeriodico.CONTRATTOSEI_METADATI C6
|
|
JOIN
|
|
C6MartPeriodico.VCONTRATTI VCONTR
|
|
|
|
ON
|
|
C6.CHIAVECLIENTEPB = VCONTR.CHIAVECLIENTEPB
|
|
LEFT JOIN (
|
|
|
|
SELECT
|
|
NA.RETE,
|
|
NA.COD_FISCALE,
|
|
CASE
|
|
WHEN TOT.CTVTOTALE = 0 THEN 0
|
|
ELSE 100 * NA.CTVNA / TOT.CTVTOTALE
|
|
END AS percRisorseNA
|
|
FROM (
|
|
SELECT
|
|
ISNULL(SUM(PATRBF.CTV),0) AS CTVNA,
|
|
PATRBF.RETE, PATRBF.COD_FISCALE
|
|
|
|
FROM C6MartPeriodico.PATRIMONIO_BF PATRBF
|
|
--INNER JOIN C6MartPeriodico.RP_vTuttiIContratti VCONTRATTIPERSEI
|
|
-- ON PATRBF.RETE = VCONTRATTIPERSEI.RETE
|
|
-- AND PATRBF.COD_FISCALE = VCONTRATTIPERSEI.COD_FISCALE
|
|
WHERE ID_AREA = 'Na'
|
|
GROUP BY
|
|
|
|
PATRBF.RETE, PATRBF.COD_FISCALE
|
|
) NA
|
|
INNER JOIN (
|
|
SELECT
|
|
SUM(PATRBF.CTV) AS CTVTOTALE,
|
|
PATRBF.RETE, PATRBF.COD_FISCALE
|
|
FROM C6MartPeriodico.PATRIMONIO_BF PATRBF
|
|
|
|
WHERE ID_AREA <> 'Cc'
|
|
GROUP BY
|
|
PATRBF.RETE, PATRBF.COD_FISCALE
|
|
) TOT
|
|
ON TOT.RETE = NA.RETE AND TOT.COD_FISCALE = NA.COD_FISCALE
|
|
|
|
|
|
) CLIENTIRISNA
|
|
|
|
ON VCONTR.RETE = CLIENTIRISNA.RETE
|
|
AND VCONTR.COD_FISCALE = CLIENTIRISNA.COD_FISCALE
|
|
|
|
WHERE C6.InvioBenvenuto = 'N'
|
|
|
|
--V Aggiorna il flag Profilo Attivo per i clienti che non hanno ricevuto il report
|
|
UPDATE C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
SET profiloAttivo = CASE WHEN (ISNULL(MIFID.SCADUTO,1) = 1) THEN 0 ELSE 1 end
|
|
FROM C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
JOIN C6MartPeriodico.VCONTRATTI
|
|
ON VCONTRATTI.CHIAVECLIENTEPB = CONTRATTOSEI_METADATI.CHIAVECLIENTEPB
|
|
LEFT JOIN C6MartPeriodico.MIFID
|
|
--ON CONTRATTOSEI_METADATI.chiaveClientePB = MIFID.chiaveClientePB
|
|
ON MIFID.RETE = VCONTRATTI.RETE
|
|
AND MIFID.COD_FISCALE = VCONTRATTI.COD_FISCALE
|
|
WHERE InvioBenvenuto = 'N'
|
|
|
|
--select * from C6MartPeriodico.VCONTRATTI
|
|
|
|
--V Aggiorna i dati di migrazione
|
|
UPDATE C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
SET clienteMigrato =
|
|
case when (C6Staging.RP_Migraz_Pianificazione.chiaveClientePB is null) then 'N'
|
|
else 'S'
|
|
END
|
|
FROM C6MartPeriodico.CONTRATTOSEI_METADATI
|
|
LEFT JOIN C6Staging.RP_Migraz_Pianificazione
|
|
ON CONTRATTOSEI_METADATI.chiaveClientePB = C6Staging.RP_Migraz_Pianificazione.chiaveClientePb
|
|
|
|
|
|
WHERE InvioBenvenuto = 'N'
|
|
|
|
|
|
-- Log esecuzione
|
|
UPDATE
|
|
LOG_ESECUZIONE
|
|
SET
|
|
Fine = GETDATE(),
|
|
Tipo = 'UPDATE',
|
|
Righe = @@ROWCOUNT
|
|
WHERE
|
|
Nome = 'RP_AggiornaFlagContratto' AND
|
|
Inizio = (
|
|
SELECT
|
|
MAX(Inizio)
|
|
FROM
|
|
LOG_ESECUZIONE
|
|
WHERE
|
|
Nome = 'RP_AggiornaFlagContratto'
|
|
)
|
|
|
|
|
|
END
|
|
|
|
|