CREATE VIEW [C6Mart].[vTuttiIPortafogli_old]
AS
SELECT
		PATRIMONIO_BF.RETE						AS Rete,
		PATRIMONIO_BF.COD_FISCALE				AS CodiceFiscale,
		CASE
			WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN 
				'COMPLESSIVO|BF|RISFIN|NA|' + PATRIMONIO_BF.POSITION_ID	
			WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN 
				'COMPLESSIVO|BF|CC|' + PATRIMONIO_BF.POSITION_ID
			ELSE
				'COMPLESSIVO|BF|RISFIN|' + 
				LEFT(PATRIMONIO_BF.ID_AREA,3) + 
				CASE 
					WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO 
					ELSE '' 
				END + '|' + PATRIMONIO_BF.POSITION_ID	
		END										AS Portafoglio,
--		CASE ANAG_PRODOTTI.COD_ISIN --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
--			WHEN '$' THEN ANAG_PRODOTTI.COD_ADEGUATEZZA
--			ELSE ANAG_PRODOTTI.COD_ISIN
--		END										AS CodiceProdotto,
-- MODIFICA LUCA
		CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
			WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
			ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
		END										AS CodiceProdotto,
		''										AS Piazza,
		''										AS CodiceValuta,
		''										AS Classe,
		--V FRANCHIGIA CC
		CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV_NOMINALE <  CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
			THEN 0
			ELSE PATRIMONIO_BF.CTV_NOMINALE
		END AS CtvNominale,
		--PATRIMONIO_BF.CTV_NOMINALE				AS CtvNominale,
		CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND  PATRIMONIO_BF.CTV <  CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
			THEN 0
			ELSE PATRIMONIO_BF.CTV
		END AS CtvReale
		--PATRIMONIO_BF.CTV						AS CtvReale
	FROM C6Mart.PATRIMONIO_BF
	INNER JOIN C6MART.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
		ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
		AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
	INNER JOIN C6MART.ANAG_PRODOTTI 
		ON ANAG_PRODOTTI.COD_PRODOTTO = PATRIMONIO_BF.COD_PRODOTTO
	WHERE PATRIMONIO_BF.TIPO_PRODOTTO NOT IN ('ASUL','CC')
-- levato 'cc'
	UNION ALL
	-- PATRIMONIO ASUL
	SELECT 
		PATRIMONIO_BF.RETE						AS Rete,
		PATRIMONIO_BF.COD_FISCALE				AS CodiceFiscale,
		CASE
			WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN 
				'COMPLESSIVO|BF|RISFIN|NA|' + PATRIMONIO_BF.POSITION_ID	
			WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN 
				'COMPLESSIVO|BF|CC|' + PATRIMONIO_BF.POSITION_ID
			ELSE
				'COMPLESSIVO|BF|RISFIN|' + 
				LEFT(PATRIMONIO_BF.ID_AREA,3) + 
				CASE 
					WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO 
					ELSE '' 
				END + '|' + PATRIMONIO_BF.POSITION_ID	
		END											AS Portafoglio,
		CASE DETTAGLIO_ASUL.COD_ISIN_FITTIZIO --SELEZIONE DEL CODICEPRODOTTO: DETTAGLIO_ASUL.COD_ISIN_FITTIZIO, DETTAGLIO_ASUL.COD_SOTTOPRODOTTO, '$'
			WHEN '' THEN DETTAGLIO_ASUL.COD_ISIN_SOTT
			ELSE DETTAGLIO_ASUL.COD_ISIN_FITTIZIO
		END										AS CodiceProdotto,
		''										AS Piazza,
		''										AS CodiceValuta,
		''										AS Classe,
		DETTAGLIO_ASUL.CTV						AS CtvNominale,
		DETTAGLIO_ASUL.CTV						AS CtvReale
	FROM C6Mart.PATRIMONIO_BF
	INNER JOIN C6MART.DETTAGLIO_ASUL 
		ON DETTAGLIO_ASUL.ID_CONTRATTO = PATRIMONIO_BF.ID_CONTRATTO
	INNER JOIN C6MART.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
		ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
		AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
	WHERE PATRIMONIO_BF.TIPO_PRODOTTO IN ('ASUL')
	UNION ALL
	-- PATRIMONIO TERZI
	SELECT 
		INTERMEDIARIO.RETE					AS Rete,
		INTERMEDIARIO.CODICEFISCALE			AS CodiceFiscale,
		INTERMEDIARIO.PORTAFOGLIO			AS Portafoglio,
		INTERMEDIARIO.CODICEADEGUATEZZA		AS CodiceProdotto,
		INTERMEDIARIO.PIAZZA				AS Piazza,
		INTERMEDIARIO.CODICEVALUTA			AS CodiceValuta,
		INTERMEDIARIO.CLASSE				AS Classe,
		INTERMEDIARIO.CONTROVALORE			AS CtvNominale,
		INTERMEDIARIO.CONTROVALORE			AS CtvReale
	FROM C6MART.VPROMETEIATERZIINTERMEDIARIO INTERMEDIARIO
	INNER JOIN C6MART.vContrattiPerGenerazioneReport  VCONTRATTIPERSEI
		ON VCONTRATTIPERSEI.RETE = INTERMEDIARIO.RETE
		AND VCONTRATTIPERSEI.COD_FISCALE = INTERMEDIARIO.CODICEFISCALE
	UNION ALL 
	-- PATRIMONIO TERZI X TIPO PRODOTTO
	SELECT 
		CATEGORIAPRODOTTO.RETE				AS Rete,
		CATEGORIAPRODOTTO.CODICEFISCALE		AS CodiceFiscale,
		CATEGORIAPRODOTTO.PORTAFOGLIO		AS Portafoglio,
		CATEGORIAPRODOTTO.CODICEADEGUATEZZA	AS CodiceProdotto,
		CATEGORIAPRODOTTO.PIAZZA			AS Piazza,
		CATEGORIAPRODOTTO.CODICEVALUTA		AS CodiceValuta,
		CATEGORIAPRODOTTO.CLASSE			AS Classe,
		CATEGORIAPRODOTTO.CONTROVALORE		AS CtvNominale,
		CATEGORIAPRODOTTO.CONTROVALORE		AS CtvReale
	FROM C6MART.VPROMETEIATERZICATEGORIAPRODOTTO CATEGORIAPRODOTTO
	INNER JOIN C6MART.vContrattiPerGenerazioneReport VCONTRATTIPERSEI 
		ON VCONTRATTIPERSEI.RETE = CATEGORIAPRODOTTO.RETE
		AND VCONTRATTIPERSEI.COD_FISCALE = CATEGORIAPRODOTTO.CODICEFISCALE
--V Conti correnti Fideuram
union all
SELECT
		PATRIMONIO_BF.RETE						AS Rete,
		PATRIMONIO_BF.COD_FISCALE				AS CodiceFiscale,
		CASE
			WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN 
				'COMPLESSIVO|BF|RISFIN|NA|' + PATRIMONIO_BF.POSITION_ID	
			WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN 
				'COMPLESSIVO|BF|CC'-- + PATRIMONIO_BF.POSITION_ID
			ELSE
				'COMPLESSIVO|BF|RISFIN|' + 
				LEFT(PATRIMONIO_BF.ID_AREA,3) + 
				CASE 
					WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO 
					ELSE '' 
				END + '|' + PATRIMONIO_BF.POSITION_ID	
		END										AS Portafoglio,
--		CASE ANAG_PRODOTTI.COD_ISIN --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
--			WHEN '$' THEN ANAG_PRODOTTI.COD_ADEGUATEZZA
--			ELSE ANAG_PRODOTTI.COD_ISIN
--		END										AS CodiceProdotto,
-- MODIFICA LUCA
--		CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
--			WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
--			ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
--		END										
		'EUR' AS CodiceProdotto,
		''										AS Piazza,
		''										AS CodiceValuta,
		''										AS Classe,
		--V FRANCHIGIA CC
--		CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV_NOMINALE <  CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
--			THEN 0
--			ELSE PATRIMONIO_BF.CTV_NOMINALE
--		END AS CtvNominale,
		sum(PATRIMONIO_BF.CTV_NOMINALE)	- CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT) AS CtvNominale ,
--		CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND  PATRIMONIO_BF.CTV <  CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
--			THEN 0
--			ELSE PATRIMONIO_BF.CTV
--		END AS CtvReale
		sum(PATRIMONIO_BF.CTV)	-CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)	AS CtvReale 
FROM C6Mart.PATRIMONIO_BF
	INNER JOIN C6MART.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
		ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
		AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
	INNER JOIN C6MART.ANAG_PRODOTTI 
		ON ANAG_PRODOTTI.COD_PRODOTTO = PATRIMONIO_BF.COD_PRODOTTO
	WHERE PATRIMONIO_BF.TIPO_PRODOTTO  IN ('CC')
group by 
	PATRIMONIO_BF.rete,
	PATRIMONIO_BF.cod_fiscale,
	CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
			WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
			ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
	END,
	CASE
			WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN 
				'COMPLESSIVO|BF|RISFIN|NA|' + PATRIMONIO_BF.POSITION_ID	
			WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN 
				'COMPLESSIVO|BF|CC'
			ELSE
				'COMPLESSIVO|BF|RISFIN|' + 
				LEFT(PATRIMONIO_BF.ID_AREA,3) + 
				CASE 
					WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO 
					ELSE '' 
				END + '|' + PATRIMONIO_BF.POSITION_ID	
	END