PDC_REPORT_CreazioneDB/sql/storedCollaudo/C6MartPeriodicoImmobiliare_SP_PopolaW6IMM.sql
2025-06-09 17:09:11 +02:00

129 lines
7.6 KiB
Transact-SQL

-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: Popola la tabella W6IMM per la quadratura semestrale immobiliare
-- =============================================
CREATE PROCEDURE [C6MartPeriodicoImmobiliare].[SP_PopolaW6IMM]
-- Add the parameters for the stored procedure here
@DataUltimoAggiornamento as varchar(10)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
if (Exists (Select * from c6martperiodicoimmobiliare.W6IMM))
begin
Delete from c6martperiodicoimmobiliare.W6IMM
end
Insert into c6martperiodicoimmobiliare.W6IMM
Select
distinct
isnull(cli.rete,'') as rete,
isnull(coalesce(cli.codFis, cli.pIva),'') as codfis,
isnull(cli.codiceContratto,'') as contratto,
case
when (cli.StatoContratto in ('BASE')) then 'BASE' else 'SEI' end as TIPCONS,
case
when (srv.chiaveservizioAggiuntivo = 1) then 'SI' else 'NO' end as SERVAGG,
case
when (srv.flagattivo=1) then 'ATTIVO' else 'non attivo' END AS ADDIMM,
keyimport.statoImportazione as StatoImportazione,
'',
'',
''
from [CONSUNI_periodico].[ConsulenzaUnica].dbo.vInfoCliente CLI
left outer join [CONSUNI_periodico].[ConsulenzaUnica].dbo.v_servizi_aggiuntivi srv on CLI.chiaveClientePB=srv.chiaveclientepb and srv.chiaveServizioAggiuntivo = 1 and srv.flagattivo = 1
inner join (
select distinct s.chiaveImportazione,i.statoImportazione, s.chiaveClientePB
from [CONSUNI_periodico].[ConsulenzaUnica].[dbo].[PatrimonioImmobiliareStaging] s inner join [CONSUNI_periodico].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente i on s.chiaveImportazione=i.chiaveImportazione
where chiaveProdottoTerzi IN (
select chiaveProdottoTerzi from [CONSUNI_periodico].[ConsulenzaUnica].dbo.PatrimonioTerzi where idTipoProdotto='IM' AND idImmobileCatasto IS NOT NULL and dtfinevalidita='9999-12-31 00:00:00.000')
and dtUltimoAggiornamento < convert(datetime,'2024-03-31') ) keyimport on keyimport.chiaveClientePB=cli.chiaveClientePB
where StatoContratto IN ('SEI','AVANZATOBASE','BASE')
--Prima di avviare la proc controllare se non vi siano clienti che abbiano lo statoimportazione a Deleted e l'addimm attivo. In quel caso ricordarsi di lanciare l'update fornito da Giuseppe
/*********** Vecchie Versioni *****************/
--SELECT
-- distinct
-- isnull(cli.rete,''),
-- isnull(coalesce(cli.codFis, cli.pIva),'') as codfis,
-- isnull(con.codiceContratto,''),
-- case
-- when (cli.StatoContratto in ('BASE')) then 'BASE' else 'SEI' end as TIPCONS,
-- case
-- when (srv.chiaveservizioAggiuntivo = 1) then 'SI' else 'NO' end as SERVAGG,
-- case
-- when (srv.flagattivo=1) then 'ATTIVO' else 'non attivo' END AS ADDIMM,
-- --cli.CognomeCliente,
-- --cli.CognomeCliente,
-- --cli.NomeCliente,
-- --cli.Agente,
-- --cli.CognomePb,
-- --cli.NomePb,
-- --cli.codman,
-- --srv.descrizione,
-- --srv.dataAttivazione,
-- --srv.dataRevoca,
-- --srv.flagattivo,
-- --srv.ctr_immobili AS tot_immobili,
-- --srv.ctr_cli_mon_imm,
-- --(select count(*) count_immobili_da_catasto from PatrimonioTerzi pt where idTipoProdotto='IM' AND idImmobileCatasto IS NOT NULL AND pt.chiaveClientePB=cli.chiaveClientePB AND dtfinevalidita ='9999-12-31 00:00:00.000' GROUP BY chiaveClientePB) Imm_catasto,
-- --(select count(*) count_immobili_manuali from PatrimonioTerzi pt where idTipoProdotto='IM' AND idImmobileCatasto IS NULL AND pt.chiaveClientePB=cli.chiaveClientePB AND dtfinevalidita ='9999-12-31 00:00:00.000' GROUP BY chiaveClientePB) Imm_manuali,
-- isnull((select statoImportazione from [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente rpt where rpt.dtUltimoAggiornamento < convert(datetime,'2020-03-01') AND
-- rpt.codFIS=coalesce(cli.codFis,cli.piva) AND chiaveImportazione = (select max(chiaveImportazione) from [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente rpt2 where rpt2.dtUltimoAggiornamento < convert(datetime,'2020-03-01') AND
-- rpt2.codFIS=rpt.codFis)),'') AS Evento_Prometeia,
-- '',
-- '',
-- ''
-- from [CONSUNI].[ConsulenzaUnica].dbo.vInfoCliente cli
-- left outer join [CONSUNI].[ConsulenzaUnica].dbo.v_servizi_aggiuntivi srv on srv.chiaveclientepb = cli.chiaveClientePB AND srv.chiaveServizioAggiuntivo = 1 and srv.flagattivo=1
-- inner join [CONSUNI].[ConsulenzaUnica].dbo.PatrimonioTerzi PT on cli.chiaveClientePB=PT.chiaveClientePB
-- inner join [CONSUNI].[ConsulenzaUnica].dbo.Contratto con on cli.chiaveClientePB = con.chiaveClientePB
-- inner join [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente rpt on coalesce(cli.codFis,cli.piva) = rpt.codfis
-- --left outer join
-- --(select distinct s.chiaveImportazione,i.statoImportazione, s.chiaveClientePB
-- -- from [CONSUNI].[ConsulenzaUnica].[dbo].[PatrimonioImmobiliareStaging] s inner join [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente i on s.chiaveImportazione=i.chiaveImportazione
-- -- where chiaveProdottoTerzi IN
-- -- (select chiaveProdottoTerzi from [CONSUNI].[ConsulenzaUnica].dbo.PatrimonioTerzi where idTipoProdotto='IM' AND idImmobileCatasto IS NOT NULL)) keyimport
-- -- on keyimport.chiaveClientePB=cli.chiaveClientePB
-- where idTipoProdotto='IM' AND dtfinevalidita='9999-12-31 00:00:00.000'
-- AND StatoContratto IN ('SEI','AVANZATOBASE','BASE')
-- and idImmobileCatasto IS NOT NULL
-- and rpt.dtUltimoAggiornamento < convert(datetime,'2020-03-01')
--SELECT
-- distinct
-- isnull(cli.rete,''),
-- isnull(coalesce(cli.codFis, cli.pIva),'') as codfis,
-- isnull(con.codiceContratto,''),
-- case
-- when (cli.StatoContratto = 'AVANZATOBASE') then 'BASE' else 'SEI' end as TIPCONS,
-- case
-- when (srv.chiaveservizioAggiuntivo = 1) then 'SI' else 'NO' end as SERVAGG,
-- case
-- when (srv.flagattivo=1) then 'ATTIVO' else 'non attivo' END AS ADDIMM,
-- --cli.CognomeCliente,
-- --cli.CognomeCliente,
-- --cli.NomeCliente,
-- --cli.Agente,
-- --cli.CognomePb,
-- --cli.NomePb,
-- --cli.codman,
-- --srv.descrizione,
-- --srv.dataAttivazione,
-- --srv.dataRevoca,
-- --srv.flagattivo,
-- --srv.ctr_immobili AS tot_immobili,
-- --srv.ctr_cli_mon_imm,
-- --(select count(*) count_immobili_da_catasto from PatrimonioTerzi pt where idTipoProdotto='IM' AND idImmobileCatasto IS NOT NULL AND pt.chiaveClientePB=cli.chiaveClientePB AND dtfinevalidita ='9999-12-31 00:00:00.000' GROUP BY chiaveClientePB) Imm_catasto,
-- --(select count(*) count_immobili_manuali from PatrimonioTerzi pt where idTipoProdotto='IM' AND idImmobileCatasto IS NULL AND pt.chiaveClientePB=cli.chiaveClientePB AND dtfinevalidita ='9999-12-31 00:00:00.000' GROUP BY chiaveClientePB) Imm_manuali,
-- isnull((select statoImportazione from [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente rpt where rpt.dtUltimoAggiornamento < convert(datetime,'2020-02-27') AND
-- rpt.codFIS=coalesce(cli.codFis,cli.piva) AND chiaveImportazione = (select max(chiaveImportazione) from [CONSUNI].[ConsulenzaUnicaFL].dbo.Immobiliare_Cliente rpt2 where rpt2.dtUltimoAggiornamento < convert(datetime,'2020-02-27') AND
-- rpt2.codFIS=rpt.codFis)),'') AS Evento_Prometeia,
-- '',
-- '',
-- ''
-- from [CONSUNI].[ConsulenzaUnica].dbo.vInfoCliente cli
-- inner join [CONSUNI].[ConsulenzaUnica].dbo.v_servizi_aggiuntivi srv on srv.chiaveclientepb = cli.chiaveClientePB AND srv.chiaveServizioAggiuntivo = 1
-- inner join [CONSUNI].[ConsulenzaUnica].dbo.Contratto con on cli.chiaveClientePB = con.chiaveClientePB
-- where cli.codman = ''
-- and cli.StatoContratto <> 'REVOCASEI'
END