-- Stored procedure
-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
-- [C6MartPeriodico].[PL_D2_S152Patrimonio]  'f','BNLSRG42S13E666Q'
CREATE procedure [C6MartPeriodico].[PL_D2_S152Patrimonio] 
	@Rete char(1), 
	@CodiceFiscale varchar(16)
AS
BEGIN
	DECLARE @PatrimonioBF DECIMAL(15,2)
	DECLARE @PatrimonioTerzi DECIMAL(15,2)
	DECLARE @PatrimonioImmobiliare DECIMAL(15,2)
	-- modifica del 05/02/2019 per il ProQuota
	declare @PatrimonioImmobiliareProQuota decimal(15,2)
	-- fine modifica del 05/02/2019 per il ProQuota
	DECLARE @CCBF DECIMAL(15,2)
	DECLARE @PatrimonioAltro DECIMAL(15,2)
	DECLARE @PatrimonioTotale DECIMAL(15,2)
    DECLARE @Part_viaggianti decimal(15,2)
	SELECT @PatrimonioBF = SUM(CTV)
		FROM C6MartPeriodico.PATRIMONIO_BF patrBF
		WHERE
			patrBF.Rete = @Rete
			AND patrBF.Cod_Fiscale = @CodiceFiscale
			AND patrBF.id_area not in ('CC','SELF')  
	SELECT @Part_viaggianti = SUM(IMPORTO)
		FROM
		(
				SELECT SUM(IMPORTO) AS IMPORTO
					FROM C6Martperiodico.PARTITE_VIAGGIANTI partvia
					WHERE
						partvia.Rete = @Rete
						and partvia.Cod_Fiscale = @CodiceFiscale
				union 
				SELECT SUM(PARTVIA_DISINV) AS IMPORTO
					FROM C6Martperiodico.patrimonio_bf partvia
					WHERE
						partvia.Rete = @Rete
						and partvia.Cod_Fiscale = @CodiceFiscale
		 ) T
    SELECT @PatrimonioTerzi = SUM(ROUND(CTV,2))
		FROM C6MartPeriodico.PATRIMONIO_TERZI patrTerzi
		WHERE
			patrTerzi.Rete = @Rete
			and patrTerzi.Cod_Fiscale = @CodiceFiscale
	SELECT @PatrimonioImmobiliare = SUM(patrImm.VALORE_STIMATO)
		FROM C6MartPeriodico.PATRIMONIO_IMMOBILIARE patrImm
		WHERE
			patrImm.Rete = @Rete
			and patrImm.Cod_Fiscale = @CodiceFiscale
	-- modifica del 05/02/2019 per il ProQuota
	SELECT 
		@PatrimonioImmobiliareProQuota = isnull(SUM(patrImm.VALORE_STIMATO_PROQUOTA), 0)
	FROM 
		C6MARTPeriodico.PATRIMONIO_IMMOBILIARE_ProQuota patrImm
	WHERE
		patrImm.Rete = @Rete
		and patrImm.Cod_Fiscale = @CodiceFiscale
	-- fine modifica del 05/02/2019 per il ProQuota
	SELECT @PatrimonioAltro = SUM(patrAltro.ctv)
		FROM C6MartPeriodico.PATRIMONIO_ALTRO patrAltro
		WHERE
			patrAltro.Rete = @Rete
			AND patrAltro.Cod_Fiscale = @CodiceFiscale
	declare @summa as decimal(15,2)
    SET @Part_viaggianti=coalesce(@Part_viaggianti,0)
	SET @PatrimonioBF =coalesce(@PatrimonioBF,0)
	SET @summa = @PatrimonioBF + @Part_viaggianti
    SET @PatrimonioBF=@summa
	SET @PatrimonioTerzi =coalesce(@PatrimonioTerzi,0)
	SET @PatrimonioImmobiliare =coalesce(@PatrimonioImmobiliare,0)
	SET @PatrimonioAltro= coalesce(@PatrimonioAltro,0)
	SET @PatrimonioTotale = coalesce(@PatrimonioBF+@PatrimonioTerzi+@PatrimonioImmobiliare+@PatrimonioAltro,0)
	SELECT	
		@PatrimonioBF AS BFCTV,
		@PatrimonioTerzi AS PatrimonioTerziCTV,
		@PatrimonioBF +@PatrimonioTerzi AS FinanziarioCTV,
		CONVERT(decimal(6,2),((case @PatrimonioTotale when 0.00 then 0.00 else (@PatrimonioBF + @PatrimonioTerzi)/ @PatrimonioTotale end)  * 100.00)) AS FinanziarioPerc,
		@PatrimonioImmobiliare AS ImmobiliareCTV,
		CONVERT(decimal(6,2),((case @PatrimonioTotale when 0.00 then 0.00 else @PatrimonioImmobiliare/@PatrimonioTotale end ) *100.00)) AS ImmobiliarePerc,
		@PatrimonioAltro AS AltroCTV,
		CONVERT(decimal(6,2),(case @PatrimonioTotale when 0.00 then 0.00 else @PatrimonioAltro/@PatrimonioTotale end) *100.00) AS AltroPerc,
		@PatrimonioTotale AS TotaleCTV
		-- modifica del 05/02/2019 per il ProQuota
		,@PatrimonioImmobiliareProQuota as ImmobiliarePQCTV
		-- fine modifica del 05/02/2019 per il ProQuota
END