PDC_REPORT_CreazioneDB/sql/storedTestbes/C6MartPeriodico_PL_FD190PatrimonioFinanziario_PTFRibilanciato.sql
2025-06-06 19:02:52 +02:00

55 lines
1.6 KiB
Transact-SQL

CREATE procedure [C6MartPeriodico].[PL_FD190PatrimonioFinanziario_PTFRibilanciato] --'F','VGNMRA68C64F205S'
-- Add the parameters for the stored procedure here
@Rete char(1),
@CodiceFiscale varchar(16)
AS
BEGIN
SELECT [Banca]
,[Ordinamento]
,[AssetClassId]
,[AssetClassName]
,chiaveptfmod
,[Controvalore]
,[Percentuale]
,[Totale]
,percentuale_modello
,var_prog
into #ptf
FROM [C6StampeCentralizzate].[C6MartPeriodico].[tb_fd190PatrimonioFinanziario_PTFRibilanciato]
WHERE [Rete] = @Rete
AND [CodiceFiscale] = @CodiceFiscale
order by ordinamento
--aggiunta
declare @mia_chiaveptfmod int
SELECT
@mia_chiaveptfmod=ChiavePtfMod
FROM [C6StampeCentralizzate].[C6MartPeriodico].[tb_fd190PatrimonioFinanziario_PTFRibilanciato]
WHERE [Rete] = @Rete
AND [CodiceFiscale] = @CodiceFiscale
order by ordinamento
select *
into #ptf_mod
from C6StagingPeriodico.RP_DistribuzionePtfModello_Tattici_MacroAssetClass where chiavePtfMod=@mia_chiaveptfmod
select Banca,Ordinamento,AssetClassId,AssetClassName,ChiavePtfMod,Controvalore,Percentuale,Totale,Percentuale_Modello*100 as percentuale_modello,var_prog as var_prog
into #tot
from #ptf
union all
select 'Fideuram',
ordinamento,
asset,
descrizione,
chiavePtfMod,
NULL,
0.00000,
NULL,
percentuale*100,
NULL as var_prog from #ptf_mod where asset not in (select ASSETCLASSID from #ptf)
order by Ordinamento
DECLARE @Totale [decimal](19, 5);
DECLARE @var_prog [decimal](19, 5);
SELECT @Totale = Totale, @var_prog = var_prog
FROM #ptf;
update #tot
set Totale=@Totale, var_prog=@var_prog
select * from #tot
END