149 lines
3.8 KiB
Transact-SQL
149 lines
3.8 KiB
Transact-SQL
-- Schema: C6MartPeriodico
|
|
-- Stored Procedure: Popolamento_RP_W6CLIREP
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [C6MartPeriodico].[Popolamento_RP_W6CLIREP]
|
|
|
|
AS
|
|
BEGIN
|
|
|
|
SET NOCOUNT ON;
|
|
|
|
--dichiaro variabile data di trimestrale
|
|
DECLARE @dttrim int
|
|
|
|
--valorizzo la data di trimestrale al giorno del congelamento
|
|
set @dttrim = CAST(CONVERT(varchar, CAST(C6MartPeriodico.getDataCongelamento() as DATETIME),112) as int)
|
|
--print @dttrim
|
|
|
|
--Tronchiamo la tabella RP_vTuttiIPortafogli_Aladdin_tab e la ripopoliamo
|
|
--a partire dalla vista RP_vTuttiIPortafogli_Aladdin
|
|
|
|
Truncate table C6StampeCentralizzate.C6MartPeriodico.w6clirep
|
|
--
|
|
insert into C6StampeCentralizzate.C6MartPeriodico.w6clirep
|
|
select
|
|
'6' as FLGCLI ,
|
|
'M' as FLGBL ,
|
|
'A' as TIPOELA,
|
|
@dttrim as DTTRIM,
|
|
rete,
|
|
codfis,
|
|
piva,
|
|
codman,
|
|
'' as CODFID,
|
|
'' as CODAGE,
|
|
CASE
|
|
WHEN cod_interno not in ('SINT3MEUR','SINT6MEUR','09560690') and famprodt = 'DT' THEN isnull(cod_interno,'') --aggiunta SINT6MEUR 10/03/2023
|
|
ELSE ''
|
|
END as CODABI,
|
|
ISNULL(termid,00000000),
|
|
cast(annos as int) as anno ,
|
|
case when famprodt='GE' then 00000000 --aggiunta con else sotto
|
|
else cast(progs as int) end as prog ,
|
|
0 as quote,
|
|
cast(ctvreale as float) as CTV,
|
|
codconf, --17
|
|
rubr,
|
|
custgar,
|
|
ISNULL(cod_interno,''),
|
|
'' as codana,
|
|
CASE
|
|
WHEN cast(annos as int) <> 0 and cast(progs as int) <> 0 then 'S'
|
|
ELSE 'N'
|
|
END as FLAGPCT,
|
|
--CASE
|
|
-- WHEN famprodt <> 'DT' and famprodt <> 'CC' THEN isnull(cod_interno,'')
|
|
-- ELSE ''
|
|
--END
|
|
'' as codprod,
|
|
ISNULL(cod_sottoprodotto,''),
|
|
ISNULL(cod_isin,''),
|
|
'' as codlinea,
|
|
tipoptf,
|
|
area,
|
|
progetto,
|
|
codprj,
|
|
ISNULL(chiave_prodotto_terzi,''),
|
|
ISNULL(assetterzi,''),
|
|
ISNULL(famprodt,''),
|
|
ISNULL(intermediario,''),
|
|
ISNULL(codiceadeguatezza,''),
|
|
ISNULL(cod_maf,''),
|
|
conto,
|
|
numpolizza,
|
|
position_id,
|
|
--aggiunta 08/06/2022
|
|
'' as PREFSOST,
|
|
'' as FLAGAMB,
|
|
'' as FLAGSOC,
|
|
'' as FLAGGOV,
|
|
Prodotto_id
|
|
from [C6StampeCentralizzate].[C6MartPeriodico].[RP_vTuttiIPortafogli_Aladdin]
|
|
|
|
|
|
--aggiunta informazioni codabi per i prodotti PCT
|
|
|
|
SELECT [DTTRIM]
|
|
,[DTRIFE]
|
|
,ltrim(rtrim([RETE])) as rete
|
|
,ltrim(rtrim([CODFIS])) as codfis
|
|
,ltrim(rtrim([CODCONF])) as codconf
|
|
,[NUMPOL]
|
|
,ltrim(rtrim([CONTO])) as conto
|
|
,[RUBR]
|
|
,[CUSTGAR]
|
|
,ltrim(rtrim([TIPPROD])) as tipprod
|
|
,ltrim(rtrim([CODINT])) as codint
|
|
,[CODPROD]
|
|
,[SUBPROD]
|
|
,[MAF]
|
|
,[CODABI]
|
|
,[PCTKEY]
|
|
,[DESTIT]
|
|
,[CTV]
|
|
,[PARTVIA]
|
|
,[PARTVIAAL]
|
|
,[DTSOTTOS]
|
|
,[RENDINIZ]
|
|
,[RENDANNO]
|
|
,[VALORE]
|
|
,[SUBSET]
|
|
,[CVN]
|
|
,[QUOTE]
|
|
,ltrim(rtrim([CODMAN])) as codman
|
|
,[SALRISC]
|
|
,[ATTIVO]
|
|
into #PCT --selezioniamo dalla wseics i soli clienti possessori di un pct in portafoglio
|
|
FROM [C6StampeCentralizzate].[C6StagingPeriodico].[wseics] WHERE CODABI <> ''
|
|
and pctKey <> ''
|
|
and dttrim = (Select Max(dttrim) from [C6StampeCentralizzate].[C6StagingPeriodico].[wseics])
|
|
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[w6clirep]
|
|
set codabi = pct.codabi
|
|
--select w6.rete,pct.rete,w6.codfis,w6.piva,pct.codfis,w6.codman,pct.codman,w6.conto,pct.conto,w6.codconf,pct.codconf,pct.codabi
|
|
--, pct.tipprod,w6.famprodt
|
|
from #PCT pct
|
|
left join [C6StampeCentralizzate].[C6MartPeriodico].[w6clirep] as w6
|
|
on w6.rete=pct.rete and w6.codfis+w6.piva+w6.codman = ltrim(rtrim(pct.codfis))+ltrim(rtrim(pct.codman))
|
|
and w6.codconf=ltrim(rtrim(pct.codconf)) and w6.conto=ltrim(rtrim(pct.conto)) and w6.famprodt = ltrim(rtrim(pct.tipprod))
|
|
where w6.flagpct = 'S'
|
|
-- Aggiungiamo le informazioni mancanti per il codman piva_fiduciaria
|
|
|
|
select b.cod_mandato
|