245 lines
10 KiB
SQL
245 lines
10 KiB
SQL
--modificata per i cc in liq Marianna & Valerio
|
|
CREATE VIEW [C6MartPeriodico].[vTuttiIPortafogli_asu2]
|
|
AS
|
|
SELECT
|
|
PATRIMONIO_BF.RETE AS Rete,
|
|
PATRIMONIO_BF.COD_FISCALE AS CodiceFiscale,
|
|
CASE
|
|
WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN
|
|
'COMPLESSIVO|BF|NA|' + PATRIMONIO_BF.POSITION_ID
|
|
-- WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN
|
|
-- 'COMPLESSIVO|BF|CC|' + PATRIMONIO_BF.POSITION_ID
|
|
ELSE
|
|
'COMPLESSIVO|BF|' +
|
|
LEFT(PATRIMONIO_BF.ID_AREA,3) +
|
|
CASE
|
|
WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO
|
|
ELSE ''
|
|
END + '|' + PATRIMONIO_BF.POSITION_ID
|
|
END AS Portafoglio,
|
|
-- CASE ANAG_PRODOTTI.COD_ISIN --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
-- WHEN '$' THEN ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
-- ELSE ANAG_PRODOTTI.COD_ISIN
|
|
-- END AS CodiceProdotto,
|
|
-- MODIFICA LUCA
|
|
CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
|
|
ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
END AS CodiceProdotto,
|
|
'' AS Piazza,
|
|
'' AS CodiceValuta,
|
|
'' AS Classe,
|
|
--V FRANCHIGIA CC
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV_NOMINALE < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV_NOMINALE
|
|
-- END AS CtvNominale,
|
|
PATRIMONIO_BF.CTV_NOMINALE AS CtvNominale,
|
|
--PATRIMONIO_BF.CTV_NOMINALE AS CtvNominale,
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV
|
|
-- END AS CtvReale
|
|
PATRIMONIO_BF.CTV AS CtvReale
|
|
FROM c6martperiodico.PATRIMONIO_BF
|
|
INNER JOIN c6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
|
|
INNER JOIN c6martperiodico.ANAG_PRODOTTI
|
|
ON ANAG_PRODOTTI.COD_PRODOTTO = PATRIMONIO_BF.COD_PRODOTTO
|
|
WHERE PATRIMONIO_BF.TIPO_PRODOTTO NOT IN ('ASUL','CC','ASU2')
|
|
UNION ALL
|
|
---V Modifica per calcolo VaR prodotti ASU2
|
|
SELECT
|
|
PATRIMONIO_BF.RETE AS Rete,
|
|
PATRIMONIO_BF.COD_FISCALE AS CodiceFiscale,
|
|
CASE
|
|
WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN
|
|
'COMPLESSIVO|BF|NA|' + PATRIMONIO_BF.POSITION_ID
|
|
-- WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN
|
|
-- 'COMPLESSIVO|BF|CC|' + PATRIMONIO_BF.POSITION_ID
|
|
ELSE
|
|
'COMPLESSIVO|BF|' +
|
|
LEFT(PATRIMONIO_BF.ID_AREA,3) +
|
|
CASE
|
|
WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO
|
|
ELSE ''
|
|
END + '|' + PATRIMONIO_BF.POSITION_ID
|
|
END AS Portafoglio,
|
|
-- CASE ANAG_PRODOTTI.COD_ISIN --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
-- WHEN '$' THEN ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
-- ELSE ANAG_PRODOTTI.COD_ISIN
|
|
-- END AS CodiceProdotto,
|
|
---- MODIFICA LUCA
|
|
--V Modifica per gli ASU2 CON IL COD_ADEGUATEZZA NON BECCA NESSUN PRODTTO PROMETEIA
|
|
-- CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
-- WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
|
|
-- ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA END
|
|
PATRIMONIO_BF.ISIN AS CodiceProdotto,
|
|
'' AS Piazza,
|
|
'' AS CodiceValuta,
|
|
'' AS Classe,
|
|
--V FRANCHIGIA CC
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV_NOMINALE < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV_NOMINALE
|
|
-- END AS CtvNominale,
|
|
PATRIMONIO_BF.CTV_NOMINALE AS CtvNominale,
|
|
--PATRIMONIO_BF.CTV_NOMINALE AS CtvNominale,
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV
|
|
-- END AS CtvReale
|
|
PATRIMONIO_BF.CTV AS CtvReale
|
|
FROM C6martperiodico.PATRIMONIO_BF
|
|
INNER JOIN C6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
|
|
INNER JOIN C6MART.ANAG_PRODOTTI
|
|
ON ANAG_PRODOTTI.COD_PRODOTTO = PATRIMONIO_BF.COD_PRODOTTO
|
|
AND ANAG_PRODOTTI.COD_ISIN = PATRIMONIO_BF.ISIN
|
|
WHERE PATRIMONIO_BF.TIPO_PRODOTTO IN ('ASU2')
|
|
UNION ALL
|
|
-- PATRIMONIO ASUL
|
|
SELECT
|
|
PATRIMONIO_BF.RETE AS Rete,
|
|
PATRIMONIO_BF.COD_FISCALE AS CodiceFiscale,
|
|
CASE
|
|
WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN
|
|
'COMPLESSIVO|BF|NA|' + PATRIMONIO_BF.POSITION_ID
|
|
--
|
|
-- WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN
|
|
-- 'COMPLESSIVO|BF|CC|' + PATRIMONIO_BF.POSITION_ID
|
|
ELSE
|
|
'COMPLESSIVO|BF|' +
|
|
LEFT(PATRIMONIO_BF.ID_AREA,3) +
|
|
CASE
|
|
WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO
|
|
ELSE ''
|
|
END + '|' + PATRIMONIO_BF.POSITION_ID
|
|
END AS Portafoglio,
|
|
CASE DETTAGLIO_ASUL.COD_ISIN_FITTIZIO --SELEZIONE DEL CODICEPRODOTTO: DETTAGLIO_ASUL.COD_ISIN_FITTIZIO, DETTAGLIO_ASUL.COD_SOTTOPRODOTTO, '$'
|
|
WHEN '' THEN DETTAGLIO_ASUL.COD_ISIN_SOTT
|
|
ELSE DETTAGLIO_ASUL.COD_ISIN_FITTIZIO
|
|
END AS CodiceProdotto,
|
|
'' AS Piazza,
|
|
'' AS CodiceValuta,
|
|
'' AS Classe,
|
|
DETTAGLIO_ASUL.CTV AS CtvNominale,
|
|
DETTAGLIO_ASUL.CTV AS CtvReale
|
|
FROM c6martperiodico.PATRIMONIO_BF
|
|
INNER JOIN c6martperiodico.DETTAGLIO_ASUL
|
|
ON DETTAGLIO_ASUL.ID_CONTRATTO = PATRIMONIO_BF.ID_CONTRATTO
|
|
INNER JOIN c6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
|
|
WHERE PATRIMONIO_BF.TIPO_PRODOTTO IN ('ASUL')
|
|
UNION ALL
|
|
-- PATRIMONIO TERZI
|
|
SELECT
|
|
INTERMEDIARIO.RETE AS Rete,
|
|
INTERMEDIARIO.CODICEFISCALE AS CodiceFiscale,
|
|
INTERMEDIARIO.PORTAFOGLIO AS Portafoglio,
|
|
INTERMEDIARIO.CODICEADEGUATEZZA AS CodiceProdotto,
|
|
INTERMEDIARIO.PIAZZA AS Piazza,
|
|
INTERMEDIARIO.CODICEVALUTA AS CodiceValuta,
|
|
INTERMEDIARIO.CLASSE AS Classe,
|
|
INTERMEDIARIO.CONTROVALORE AS CtvNominale,
|
|
INTERMEDIARIO.CONTROVALORE AS CtvReale
|
|
FROM c6martperiodico.VPROMETEIATERZIINTERMEDIARIO INTERMEDIARIO
|
|
INNER JOIN c6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = INTERMEDIARIO.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = INTERMEDIARIO.CODICEFISCALE
|
|
UNION ALL
|
|
-- PATRIMONIO TERZI X TIPO PRODOTTO
|
|
SELECT
|
|
CATEGORIAPRODOTTO.RETE AS Rete,
|
|
CATEGORIAPRODOTTO.CODICEFISCALE AS CodiceFiscale,
|
|
CATEGORIAPRODOTTO.PORTAFOGLIO AS Portafoglio,
|
|
CATEGORIAPRODOTTO.CODICEADEGUATEZZA AS CodiceProdotto,
|
|
CATEGORIAPRODOTTO.PIAZZA AS Piazza,
|
|
CATEGORIAPRODOTTO.CODICEVALUTA AS CodiceValuta,
|
|
CATEGORIAPRODOTTO.CLASSE AS Classe,
|
|
CATEGORIAPRODOTTO.CONTROVALORE AS CtvNominale,
|
|
CATEGORIAPRODOTTO.CONTROVALORE AS CtvReale
|
|
FROM c6martperiodico.VPROMETEIATERZICATEGORIAPRODOTTO CATEGORIAPRODOTTO
|
|
INNER JOIN c6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = CATEGORIAPRODOTTO.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = CATEGORIAPRODOTTO.CODICEFISCALE
|
|
--V Conti correnti Fideuram
|
|
union all
|
|
SELECT
|
|
PATRIMONIO_BF.RETE AS Rete,
|
|
PATRIMONIO_BF.COD_FISCALE AS CodiceFiscale,
|
|
CASE
|
|
-- WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN
|
|
-- 'COMPLESSIVO|BF|NA|' + PATRIMONIO_BF.POSITION_ID
|
|
--
|
|
WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN
|
|
'COMPLESSIVO|BF|CC'-- + PATRIMONIO_BF.POSITION_ID
|
|
WHEN (PATRIMONIO_BF.ID_AREA = 'Liq' and PATRIMONIO_BF.TIPO_PRODOTTO='CC') THEN
|
|
'COMPLESSIVO|BF|CC'
|
|
-- ELSE
|
|
-- 'COMPLESSIVO|BF|' +
|
|
-- LEFT(PATRIMONIO_BF.ID_AREA,3) +
|
|
-- CASE
|
|
-- WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO
|
|
-- ELSE ''
|
|
-- END + '|' + PATRIMONIO_BF.POSITION_ID
|
|
END AS Portafoglio,
|
|
-- CASE ANAG_PRODOTTI.COD_ISIN --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
-- WHEN '$' THEN ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
-- ELSE ANAG_PRODOTTI.COD_ISIN
|
|
-- END AS CodiceProdotto,
|
|
-- MODIFICA LUCA
|
|
-- CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
-- WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
|
|
-- ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
-- END
|
|
'EUR' AS CodiceProdotto,
|
|
'' AS Piazza,
|
|
'' AS CodiceValuta,
|
|
'' AS Classe,
|
|
--V FRANCHIGIA CC
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV_NOMINALE < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV_NOMINALE
|
|
-- END AS CtvNominale,
|
|
case when (sum(PATRIMONIO_BF.CTV_NOMINALE) - CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT))>0 then sum(PATRIMONIO_BF.CTV_NOMINALE) - CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
else 0.0001 end AS CtvNominale ,
|
|
-- CASE WHEN PATRIMONIO_BF.ID_AREA = 'Cc' AND PATRIMONIO_BF.CTV < CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
-- THEN 0
|
|
-- ELSE PATRIMONIO_BF.CTV
|
|
-- END AS CtvReale
|
|
case when (sum(PATRIMONIO_BF.CTV) -CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT))>0 then sum(PATRIMONIO_BF.CTV) -CAST(DBO.GETPARAMETRO('FRANCHIGIA_CC') AS INT)
|
|
else 0.0001 end AS CtvReale
|
|
FROM c6martperiodico.PATRIMONIO_BF
|
|
INNER JOIN c6martperiodico.vContrattiPerGenerazioneReport VCONTRATTIPERSEI
|
|
ON VCONTRATTIPERSEI.RETE = PATRIMONIO_BF.RETE
|
|
AND VCONTRATTIPERSEI.COD_FISCALE = PATRIMONIO_BF.COD_FISCALE
|
|
INNER JOIN c6martperiodico.ANAG_PRODOTTI
|
|
ON ANAG_PRODOTTI.COD_PRODOTTO = PATRIMONIO_BF.COD_PRODOTTO
|
|
WHERE PATRIMONIO_BF.TIPO_PRODOTTO IN ('CC')
|
|
group by
|
|
PATRIMONIO_BF.rete,
|
|
PATRIMONIO_BF.cod_fiscale,
|
|
CASE ANAG_PRODOTTI.COD_ADEGUATEZZA --SELEZIONE DEL CODICEPRODOTTO: COD_ISIN, COD_ADEGUATEZZA, '$'
|
|
WHEN '$' THEN ANAG_PRODOTTI.COD_ISIN
|
|
ELSE ANAG_PRODOTTI.COD_ADEGUATEZZA
|
|
END,
|
|
CASE
|
|
-- WHEN PATRIMONIO_BF.ID_AREA = 'NA' THEN
|
|
-- 'COMPLESSIVO|BF|NA|' + PATRIMONIO_BF.POSITION_ID
|
|
--
|
|
WHEN PATRIMONIO_BF.ID_AREA = 'Cc' THEN
|
|
'COMPLESSIVO|BF|CC'-- + PATRIMONIO_BF.POSITION_ID
|
|
WHEN (PATRIMONIO_BF.ID_AREA = 'Liq' and PATRIMONIO_BF.TIPO_PRODOTTO='CC') THEN
|
|
'COMPLESSIVO|BF|CC'
|
|
-- ELSE
|
|
-- 'COMPLESSIVO|BF|' +
|
|
-- LEFT(PATRIMONIO_BF.ID_AREA,3) +
|
|
-- CASE
|
|
-- WHEN PATRIMONIO_BF.NOME_PROGETTO IS NOT NULL THEN '|' + PATRIMONIO_BF.NOME_PROGETTO
|
|
-- ELSE ''
|
|
-- END + '|' + PATRIMONIO_BF.POSITION_ID
|
|
END |