-- Stored procedure -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= --[C6MartPeriodicoImmobiliare].[PL_D_S152Patrimonio] 'F','BCHRRT54L12G999R' CREATE procedure [C6MartPeriodicoImmobiliare].[PL_D_S152Patrimonio] @Rete char(1), @CodiceFiscale varchar(16) AS BEGIN DECLARE @PatrimonioBF DECIMAL(15,2) DECLARE @PatrimonioTerzi DECIMAL(15,2) DECLARE @PatrimonioImmobiliare DECIMAL(15,2) 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 C6MartPeriodicoImmobiliare.PATRIMONIO_BF patrBF WHERE patrBF.Rete = @Rete AND patrBF.Cod_Fiscale = @CodiceFiscale AND patrBF.id_area <> 'CC' --escludo il cc negativo -- SELECT @Part_viaggianti=SUM(IMPORTO) -- FROM C6MartPeriodicoImmobiliare.PARTITE_VIAGGIANTI partvia -- WHERE -- partvia.Rete = @Rete -- and partvia.Cod_Fiscale = @CodiceFiscale SELECT @Part_viaggianti=SUM(IMPORTO) from ( SELECT SUM(IMPORTO) AS IMPORTO FROM C6MartPeriodicoImmobiliare.PARTITE_VIAGGIANTI partvia WHERE partvia.Rete = @Rete and partvia.Cod_Fiscale = @CodiceFiscale union SELECT SUM(PARTVIA_DISINV) AS IMPORTO FROM C6MartPeriodicoImmobiliare.patrimonio_bf partvia WHERE partvia.Rete = @Rete and partvia.Cod_Fiscale = @CodiceFiscale ) H SELECT @PatrimonioTerzi = SUM(ROUND(CTV,2)) FROM C6MartPeriodicoImmobiliare.PATRIMONIO_TERZI patrTerzi WHERE patrTerzi.Rete = @Rete and patrTerzi.Cod_Fiscale = @CodiceFiscale SELECT @PatrimonioImmobiliare = SUM(patrImm.VALORE_STIMATO) FROM C6MartPeriodicoImmobiliare.PATRIMONIO_IMMOBILIARE patrImm WHERE patrImm.Rete = @Rete and patrImm.Cod_Fiscale = @CodiceFiscale SELECT @PatrimonioAltro = SUM(patrAltro.ctv) FROM C6MartPeriodicoImmobiliare.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 END