PDC_REPORT_CreazioneDB/sql/storedCollaudo/C6MartPeriodicoImmobiliare_SP_PopolaW6IMM.sql
2025-06-06 19:02:52 +02:00

103 lines
3.9 KiB
Transact-SQL

-- Schema: C6MartPeriodicoImmobiliare
-- Stored Procedure: SP_PopolaW6IMM
-- =============================================
-- 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,