-- =============================================
-- 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