--[C6MartPeriodico].[Gestione_ProdottiProtetti] 'F', 'BBNLSN51E27D612T'
CREATE procedure [C6MartPeriodico].[Gestione_ProdottiProtetti]
	-- Add the parameters for the stored procedure here
	-- Add the parameters for the stored procedure here
	@Rete char(1), 
	@CodiceFiscale varchar(16)
AS
declare @isinInterfund80 varchar(20)
set @isinInterfund80 = 'LU1106988527'
BEGIN
declare @OrdineRiga int
declare @conta int
set @conta = 0
set @OrdineRiga = 0
	-- 1 LINEA MULTIRAMO
		SELECT
			@CodiceFiscale as CodiceFiscale
			,'FV Sintonia Linea Protezione 85' as DescrizioneProdotto
			,COD_CONF as Contratto
			,'TipoParagrafo1' as TipoParagrafo
			,'TipoProdotto1' as TipoProdotto
			,ROW_NUMBER() OVER(order by @CodiceFiscale) as OrdineRiga
		into #LineaMultiramo
		from [C6MartPeriodico].[CAPPROT_FVI]
		where rete = @Rete
			and codfis = @CodiceFiscale
			and codprod = 'RF' and subprod = 'MP'
	    select @conta = count(*) from #LineaMultiramo
		if @conta > 0
			select @OrdineRiga = max(OrdineRiga) from #LineaMultiramo
	-- 2 BLUE AND WHITE
		SELECT
			@CodiceFiscale as CodiceFiscale
			,DES_PROD_TIT as DescrizioneProdotto
			,COD_CONF as Contratto
			,'TipoParagrafo2' as TipoParagrafo
			,
			case
				when SUBPROD = 'CS80' then 'TipoProdotto2'
				when SUBPROD = 'CT80' then 'TipoProdotto3'
			end as TipoProdotto
			,ROW_NUMBER() OVER(order by somma_ctv desc, controvalore_riferimento desc) + @OrdineRiga AS OrdineRiga
		into #BlueWhite
		from [C6MartPeriodico].[CAPPROT_FVI]
		where SUBPROD in ('CS80', 'CT80')
		and Rete = @Rete
		and CODFIS = @CodiceFiscale
		order by somma_ctv desc, controvalore_riferimento desc
		select @conta = count(*) from #BlueWhite
		if @conta > 0
			select @OrdineRiga = max(OrdineRiga) from #BlueWhite
	--3 INTERFUND
		SELECT
			a.CODFIS as CodiceFiscale
			,a.des_prod_tit as DescrizioneProdotto
			,'' as Contratto
			,'TipoParagrafo3' as TipoParagrafo
			,'TipoProdotto1' as TipoProdotto
			,@OrdineRiga + 1 AS OrdineRiga
		into #Interfund80
		FROM C6MartPeriodico.capprot a
		WHERE 1=1
		AND a.RETE = @Rete 
		AND a.CODFIS = @CodiceFiscale
		select @conta = count(*) from #Interfund80
		if @conta > 0
			select @OrdineRiga = max(OrdineRiga) from #Interfund80
	-- 4 FONDITALIA
		SELECT
			a.CODFIS as CodiceFiscale
			,a.desprodtit as DescrizioneProdotto
			,'' as Contratto
			,'TipoParagrafo3' as TipoParagrafo
			,'TipoProdotto2' as TipoProdotto
			,@OrdineRiga + 1 AS OrdineRiga
		into #Fonditalia80
		FROM c6martperiodico.foi80 a
		WHERE 1=1
		AND a.RETE = @Rete 
		AND a.CODFIS = @CodiceFiscale
	select * from #LineaMultiramo
	union
	select * from #BlueWhite
	union
	select * from #Interfund80
	union
	select * from #Fonditalia80
	order by OrdineRiga
END