-- Schema: C6MartPeriodico -- Stored Procedure: Gestione_ProdottiProtetti --[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