-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- Aggiunta GESTIONE EligoTitoli L192 (FCianfa, 01/12/2014)
-- =============================================
CREATE procedure [C6Mart].[RP_DM_PATRIMONIO_BF_20180201]
	-- Add the parameters for the stored procedure here
	--select * from c6mart.patrimonio_bf
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
SET NOCOUNT ON;
--delete TEMPORANEA per superare un problema del WS che restituisce una riga doppia
--delete from c6staging.spb_contr_sintesi
--where codicefiscale = 'MNTMRC82C08I608Y'
--and CODICEMAF = '1362945'
--and ISIN = 'IE00B42Z5J44'
--delete from c6staging.spb_contr_sintesi
--where codicefiscale = 'FZAMRA55C50H501E'
--and CODICEMAF = '1362945'
--and ISIN = 'IE00B42Z5J44'
	DECLARE @ID_ELAB INT
	DECLARE @TIPO_ELAB VARCHAR(1)
	SET @ID_ELAB = C6MART.GETIDELAB()
	SET @TIPO_ELAB = C6MART.GETTIPOELAB()
	-- Log esecuzione
	INSERT INTO LOG_ESECUZIONE
		(Nome, Inizio, Nota)
	VALUES (
		'RP_DM_PATRIMONIO_BF_1',
		GETDATE(),
		'Elaborazione giornaliera'
	)
	--TRUNCATE TABLE C6MART.PATRIMONIO_BF
	DELETE FROM C6MART.PATRIMONIO_BF
	TRUNCATE TABLE C6Staging.RP_Consulenza
--Ricerco dati da Pianificazione
 SELECT
	contr.chiaveClientePB --V usata per il join con la contratto_sei metadati per fare il filtro nella consulenza
	,contr.rete
	,contr.cod_fiscale
	,pirmod.nomeProgetto
	--,pian.chiaveClientePB --V usata per il join con la contratto_sei metadati per fare il filtro nella consulenza
	,pro.chiaveProgetto
	,pro.area
	,pro.tipoProgetto
	,catprod.azob as StrType
	,catprod.Complessita
	,emit.Descrizione AS DescrizioneEmittente
	,PosPor.conto
	,PosPor.rubricato
	,PosPor.codConf
	,PosPor.numPolizza
	,PosPor.custGar
	,catprod.TipoProdotto
	,catprod.CodSottoprodotto
	,catprod.CodInterno
	,catprod.CodMaf
	,catprod.CodIsin
	,'' as position_id
    ,termId 
	,anno 
	,prog 
INTO #TempPianif
FROM
		C6Staging.RP_Pianificazione AS pian
	INNER JOIN C6Staging.RP_Progetto AS pro
		ON pian.chiaveConsulenza = pro.chiaveConsulenza
	INNER JOIN C6Staging.RP_ProgettiPiramideModello pirmod
		ON pro.chiaveprogettoMod=pirmod.chiaveprogettomod
	INNER JOIN C6Staging.RP_PosizioniPortafoglio AS pospor
		ON pro.chiaveProgetto = pospor.chiaveProgetto
	INNER JOIN C6Staging.RP_DettaglioPosizionePortafoglio AS dettposport
		ON pospor.chiavePosizionePtf = dettposport.chiavePosizionePtf
	INNER JOIN C6Staging.RP_CatalogoProdotti AS catprod
		ON pospor.chiaveProdotto = catprod.ChiaveProdotto
	LEFT JOIN C6Staging.RP_AnEmittente emit
         ON catprod.emittente=emit.emittente
    INNER JOIN C6Mart.VCONTRATTI contr
		ON pian.chiaveClientePB = contr.chiaveClientePB
	JOIN C6mart.contrattosei_metadati meta
		ON contr.chiaveClientePB = meta.chiaveClientePB 
	WHERE		 
	pospor.dtFineValidita > getdate()
	AND pro.dtfinevalidita='9999-12-31 00:00:00.000'
	AND pirmod.dtfinevalidita='9999-12-31 00:00:00.000'
	AND INVIOBENVENUTO = 'N'
INSERT INTO C6Staging.RP_Consulenza  
	SELECT * 
	FROM #TempPianif 
--UNION ALL	
----ricerco dati da Migrazione
--SELECT
--	contr.chiaveClientePB --V usata per il join con la contratto_sei metadati per fare il filtro nella consulenza
--	,contr.rete
--	,contr.cod_fiscale
--	,pirmod.nomeProgetto
--	--,mig.chiaveClientePB --V usata per il join con la contratto_sei metadati per fare il filtro nella consulenza
--	,promig.chiaveProgetto
--	,promig.area
--	,promig.tipoProgetto
--	,catprod.azob as StrType
--	,catprod.Complessita
--	,emit.Descrizione AS DescrizioneEmittente
--	,MigPos.conto
--	,MigPos.rubricato
--	,MigPos.codConf
--	,MigPos.numPolizza
--	,MigPos.custGar
--	,catprod.TipoProdotto
--	,catprod.CodSottoprodotto
--	,catprod.CodInterno
--	,catprod.CodMaf
--	,catprod.CodIsin
--	,'' as position_id
--	,migpos.termId 
--	,migpos.anno 
--	,migpos.prog 
--FROM
--	C6Staging.RP_Migraz_Pianificazione AS mig
--	INNER JOIN C6Staging.RP_Migraz_Progetto AS promig
--		ON mig.chiaveconsulenza = promig.chiaveconsulenza
--	INNER JOIN C6Staging.RP_ProgettiPiramideModello pirmod
--		ON promig.chiaveprogettoMod=pirmod.chiaveprogettomod
--	INNER JOIN C6Staging.RP_Migraz_Posizioni AS migpos
--		ON promig.chiaveprogetto = migpos.chiaveprogetto
--	INNER JOIN C6Staging.RP_CatalogoProdotti AS catprod
--		ON migpos.chiaveProdotto = catprod.ChiaveProdotto
--	LEFT JOIN C6Staging.RP_AnEmittente emit
--		ON catprod.emittente=emit.emittente
--	INNER JOIN C6Mart.VCONTRATTI contr
--		ON mig.chiaveClientePB = contr.chiaveClientePB
--	INNER JOIN C6Mart.CONTRATTOSEI_METADATI c6meta
--		ON c6meta.chiaveClientePB = contr.chiaveClientePB
--	LEFT JOIN #TempPianif tp
--		ON mig.chiaveClientePB = tp.chiaveClientePB
--	WHERE
--	 pirmod.dtfinevalidita='9999-12-31 00:00:00.000'
--	AND tp.chiaveClientePB IS NULL	
--	AND INVIOBENVENUTO = 'N'
--	AND migpos.dtfinevalidita > getDate()
	UPDATE
		LOG_ESECUZIONE
	SET
		Fine = GETDATE(),
		Tipo = 'INSERT',
		Righe = @@ROWCOUNT
	WHERE
		Nome = 'RP_DM_PATRIMONIO_BF_1' AND
		Inizio = (
			SELECT
				MAX(Inizio)
			FROM
				LOG_ESECUZIONE
			WHERE
				Nome = 'RP_DM_PATRIMONIO_BF_1'
		)
 --	AGGIORNAMENTO POSITION_ID SU CONSULENZA 
--drop table #TempPianif
 --select * from c6staging.rp_consulenza tempo d'esecuzione su 3622 righe 10min
	EXEC c6staging.RP_CREA_POSITIONID_CONSULENZA  
	INSERT INTO C6MART.TEST_QUALITY
		SELECT distinct RETE,COD_FISCALE,'POSITIONID DI CONSULENZA NON VALIDO' 
				FROM  c6staging.rp_consulenza  WHERE isnull(position_id ,'')=''
--*****************************
	--PROBLEMA CON POSITION ID ASU2 LSEL
	--select * from c6staging.rp_consulenza where position_id is null
INSERT INTO LOG_ESECUZIONE
		(Nome, Inizio, Nota)
	VALUES (
		'RP_DM_PATRIMONIO_BF_2',
		GETDATE(),
		'Elaborazione giornaliera'
	)
 -- *** INCROCIO TRA SPB E CONSULENZA ************************
 SELECT -- PER DIVERSI DA CC ************************
		SPB.RETE AS RETE,
		SPB.CODICEFISCALE AS COD_FISCALE,
		SPB.POSITIONID AS POSITIONID,
		SUBSTRING(SPB.POSITIONID,1,57) AS COD_PRODOTTO, 
		SPB.CODICECONTRATTO AS ID_CONTRATTO,
		CASE 
			WHEN SPB.TIPOPRODOTTO IN ('DT', 'FI') AND SPB.DATAINIZIORENDIMENTO IS NOT NULL THEN SPB.DATAINIZIORENDIMENTO 
			ELSE SPB.DATADISOTTOSCRIZIONE 
		END AS DATA_SOTTOSCRIZIONE,
		SPB.CODICESTATO AS COD_STATO,
		SPB.NUMEROPOLIZZA AS NUM_POLIZZA,
		SPB.CODICEMAF AS COD_MAF,
		SPB.CODICEINTERNO AS COD_INTERNO,
		SPB.CODICESOTTOPRODOTTO AS COD_SOTTOPRODOTTO,
		SPB.TIPOPRODOTTO AS TIPO_PRODOTTO,
		--CASE
		--	WHEN CON.area = 'Inv' AND CON.tipoProgetto = 0 THEN 'Prodotti non associati a progetti'		16/09/2016
		--	ELSE LTRIM(RTRIM(CON.nomeProgetto))
		--END AS NOME_PROGETTO,
		CON.nomeProgetto AS NOME_PROGETTO,  --- COMMENTATO IL CASE WHEN, PRENDO DIRETTAMENTE IL NOME
		CON.area AS ID_AREA,
		SPB.DATADIRIFERIMENTO AS DATA_OPERAZIONE,
		CONVERT(DATETIME, SPB.DATAVALNAVAL, 105) AS DATA_VALUTA, -- 105 PER FORMAT DD/MM/YYYY
		NULL AS DATA_REGOLAMENTO,
		SPB.QUOTE AS QUANTITA,
		SPB.PREZZO AS PREZZO,
		SPB.CTV AS CTV,
		SPB.VALORE AS CTV_NOMINALE,		
		CASE 
			WHEN (SPB.TIPOPRODOTTO = 'GE' 
				OR SPB.TIPOPRODOTTO = 'GES')
				AND SPB.DATADISOTTOSCRIZIONE < cast('2007-01-01' AS DATETIME) 
				THEN NULL 
			WHEN SPB.TIPOPRODOTTO IN ( 'ASVI','ASU1')
				THEN NULL
			WHEN SPB.TIPOPRODOTTO = 'ASUL' AND SPB.CODICEINTERNO NOT IN ('18','19','35','PR','PX')
				THEN NULL
			ELSE SPB.CVN 
		END AS VERSATO_NETTO,
		SPB.PARTVIA AS PARTVIA_DISINV,
		SPB.PARTVIAAL AS DATA_PARTVIA_DISINV,			
		NULL AS PARTVIA_INV,	 
		CASE 
			WHEN (SPB.TIPOPRODOTTO = 'GE' 
				OR SPB.TIPOPRODOTTO = 'GES')
				AND SPB.DATADISOTTOSCRIZIONE < cast('2007-01-01' AS DATETIME) 
				THEN NULL 
			WHEN SPB.TIPOPRODOTTO IN ( 'ASVI','ASU1')
				THEN NULL
			WHEN SPB.TIPOPRODOTTO = 'ASUL' AND SPB.CODICEINTERNO NOT IN ('18','19','35','PR','PX')
				THEN NULL
			ELSE SPB.RENDIMENTODASOTTOSCRIZIONE
		END AS REND_SOTTOSCRIZIONE,
		CASE 
			WHEN (SPB.TIPOPRODOTTO = 'GE' 
				OR SPB.TIPOPRODOTTO = 'GES')
				AND SPB.DATADISOTTOSCRIZIONE < cast('2007-01-01' AS DATETIME) 
				THEN NULL 
			WHEN SPB.TIPOPRODOTTO IN ( 'ASVI','ASU1')
				THEN NULL
			WHEN SPB.TIPOPRODOTTO = 'ASUL' AND SPB.CODICEINTERNO NOT IN ('18','19','35','PR','PX')
				THEN NULL
			ELSE SPB.RENDIMENTODAINIZIOTRIMESTRE
		END AS REND_TRIMESTRE,	
		CASE 
			WHEN (SPB.TIPOPRODOTTO = 'GE' 
				OR SPB.TIPOPRODOTTO = 'GES')
				AND SPB.DATADISOTTOSCRIZIONE < cast('2007-01-01' AS DATETIME) 
				THEN NULL 
			WHEN SPB.TIPOPRODOTTO IN ( 'ASVI','ASU1')
				THEN NULL
			WHEN SPB.TIPOPRODOTTO = 'ASUL' AND SPB.CODICEINTERNO NOT IN ('18','19','35','PR','PX')
				THEN NULL
			ELSE SPB.RENDIMENTODAINIZIOANNO
		END AS REND_ANNO,
		CON.StrType,
        CON.Complessita AS COMPLEX,
        CON.DescrizioneEmittente AS EMITTENTE,
		SPB.ISIN,
		@ID_ELAB AS ID_ELAB,  
		@TIPO_ELAB AS TIPO_ELAB,   
		CON.chiaveClientePB
		--,CON.lineaself
	INTO #PATRIMONIO
	FROM C6STAGING.SPB_CONTR_SINTESI SPB
	INNER JOIN C6Staging.RP_Consulenza CON
		ON CON.rete = SPB.RETE
		AND CON.cod_fiscale = SPB.CODICEFISCALE
		AND CON.Position_id = SPB.positionid	 
    WHERE SPB.POSITIONID IS NOT NULL
          and CON.area <> 'CC' and SPB.TIPOPRODOTTO <> 'CC'
--***INIZIO INTERVENTI OMNIA*** 
	      and SPB.Isin <> 'EURO00000009'
	      and SPB.Isin <> 'EURO10000007'
		  and CON.area <> 'SELF'
--***FINE INTERVENTI OMNIA*** 
    UNION ALL
    SELECT -- *** PER UGUALI DA CC ************************      
		SPB.RETE AS RETE,
		SPB.CODICEFISCALE AS COD_FISCALE,
		SPB.POSITIONID AS POSITIONID,
		SUBSTRING(SPB.POSITIONID,1,57) AS COD_PRODOTTO, 
		SPB.CODICECONTRATTO AS ID_CONTRATTO,
		CASE 
			WHEN SPB.TIPOPRODOTTO = 'DT' /* OR SPB.TIPOPRODOTTO = 'FI' */ THEN SPB.DATAINIZIORENDIMENTO 
			ELSE SPB.DATADISOTTOSCRIZIONE 
		END AS DATA_SOTTOSCRIZIONE,
		SPB.CODICESTATO AS COD_STATO,
		SPB.NUMEROPOLIZZA AS NUM_POLIZZA,
		SPB.CODICEMAF AS COD_MAF,
		SPB.CODICEINTERNO AS COD_INTERNO,
		SPB.CODICESOTTOPRODOTTO AS COD_SOTTOPRODOTTO,
		SPB.TIPOPRODOTTO AS TIPO_PRODOTTO,
		CON.NOMEPROGETTO AS NOME_PROGETTO,
--***INIZIO INTERVENTI OMNIA***
		--CASE WHEN SPB.CTV>0 THEN 'Liq' ELSE 'Cc' END AS ID_AREA, --PRCONSUL.NEEDAREAID AS ID_AREA,--POSITION.C_NEEDAREASE_3D485 AS ID_AREA,
		CASE WHEN SPB.CTV>=0 						    THEN 'Liq' 
		WHEN SPB.CTV<0 and SPB.TIPOPRODOTTO = 'CC' 	    THEN 'Cc'
		WHEN SPB.CTV<0 and SPB.Isin 	     in('EURO00000009', 'EURO10000007') THEN 'Self'
		ELSE null 
		END AS ID_AREA,
--***FINE INTERVENTI OMNIA***
		SPB.DATADIRIFERIMENTO AS DATA_OPERAZIONE,
		CONVERT(DATETIME, SPB.DATAVALNAVAL, 105) AS DATA_VALUTA, -- 105 PER FORMAT DD/MM/YYYY
		NULL AS DATA_REGOLAMENTO,
		SPB.QUOTE AS QUANTITA,
		SPB.PREZZO AS PREZZO,
		SPB.CTV AS CTV,
		SPB.VALORE AS CTV_NOMINALE,
		SPB.CVN AS VERSATO_NETTO,
		SPB.PARTVIA AS PARTVIA_DISINV,
		SPB.PARTVIAAL AS DATA_PARTVIA_DISINV,
		NULL AS PARTVIA_INV,  
		SPB.RENDIMENTODASOTTOSCRIZIONE AS REND_SOTTOSCRIZIONE,
		SPB.RENDIMENTODAINIZIOTRIMESTRE AS REND_TRIMESTRE,
		SPB.RENDIMENTODAINIZIOANNO AS REND_ANNO,
        CON.StrType,
        CON.Complessita AS COMPLEX,
        CON.DescrizioneEmittente as EMITTENTE,
		SPB.ISIN,
		@ID_ELAB AS ID_ELAB,  
		@TIPO_ELAB AS TIPO_ELAB,  
		CON.chiaveClientePB
		--,CON.lineaself
	FROM C6STAGING.SPB_CONTR_SINTESI SPB
	INNER JOIN C6Staging.RP_Consulenza CON
		ON CON.rete = SPB.RETE
		AND CON.cod_fiscale = SPB.CODICEFISCALE
		AND CON.Position_id = SPB.positionid		 
    INNER JOIN C6STAGING.RP_CATALOGOPRODOTTI KAT
		ON SUBSTRING(SPB.POSITIONID,1,57)=KAT.CATALOGUEID
    LEFT OUTER JOIN C6STAGING.RP_AnEmittente MIT
        ON  MIT.Emittente =KAT.EMITTENTE
	WHERE SPB.TIPOPRODOTTO = 'CC'
--***INIZIO INTERVENTI OMNIA*** 
       OR SPB.Isin		   in('EURO00000009', 'EURO10000007')
--***FINE INTERVENTI OMNIA***
	/*
	truncate table c6mart.patrimonio_bf
	select top 1 * from #patrimonio
 */
SELECT [RETE]
      ,[COD_FISCALE]
      ,[POSITIONID]
      ,[COD_PRODOTTO]
      ,[ID_CONTRATTO]
      ,[DATA_SOTTOSCRIZIONE]
      ,[COD_STATO]
      ,[NUM_POLIZZA]
      ,[COD_MAF]
      ,[COD_INTERNO]
      ,[COD_SOTTOPRODOTTO]
      ,[TIPO_PRODOTTO]
      ,[NOME_PROGETTO]
      ,[ID_AREA]
      ,[DATA_OPERAZIONE]
      ,[DATA_VALUTA]
      ,[DATA_REGOLAMENTO]
      ,[QUANTITA]
      ,[PREZZO]
      ,[CTV]
      ,[CTV_NOMINALE]
      ,[VERSATO_NETTO]
      ,[PARTVIA_DISINV]
      ,[DATA_PARTVIA_DISINV]
      ,[PARTVIA_INV]
      ,[REND_SOTTOSCRIZIONE]
      ,[REND_TRIMESTRE]
      ,[REND_ANNO]
      ,[ID_ELAB]
      ,[TIPO_ELAB]
      ,[STRTYPE]
      ,[COMPLEX]
      ,[EMITTENTE]
      ,[ISIN]
      ,[ChiaveClientePb]
  INTO #PATRIMONIO2
  FROM #PATRIMONIO
	UNION ALL 
	SELECT 
		SPB.RETE AS RETE,
		SPB.CODICEFISCALE AS COD_FISCALE,
		SPB.POSITIONID AS POSITIONID,
		SUBSTRING(SPB.POSITIONID,1,57) AS COD_PRODOTTO, 
		SPB.CODICECONTRATTO AS ID_CONTRATTO,
		CASE 
			WHEN SPB.TIPOPRODOTTO IN ('DT', 'FI') AND SPB.DATAINIZIORENDIMENTO IS NOT NULL THEN SPB.DATAINIZIORENDIMENTO 
			ELSE SPB.DATADISOTTOSCRIZIONE 
		END AS DATA_SOTTOSCRIZIONE,
		SPB.CODICESTATO AS COD_STATO,
		SPB.NUMEROPOLIZZA AS NUM_POLIZZA,
		SPB.CODICEMAF AS COD_MAF,
		SPB.CODICEINTERNO AS COD_INTERNO,
		SPB.CODICESOTTOPRODOTTO AS COD_SOTTOPRODOTTO,
		SPB.TIPOPRODOTTO AS TIPO_PRODOTTO,
		--LTRIM(RTRIM(NEWPOSITION.NOMEPROGETTOPROP)) AS NOME_PROGETTO,
		null AS NOME_PROGETTO,
		--ISNULL(NEWPOSITION.AREAPROP,'Na') AS ID_AREA,
		'Na' AS ID_AREA,
		SPB.DATADIRIFERIMENTO AS DATA_OPERAZIONE,
		CONVERT(DATETIME, SPB.DATAVALNAVAL, 105) AS DATA_VALUTA, -- 105 PER FORMAT DD/MM/YYYY
		NULL AS DATA_REGOLAMENTO,
		convert(decimal(15,3),SPB.QUOTE) AS QUANTITA,
		SPB.PREZZO AS PREZZO,
		convert(decimal(15,3),SPB.CTV) AS CTV,
		convert(decimal(15,3),SPB.VALORE) AS CTV_NOMINALE,
		CASE 
			WHEN (SPB.TIPOPRODOTTO = 'GE' 
				OR SPB.TIPOPRODOTTO = 'GES')
				AND SPB.DATADISOTTOSCRIZIONE < cast('2007-01-01' AS DATETIME) 
			THEN NULL 
			ELSE convert(decimal(15,3),SPB.CVN)
		END AS VERSATO_NETTO,
		convert(decimal(15,3),SPB.PARTVIA) AS PARTVIA_DISINV,
		SPB.PARTVIAAL AS DATA_PARTVIA_DISINV,
		NULL AS PARTVIA_INV,
		convert(decimal(8,5),SPB.RENDIMENTODASOTTOSCRIZIONE) AS REND_SOTTOSCRIZIONE,
		convert(decimal(8,5),SPB.RENDIMENTODAINIZIOTRIMESTRE) AS REND_TRIMESTRE,
		convert(decimal(8,5),SPB.RENDIMENTODAINIZIOANNO) AS REND_ANNO,
        @ID_ELAB AS ID_ELAB,
		@TIPO_ELAB AS TIPO_ELAB,
        STRTYPE,
        null as COMPLEX,
        null as EMITTENTE,
		SPB.ISIN,
		VCON.CHIAVECLIENTEPB
		FROM C6STAGING.SPB_CONTR_SINTESI SPB 		
		LEFT JOIN #PATRIMONIO PATR   
			ON	SPB.RETE = PATR.RETE
			AND SPB.CODICEFISCALE = PATR.COD_FISCALE
			AND SPB.Positionid = PATR.positionid	
		--LEFT JOIN C6STAGING.RP_vNewPositionProposta NEWPOSITION
		--	ON	SPB.POSITIONID = NEWPOSITION.positionIDProposta
		JOIN C6MART.VCONTRATTI VCON   
			ON SPB.RETE = VCON.RETE
			AND SPB.CODICEFISCALE = VCON.COD_FISCALE
			--AND VCON.chiaveClientePB  = NEWPOSITION.chiaveClientePB			 
	WHERE SPB.POSITIONID IS NOT NULL
		  AND PATR.POSITIONID IS NULL
    SELECT RETE, COD_FISCALE, POSITIONID, GETDATE()  as dtstamp
    INTO #PATRIMONIO_DUPLICATI
    FROM #PATRIMONIO2
    GROUP BY RETE, COD_FISCALE, POSITIONID
    HAVING COUNT(*) > 1
    INSERT INTO C6MART.TEST_QUALITY
    SELECT RETE, COD_FISCALE, 'POSIZIONI DUPLICATE - PATRIMONIO_BF' 
    FROM #PATRIMONIO_DUPLICATI
    GROUP BY RETE, COD_FISCALE
	INSERT INTO C6MART.PATRIMONIO_BF 
	SELECT P.* FROM 
	#PATRIMONIO2 P LEFT JOIN #PATRIMONIO_DUPLICATI T
	ON P.RETE = T.RETE
	AND P.COD_FISCALE = T.COD_FISCALE
	--AND P.POSITIONID = T.POSITIONID
	WHERE T.RETE IS NULL
	UPDATE
		LOG_ESECUZIONE
	SET
		Fine = GETDATE(),
		Tipo = 'INSERT',
		Righe = @@ROWCOUNT
	WHERE
		Nome = 'RP_DM_PATRIMONIO_BF_2' AND
		Inizio = (
			SELECT
				MAX(Inizio)
			FROM
				LOG_ESECUZIONE
			WHERE
				Nome = 'RP_DM_PATRIMONIO_BF_2'
		)
--
DROP TABLE #TempPianif
--
DROP table #patrimonio
DROP table #PATRIMONIO2
drop table #PATRIMONIO_DUPLICATI
END