-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
CREATE procedure [C6MartPeriodico].[DM_ANAG_CC_TERZI_pre_selective]
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_ANAG_CC_TERZI_pre_selective',
		GETDATE(),
		'Elaborazione trimestrale'
	)
	TRUNCATE TABLE C6MartPeriodico.ANAG_CC_TERZI
	INSERT INTO [C6MartPeriodico].[ANAG_CC_TERZI]
           ([RETE]
           ,[COD_FISCALE]
           ,[INTERMEDIARIO]
           ,[COINTEST]
           ,[COD_CC]
           ,[FASCIA_CPP]
           ,[SALDO]
           ,[DATA_APERTURA]
           ,[DATA_CHIUSURA]
           ,[ID_ELAB])
	SELECT 
		ALL_PATR_TERZI.RETE_PB AS RETE,
		ALL_PATR_TERZI.CODICE_FISCALE AS COD_FISCALE,
		ALL_PATR_TERZI.NOME_ISTITUTO AS INTERMEDIARIO,
		NULL AS COINTEST,
		ALL_PATR_TERZI.NOMEPRODOTTO AS COD_CC,
		CONTRATTOSEI.FASCIA_CPP AS FASCIA_CPP,
		ALL_PATR_TERZI.PATRIMONIO_TERZI AS SALDO,
		NULL AS DATA_APERTURA,
		NULL AS DATA_CHIUSURA,
		@ID_ELAB AS ID_ELAB
	FROM 
		C6StagingPeriodico.ALL_PATR_TERZI 
	LEFT JOIN 
		C6Mart.CONTRATTOSEI 
		ON 
			CONTRATTOSEI.COD_FISCALE = ALL_PATR_TERZI.CODICE_FISCALE
			AND CONTRATTOSEI.RETE = ALL_PATR_TERZI.RETE_PB
	WHERE 
		ALL_PATR_TERZI.CHIAVE_THR = ALL_PATR_TERZI.CHIAVE_FNC
		AND DESCRIZIONE_PRODOTTO LIKE '%CURRENTACCOUNT%'
		AND DESCRIZIONE_ALBERATURA LIKE '%CONTICORRENTI%' 
	-- Log esecuzione
	UPDATE
		LOG_ESECUZIONE
	SET
		Fine = GETDATE(),
		Tipo = 'INSERT',
		Righe = @@ROWCOUNT
	WHERE
		Nome = 'DM_ANAG_CC_TERZI_pre_selective' AND
		Inizio = (
			SELECT
				MAX(Inizio)
			FROM
				LOG_ESECUZIONE
			WHERE
				Nome = 'DM_ANAG_CC_TERZI_pre_selective'
		)
END