CREATE procedure [level2martperiodico].[DM_PatrimonioNonRappresentabileAsset_pre_selective]
AS
truncate table [level2martperiodico].[PatrimonioNonRappresentabileAsset]
insert into [level2martperiodico].[PatrimonioNonRappresentabileAsset]
SELECT 	
			RETE,
			COD_FISCALE,
			--SUM(Controvalore) as Controvalore
			SUM( cast(Controvalore as decimal(15,3))) as Controvalore
	FROM (
			SELECT 	
					PATRBF.RETE,
					PATRBF.COD_FISCALE,
					PATRBF.CTV as Controvalore
			FROM C6MARTPERIODICO.PATRIMONIO_BF PATRBF
			INNER JOIN C6MARTPERIODICO.ANAG_PRODOTTI ANAGP
				ON PATRBF.COD_PRODOTTO = ANAGP.COD_PRODOTTO
			LEFT OUTER JOIN C6MARTPERIODICO.ASSET_PERC ASSETPERC 
				ON PATRBF.COD_PRODOTTO = ASSETPERC.COD_PRODOTTO
				AND ASSETPERC.LIVELLO = 1
			WHERE
				PATRBF.TIPO_PRODOTTO NOT IN ('ASUL','CC')
				AND ASSETPERC.COD_PRODOTTO IS NULL
			UNION ALL
--			SELECT  
--					PATRBF.RETE,
--					PATRBF.COD_FISCALE,
--					ASUL.CTV as Controvalore
--			FROM C6MARTPERIODICO.PATRIMONIO_BF PATRBF
--			INNER JOIN C6MARTPERIODICO.ANAG_PRODOTTI ANAGP
--				ON PATRBF.COD_PRODOTTO = ANAGP.COD_PRODOTTO
--			INNER JOIN C6MARTPERIODICO.DETTAGLIO_ASUL ASUL
--				ON PATRBF.RETE = ASUL.RETE
--					AND PATRBF.COD_FISCALE = ASUL.COD_FISCALE
--					AND PATRBF.ID_CONTRATTO = ASUL.ID_CONTRATTO
--			LEFT OUTER JOIN C6MARTPERIODICO.ASSET_PERC ASSETPERC
--				ON ASSETPERC.COD_PRODOTTO = ASUL.COD_PRODOTTO
--				AND ASSETPERC.LIVELLO = 1
--			WHERE 
--				PATRBF.TIPO_PRODOTTO = 'ASUL'
--				AND ASSETPERC.COD_PRODOTTO IS NULL
--
SELECT		ASUL.RETE,
            ASUL.COD_FISCALe,
			ASUL.CTV*isnull(ASSETPERC.PERC,1) as Controvalore
		FROM 
			C6MartPeriodico.DETTAGLIO_ASUL ASUL
		left JOIN 
			C6MartPeriodico.ASSET_PERC ASSETPERC
			ON 
             (
				ASSETPERC.COD_PRODOTTO = ASUL.COD_PRODOTTO
				---no SKANDIA
				AND ASUL.COD_ISIN_SOTT = ''
				AND ASSETPERC.LIVELLO = 1
              )
           or
			 (  --SKANDIA
			ASSETPERC.COD_ISIN = ASUL.COD_ISIN_SOTT
			AND ASSETPERC.COD_MAF = ASUL.COD_MAF_SOTT
			AND ASSETPERC.COD_INTERNO = ASUL.COD_INTERNO
            AND rtrim(ASSETPERC.COD_SOTTOPRODOTTO) = ASUL.COD_SOTTOPRODOTTO
			AND ASSETPERC.LIVELLO = 1
			 )
		WHERE
		ASSETPERC.COD_PRODOTTO IS NULL
	) PATR_NO_RAPPR
	GROUP BY 
			RETE,
			COD_FISCALE