﻿-- =============================================
-- Author:		Luca De Lisio
-- Create date: 04/12/2008
-- Description: <Description,,>
-- =============================================
--[C6MartPeriodico].[PL_S76PatrimonioNonRappresentabileAssettClass] 'F','GSPNGL31C04B157Q'
CREATE procedure [C6MartPeriodico].[PL_S76PatrimonioNonRappresentabileAssettClass] --'S','GLLLCN29H16I829A'
 -- Add the parameters for the stored procedure here
 @Rete char(1), 
 @CodiceFiscale varchar(16)
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
	DECLARE @NOMERETE VARCHAR(20)
	IF @RETE = 'F'
		SET @NOMERETE = 'Fideuram'
	ELSE IF @RETE = 'S'
		SET @NOMERETE = 'Sanpaolo Invest'
		ELSE SET @NOMERETE = 'IW Private Investments'
	SELECT  
		PATRBF.ID_CONTRATTO as Contratto,
		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
		ANAGP.DESCR_PRODOTTO AS Descrizione,
		PATRBF.CTV as Controvalore,
		PATRBF.CTV as controvalore_contratto,
		PATRBF.PARTVIA_DISINV as PartitaViaggiante,
		@NOMERETE as Intermediario,
		-- savingmap - Novembre 2019
	    patrbf.tipo_prodotto as Tipo_Prodotto,
		NULL as isAPC
	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 1 = 1
		AND PATRBF.RETE = @Rete
		AND PATRBF.COD_FISCALE = @CodiceFiscale
		AND PATRBF.TIPO_PRODOTTO <> 'ASUL'
		AND ASSETPERC.COD_PRODOTTO IS NULL
		--INIZIO INTERVENTI OMNIA		
        AND PATRBF.CTV  <>0.00
--INIZIO INTERVENTI OMNIA		
UNION ALL
SELECT  
		PATRBF.ID_CONTRATTO as Contratto,
	--	CASE WHEN AREA.NOME_AREA LIKE 'Previdenza%' THEN 'Previdenza' ELSE AREA.NOME_AREA END as Area,
--		CASE
--		WHEN area.ID_AREA IN ('Pre1', 'Pre2') THEN 'Pre'
--		 ELSE area.ID_AREA end as NEEDAREA,
--		PATRBF.NOME_PROGETTO as Progetto,
		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
		ANAGP.DESCR_PRODOTTO AS Descrizione,
		sum(ASUL.CTV) as Controvalore,
		sum(ASUL.CTV) as controvalore_contratto,
		Max(PATRBF.PARTVIA_DISINV) as PartitaViaggiante,
		@NOMERETE as Intermediario,
		-- savingmap - Novembre 2019
    	patrbf.tipo_prodotto as Tipo_Prodotto,
		NULL as isAPC
	FROM
		C6MartPeriodico.PATRIMONIO_BF PATRBF
	INNER JOIN
		C6MartPeriodico.AREA_BISOGNO AREA
		ON
			PATRBF.ID_AREA = AREA.ID_AREA
	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 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
		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
		AND PATRBF.RETE = @Rete
		AND PATRBF.COD_FISCALE = @CodiceFiscale
  GROUP BY 
     PATRBF.ID_CONTRATTO,
     CASE WHEN AREA.NOME_AREA LIKE 'Previdenza%' THEN 'Previdenza' ELSE AREA.NOME_AREA END,
		CASE
		WHEN area.ID_AREA IN ('Pre1', 'Pre2') THEN 'Pre'
		 ELSE area.ID_AREA end,
        PATRBF.NOME_PROGETTO,
		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE),
		ANAGP.DESCR_PRODOTTO, 
		-- savingmap - Novembre 2019
	    patrbf.tipo_prodotto
--union all
--SELECT  
--		PATRBF.ID_CONTRATTO as Contratto,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
--		ANAGP.DESCR_PRODOTTO AS Descrizione,
--		SUM(ASUL.CTV) as Controvalore,
--		MAX(PATRBF.CTV) as controvalore_contratto,
--		SUM(PATRBF.PARTVIA_DISINV) as PartitaViaggiante,
--		@NOMERETE as Intermediario
--	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 1 = 1
--		AND PATRBF.RETE = @Rete
--		AND PATRBF.COD_FISCALE = @CodiceFiscale
--		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
--		AND ASSETPERC.COD_PRODOTTO IS NULL
--        GROUP BY 
--        PATRBF.ID_CONTRATTO,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) ,
--		ANAGP.DESCR_PRODOTTO 
--	ORDER BY CONTROVALORE DESC
--
--
--	UNION ALL
--
--	SELECT  
--		PATRBF.ID_CONTRATTO as Contratto,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
--		ANAGP.DESCR_PRODOTTO AS Descrizione,
--		ASUL.CTV as Controvalore,
--		PATRBF.CTV as controvalore_contratto,
--		PATRBF.PARTVIA_DISINV as PartitaViaggiante,
--		@NOMERETE as Intermediario
--	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 1 = 1
--		AND PATRBF.RETE = @Rete
--		AND PATRBF.COD_FISCALE = @CodiceFiscale
--		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
--		AND ASSETPERC.COD_PRODOTTO IS NULL
END
--USE [C6StampeCentralizzate]
--GO
--/****** Object:  StoredProcedure [C6MartPeriodico].[PL_S76PatrimonioNonRappresentabileAssettClass]    Script Date: 10/02/2022 16:34:12 ******/
--SET ANSI_NULLS ON
--GO
--SET QUOTED_IDENTIFIER ON
--GO
---- =============================================
---- Author:		Luca De Lisio
---- Create date: 04/12/2008
---- Description: <Description,,>
---- =============================================
----[C6MartPeriodico].[PL_S76PatrimonioNonRappresentabileAssettClass] 'F','GSPNGL31C04B157Q'
--ALTER procedure [C6MartPeriodico].[PL_S76PatrimonioNonRappresentabileAssettClass] 
-- -- Add the parameters for the stored procedure here
-- @Rete char(1), 
-- @CodiceFiscale varchar(16)
--AS
--BEGIN
-- -- SET NOCOUNT ON added to prevent extra result sets from
-- -- interfering with SELECT statements.
--	DECLARE @NOMERETE VARCHAR(20)
--	IF @RETE = 'F'
--		SET @NOMERETE = 'Fideuram'
--	ELSE
--		SET @NOMERETE = 'Sanpaolo Invest'
--	SELECT  
--		PATRBF.ID_CONTRATTO as Contratto,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
--		ANAGP.DESCR_PRODOTTO AS Descrizione,
--		PATRBF.CTV as Controvalore,
--		PATRBF.CTV as controvalore_contratto,
--		PATRBF.PARTVIA_DISINV as PartitaViaggiante,
--		@NOMERETE as Intermediario,
--		-- savingmap - Novembre 2019
--	    patrbf.tipo_prodotto as Tipo_Prodotto
--	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 1 = 1
--		AND PATRBF.RETE = @Rete
--		AND PATRBF.COD_FISCALE = @CodiceFiscale
--		AND PATRBF.TIPO_PRODOTTO <> 'ASUL'
--		AND ASSETPERC.COD_PRODOTTO IS NULL
--		--INIZIO INTERVENTI OMNIA		
--        AND PATRBF.CTV <> 0.00
----INIZIO INTERVENTI OMNIA		
--UNION ALL
--SELECT  
--		PATRBF.ID_CONTRATTO as Contratto,
--	--	CASE WHEN AREA.NOME_AREA LIKE 'Previdenza%' THEN 'Previdenza' ELSE AREA.NOME_AREA END as Area,
----		CASE
----		WHEN area.ID_AREA IN ('Pre1', 'Pre2') THEN 'Pre'
----		 ELSE area.ID_AREA end as NEEDAREA,
----		PATRBF.NOME_PROGETTO as Progetto,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
--		ANAGP.DESCR_PRODOTTO AS Descrizione,
--		sum(ASUL.CTV) as Controvalore,
--		sum(ASUL.CTV) as controvalore_contratto,
--		Max(PATRBF.PARTVIA_DISINV) as PartitaViaggiante,
--		@NOMERETE as Intermediario,
--		-- savingmap - Novembre 2019
--    	patrbf.tipo_prodotto as Tipo_Prodotto
--	FROM
--		C6MartPeriodico.PATRIMONIO_BF PATRBF
--	INNER JOIN
--		C6MartPeriodico.AREA_BISOGNO AREA
--		ON
--			PATRBF.ID_AREA = AREA.ID_AREA
--	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 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
--		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
--		AND PATRBF.RETE = @Rete
--		AND PATRBF.COD_FISCALE = @CodiceFiscale
--  GROUP BY 
--     PATRBF.ID_CONTRATTO,
--     CASE WHEN AREA.NOME_AREA LIKE 'Previdenza%' THEN 'Previdenza' ELSE AREA.NOME_AREA END,
--		CASE
--		WHEN area.ID_AREA IN ('Pre1', 'Pre2') THEN 'Pre'
--		 ELSE area.ID_AREA end,
--        PATRBF.NOME_PROGETTO,
--		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE),
--		ANAGP.DESCR_PRODOTTO, 
--		-- savingmap - Novembre 2019
--	    patrbf.tipo_prodotto
----union all
----SELECT  
----		PATRBF.ID_CONTRATTO as Contratto,
----		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
----		ANAGP.DESCR_PRODOTTO AS Descrizione,
----		SUM(ASUL.CTV) as Controvalore,
----		MAX(PATRBF.CTV) as controvalore_contratto,
----		SUM(PATRBF.PARTVIA_DISINV) as PartitaViaggiante,
----		@NOMERETE as Intermediario
----	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 1 = 1
----		AND PATRBF.RETE = @Rete
----		AND PATRBF.COD_FISCALE = @CodiceFiscale
----		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
----		AND ASSETPERC.COD_PRODOTTO IS NULL
----        GROUP BY 
----        PATRBF.ID_CONTRATTO,
----		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) ,
----		ANAGP.DESCR_PRODOTTO 
----	ORDER BY CONTROVALORE DESC
----
----
----	UNION ALL
----
----	SELECT  
----		PATRBF.ID_CONTRATTO as Contratto,
----		dbo.TOSHORTDATESTRING(PATRBF.DATA_SOTTOSCRIZIONE) as DataSottoscrizione,
----		ANAGP.DESCR_PRODOTTO AS Descrizione,
----		ASUL.CTV as Controvalore,
----		PATRBF.CTV as controvalore_contratto,
----		PATRBF.PARTVIA_DISINV as PartitaViaggiante,
----		@NOMERETE as Intermediario
----	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 1 = 1
----		AND PATRBF.RETE = @Rete
----		AND PATRBF.COD_FISCALE = @CodiceFiscale
----		AND PATRBF.TIPO_PRODOTTO = 'ASUL'
----		AND ASSETPERC.COD_PRODOTTO IS NULL
--END