--select * from C6MartPeriodicO.PATRIMONIO_IMMOBILIARE_ProQuota
-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
CREATE procedure [C6MartPeriodico].[RP_DM_BONIFICA_PATRIMONIO_IMMOBILIARE_ProQuota]
AS
BEGIN
	SET NOCOUNT ON;
	DECLARE @ID_ELAB INT
	DECLARE @TIPO_ELAB VARCHAR(1)
	SET @ID_ELAB = C6MartPeriodico.GETIDELAB()
	SET @TIPO_ELAB = C6MartPeriodico.GETTIPOELAB()
	-- Log esecuzione
	INSERT INTO LOG_ESECUZIONE_PERIODICO
		(Nome, Inizio, Nota)
	VALUES (
		'RP_DM_BONIFICA_PATRIMONIO_IMMOBILIARE_PROQUOTA',
		GETDATE(),
		'Elaborazione Trimestrale'
	)
delete from C6MartPeriodico.Patrimonio_Immobiliare_ProQuota where cod_fiscale in (
select distinct vinfo.codfis						from ( select distinct con.chiaveClientePBProprietario,con.chiaveprodottoterzi,condett.tipologiadiritto ,condett.quotaDiritto, condett.moltiplicatorediritto
                                    from [CONSUNI_PERIODICO].consulenzaunica.dbo.cointestatari con
                                    inner join [CONSUNI_PERIODICO].consulenzaunica.dbo.CointestatariDettaglioDiritto condett
                                    on condett.chiavecointestatari = con.chiavecointestatari
                                    and condett.chiaveprodottoterzi = con.chiaveprodottoterzi
                                    where con.chiaveclientepb=con.chiaveClientePBProprietario
                                    ) tCoin
                                        inner join [CONSUNI_PERIODICO].consulenzaunica.dbo.dettImmobiliare dett
                                        on tCoin.chiaveProdottoTerzi = dett.chiaveProdottoTerzi
                                            inner join [CONSUNI_PERIODICO].consulenzaunica.dbo.PatrimonioTerzi pt
                                            on dett.chiaveProdottoTerzi = pt.chiaveProdottoTerzi
                                                left join [CONSUNI_PERIODICO].consulenzaunica.dbo.dfinalita fin
                                                on fin.codfinalita=dett.codfinalita
                                                    left join [CONSUNI_PERIODICO].consulenzaunica.dbo.dtipoimmobile dti
                                                    on dti.codtipologia=dett.codtipologia
                                                        left join  [CONSUNI_PERIODICO].consulenzaunica.dbo.DNazioneEstera dne
                                                        on dne.codNazioneEstera = dett.codNazioneEstera
                                                            inner join [CONSUNI_PERIODICO].consulenzaunica.dbo.vInfoCliente vInfo
                                                            on pt.chiaveClientePB = vInfo.chiaveClientePB
where pt.dtfinevalidita<>'9999-12-31 00:00:00.000'
and not exists (select 1 from [CONSUNI_PERIODICO].consulenzaunica.dbo.PatrimonioTerzi pt2 where dtfinevalidita = '9999-12-31 00:00:00.000' AND pt.chiaveClientePB=pt2.chiaveClientePB)
)
	UPDATE
		LOG_ESECUZIONE_PERIODICO
	SET
		Fine = GETDATE(),
		Tipo = 'INSERT',
		Righe = @@ROWCOUNT
	WHERE
		Nome = 'RP_DM_BONIFICA_PATRIMONIO_IMMOBILIARE_PROQUOTA' AND
		Inizio = (
			SELECT
				MAX(Inizio)
			FROM
				LOG_ESECUZIONE_PERIODICO
			WHERE
				Nome = 'RP_DM_BONIFICA_PATRIMONIO_IMMOBILIARE_PROQUOTA'
		)
END