127 lines
4.4 KiB
Transact-SQL
127 lines
4.4 KiB
Transact-SQL
-- =============================================
|
|
-- Author: Paolo Giovanetti
|
|
-- Create date: 15 gennaio 2009
|
|
-- Description: riporta il valore complessivo dei prodotti attualmente destinati all'area
|
|
-- di bisogno progetto (controvalore attuale) ed il relativo valore di rischio (VaR attuale)
|
|
-- =============================================
|
|
-- [C6MartPeriodico].[PL_S83DatiRendimento] 'F','DNERNZ56P01A757W'
|
|
CREATE procedure [C6MartPeriodico].[PL_S83DatiRendimento]
|
|
-- Add the parameters for the stored procedure here
|
|
@Rete char(1),
|
|
@CodiceFiscale varchar(16)
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
-- DECLARE @RendimNonRappr BIT
|
|
-- IF EXISTS (
|
|
-- SELECT
|
|
-- PATR_BF.ID_AREA AS Need_Area,
|
|
-- PATR_BF.ID_CONTRATTO AS Contratto,
|
|
-- CASE
|
|
-- WHEN PATR_BF.ID_AREA IN ('Ris', 'Ext', 'Liq') THEN AREA.NOME_AREA
|
|
-- ELSE PATR_BF.NOME_PROGETTO
|
|
-- END AS Area_O_Nome_Progetto,
|
|
-- PRODOTTI.DESCR_PRODOTTO AS Descrizione,
|
|
-- PATR_BF.PARTVIA_INV AS PartitaViaggiante,
|
|
-- SUM(PATR_BF.CTV) OVER (PARTITION BY PATR_BF.COD_PRODOTTO) AS Controvalore,
|
|
-- dbo.ToShortDateString(PATR_BF.DATA_SOTTOSCRIZIONE) AS DataSottoscrizione
|
|
-- FROM
|
|
-- C6MartPeriodico.PATRIMONIO_BF AS PATR_BF
|
|
-- INNER JOIN C6MartPeriodico.AREA_BISOGNO AS AREA ON
|
|
-- PATR_BF.ID_AREA = AREA.ID_AREA
|
|
-- INNER JOIN C6MartPeriodico.ANAG_PRODOTTI AS PRODOTTI ON
|
|
-- PATR_BF.COD_PRODOTTO = PRODOTTI.COD_PRODOTTO
|
|
-- WHERE
|
|
-- PATR_BF.RETE = @Rete
|
|
-- AND PATR_BF.COD_FISCALE = @CodiceFiscale
|
|
-- AND PATR_BF.REND_NON_RAPPR = 1
|
|
-- )
|
|
-- SET @RendimNonRappr = 1
|
|
--
|
|
-- ELSE
|
|
-- SET @RendimNonRappr = 0
|
|
--
|
|
-- SELECT
|
|
-- @RendimNonRappr AS cf_rendim_non_rappr,
|
|
-- ID_AREA AS Need_Area,
|
|
-- CASE
|
|
-- WHEN NOME_PROGETTO = 'XXX' THEN ''
|
|
-- ELSE NOME_PROGETTO
|
|
-- END AS Nome_Progetto,
|
|
-- dbo.TOSHORTDATESTRING(DATA_ATTIVAZIONE) AS DataAttivazioneMonitoraggio,
|
|
-- CTV_MONITORATO AS ControvaloreMonitorato,
|
|
-- APPORTO_INIZIALE AS ApportoIniziale,
|
|
-- APPORTO_SUCCESSIVO AS ApportoSuccessivo,
|
|
-- LIQUIDAZIONI,
|
|
-- CEDOLE_DIVIDENDI AS CedoleEDividendi,
|
|
-- MINUS_PLUSVALENZA AS MinusPlusAreaProgetto,
|
|
-- RENDIMENTO_CUMULATO AS Rendimento_Attuale,
|
|
-- RISORSE_ASSOCIATE AS RisorseApportate,
|
|
-- dbo.TOSHORTDATESTRING(DATA_CTV) AS DataControvalore,
|
|
-- RENDIMENTO_ANNUALIZZATO
|
|
-- FROM
|
|
-- C6MartPeriodico.MONITORAGGIO_ATTUALE
|
|
-- WHERE
|
|
-- RETE = @Rete AND
|
|
-- COD_FISCALE = @CodiceFiscale
|
|
-- --AND RISORSE_ASSOCIATE > 0
|
|
SELECT
|
|
case when RENDIMNONRAPPR=1 then 1 else 0 end AS cf_rendim_non_rappr,
|
|
MONIT.id_Area AS Need_Area,
|
|
CASE
|
|
WHEN MONIT.NOME_PROGETTO = 'XXX' THEN ''
|
|
ELSE LTRIM(RTRIM(MONIT.NOME_PROGETTO))
|
|
END AS Nome_Progetto,
|
|
monit.ordinamento_progetto,
|
|
dbo.TOSHORTDATESTRING(DATA_ATTIVAZIONE) AS DataAttivazioneMonitoraggio,
|
|
CTV_MONITORATO AS ControvaloreMonitorato,
|
|
APPORTO_INIZIALE AS ApportoIniziale,
|
|
APPORTO_SUCCESSIVO AS ApportoSuccessivo,
|
|
LIQUIDAZIONI,
|
|
CEDOLE_DIVIDENDI AS CedoleEDividendi,
|
|
MINUS_PLUSVALENZA AS MinusPlusAreaProgetto,
|
|
RENDIMENTO_CUMULATO AS Rendimento_Attuale,
|
|
RISORSE_ASSOCIATE AS RisorseApportate,
|
|
dbo.TOSHORTDATESTRING(DATA_CTV) AS DataControvalore,
|
|
RENDIMENTO_ANNUALIZZATO
|
|
FROM
|
|
C6MartPeriodico.MONITORAGGIO_ATTUALE MONIT
|
|
LEFT OUTER JOIN
|
|
(
|
|
SELECT
|
|
PATR_BF.ID_AREA,
|
|
PATR_BF.COD_FISCALE,
|
|
PATR_BF.RETE,
|
|
CASE
|
|
WHEN PATR_BF.NOME_PROGETTO = 'XXX' THEN ''
|
|
ELSE NOME_PROGETTO end as NOME_PROGETTO,
|
|
patr_bf.ordinamento_progetto,
|
|
1 as RENDIMNONRAPPR
|
|
FROM
|
|
C6MartPeriodico.PATRIMONIO_BF AS PATR_BF
|
|
LEFT OUTER JOIN C6MartPeriodico.AREA_BISOGNO AS AREA ON
|
|
PATR_BF.ID_AREA = AREA.ID_AREA
|
|
WHERE
|
|
PATR_BF.RETE = @Rete
|
|
AND PATR_BF.COD_FISCALE = @CodiceFiscale
|
|
AND PATR_BF.REND_NON_RAPPR = 1
|
|
group by
|
|
PATR_BF.ID_AREA,
|
|
PATR_BF.COD_FISCALE,
|
|
PATR_BF.RETE,
|
|
CASE
|
|
WHEN PATR_BF.NOME_PROGETTO = 'XXX' THEN ''
|
|
ELSE NOME_PROGETTO end,
|
|
patr_bf.ordinamento_progetto
|
|
) PATR_BF
|
|
ON PATR_BF.COD_FISCALE=MONIT.COD_FISCALE
|
|
AND PATR_BF.RETE= MONIT.RETE
|
|
AND left(PATR_BF.ID_AREA,3)=left(MONIT.ID_AREA,3)
|
|
AND isnull(PATR_BF.NOME_PROGETTO,'XXX')=isnull(MONIT.NOME_PROGETTO,'XXX')
|
|
And monit.ordinamento_progetto=patr_bf.ordinamento_progetto
|
|
WHERE
|
|
MONIT.RETE = @Rete AND
|
|
MONIT.COD_FISCALE = @CodiceFiscale
|
|
END |