181 lines
10 KiB
Transact-SQL
181 lines
10 KiB
Transact-SQL
CREATE procedure [C6MartPeriodico].[Inizializzazione_tabellone]
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
TRUNCATE TABLE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
--drop index if exists [IDX_TABELLONE_RETE_ACN] on [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
INSERT INTO [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
([rete_acn]
|
|
,[chiave_acn]
|
|
,[indirizzo]
|
|
,[cap]
|
|
,[citta]
|
|
,[provincia]
|
|
,[nazione]
|
|
,[codconf]
|
|
,[codman]
|
|
,rete
|
|
,[chiave_cap]
|
|
,[Tipo_cliente]
|
|
)
|
|
select rete,rete+COD_FISCALE,INDIRIZZO,cap,CITTA,PROVINCIA,NAZIONE,codiceContratto,COD_MANDATO,rete,
|
|
case when COD_FISCALE not like '%@%' then rete+COD_FISCALE+isnull(PIVA_FIDUCIARIA,'')+isnull(COD_MANDATO,'')
|
|
else rete+isnull(PIVA_FIDUCIARIA,'')+isnull(COD_MANDATO,'') end, case when TIP_CONTRATTO=3 then 'Direct' else 'Sei' end as Tipo_Cliente
|
|
FROM [C6StampeCentralizzate].[C6StagingPeriodico].[APPO_CONTRATTI]
|
|
--select * from consuni_periodico.ConsulenzaUnica.dbo.Cliente where codfis is null
|
|
-- create NONCLUSTERED INDEX [IDX_TABELLONE_RETE_ACN] ON [C6MartPeriodico].[tabellone]
|
|
--( [chiave_acn] ASC )
|
|
--WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set DTTRIM=[C6MartPeriodico].[getTrimestre2](getdate(),0)
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set nome = tab.NOME , cognome = tab.COGNOME ,dtnasci=tab.dtNascita,codfis=tab.codfis
|
|
from consuni_periodico.ConsulenzaUnica.dbo.Cliente tab
|
|
inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on substring(a.chiave_acn,2,17)= tab.codfis
|
|
--select * FROM [C6StampeCentralizzate].[C6StagingPeriodico].[APPO_CONTRATTI]
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set nome = tab.NOME , cognome = tab.COGNOME ,dtnasci=tab.dtNascita,codfis=tab.piva
|
|
from consuni_periodico.ConsulenzaUnica.dbo.Cliente tab
|
|
inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on substring(a.chiave_acn,2,17)= tab.piva
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set nome = tab.NOME , cognome = tab.COGNOME ,dtnasci=tab.dtNascita,codfis=tab.piva
|
|
from consuni_periodico.ConsulenzaUnica.dbo.Cliente tab
|
|
inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on substring(a.chiave_acn,5,11)= tab.codman
|
|
where len(chiave_acn) <= 10
|
|
--problema nome, cognome
|
|
if((select COUNT(*) from C6MartPeriodico.tabellone where cognome is null)>0)
|
|
begin
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set nome = tab.NOME , cognome = tab.COGNOME ,dtnasci=tab.DATA_NASCITA
|
|
from c6mart.anag_clienti tab
|
|
inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on a.chiave_acn=tab.rete+tab.cod_fiscale
|
|
where a.cognome is null
|
|
end
|
|
update [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set cognome =codman+' - '+'SOCIETA'' ITALIANA DI REVISIONE E FIDUCIARIA' ,nome=''
|
|
where
|
|
cognome like '%SOCIETA'' ITALIANA DI RE%'
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set codice_agente= w.Codice_Agente,nominativo_pb=trim(w.[Nominativo_ Agente]) ,codice_fiscale=w.CodiceFiscale,
|
|
freq_monitoraggio=w.Freq_Monitoraggio,freq_diagnosi=w.[Freq_ Diagnosi],data_revoca=try_CONVERT(date,cast(w.Data_Revoca as varchar) ,23),
|
|
tipo_contratto=w.TipoContratto,tipo_riattivazione=w.TipoRiattivazione,rol_effettiva=isnull(w.ROL,'S')
|
|
from [dbo].[W6TRCLI] w
|
|
inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on w.Rete+w.CodiceFiscale=a.chiave_acn
|
|
--data sottoscrizione (faccio due update per qualcuno che ha delle problematiche, per preferenza meglio il consuni_periodico perciò viene fatto dopo)
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set cfm_dsottos=data_sottoscrizione_c6
|
|
from consuni.consulenzaunicafl.dbo.cbs_dbcontrattosei c left join C6MartPeriodico.tabellone t on c.cod_conf=t.codconf
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set cfm_dsottos=data_sottoscrizione_c6
|
|
from consuni_periodico.consulenzaunicafl.dbo.cbs_dbcontrattosei c left join C6MartPeriodico.tabellone t on c.cod_conf=t.codconf
|
|
--problema nominativo agente
|
|
if ((select COUNT(*) from C6MartPeriodico.tabellone where nominativo_pb='')>0)
|
|
begin
|
|
update C6MartPeriodico.tabellone
|
|
set nominativo_pb=v.nomePb+''+v.cognomePB
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join C6MartPeriodico.tabellone t on v.rete+v.Codfis+v.Agente=t.chiave_acn+t.codice_agente
|
|
where nominativo_pb=''
|
|
update C6MartPeriodico.tabellone
|
|
set nominativo_pb=v.nomePb+''+v.cognomePB
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join C6MartPeriodico.tabellone t on v.rete+v.piva+v.Agente=t.chiave_acn+t.codice_agente
|
|
where nominativo_pb=''
|
|
update C6MartPeriodico.tabellone
|
|
set nominativo_pb=v.nomePb+''+v.cognomePB
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join C6MartPeriodico.tabellone t on v.rete+'FF@'+v.codman+v.Agente=t.chiave_acn+t.codice_agente
|
|
where nominativo_pb=''
|
|
end
|
|
--fine nominativo agente
|
|
--campi Cambio Rete
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set rete_c=tab.reteOLD,rete_r=tab.reteNEW,dt_ultimo_cr=dtcaricamento
|
|
from [consuni_periodico].[consulenzaunicafl].[dbo].[ClienteCambioRete_st] tab inner join
|
|
[C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on tab.ReteNEW+tab.Codicefiscale=a.chiave_acn
|
|
where tab.Codicefiscale <> ''
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set rete_c=tab.reteOLD,rete_r=tab.reteNEW,dt_ultimo_cr=dtcaricamento
|
|
from [consuni_periodico].[consulenzaunicafl].[dbo].[ClienteCambioRete_st] tab inner join
|
|
[C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on tab.ReteNEW+tab.partitaiva=a.chiave_acn
|
|
where tab.partitaiva <> ''
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set rete_c=tab.reteOLD,rete_r=tab.reteNEW,dt_ultimo_cr=dtcaricamento
|
|
from [consuni_periodico].[consulenzaunicafl].[dbo].[ClienteCambioRete_st] tab inner join
|
|
[C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a
|
|
on tab.ReteNEW+'FF@'+tab.Codman=a.chiave_acn
|
|
where tab.codman <> ''
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set rete_c='',rete_r=''
|
|
where rete_c is null or rete_r is null or dt_ultimo_cr is null
|
|
--fine Cambio rete
|
|
--select * from [consuni_periodico].[consulenzaunicafl].[dbo].[ClienteCambioRete_fl]
|
|
--select * from [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] where rete_r is not null
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set cocf_subprod='6P'
|
|
from [dbo].[W6TRCLI] w inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a on w.rete+w.CodiceFiscale=a.chiave_acn
|
|
--select * from [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set segmento='PRIVATE'
|
|
from [dbo].[W6TRCLI] w inner join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a on w.rete+w.CodiceFiscale=a.chiave_acn
|
|
--flag professional inizio immesso adesso perche ci serve come filtro
|
|
Update [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set flgprof= (case
|
|
when v.tipoconsulenza='P' then 'S'
|
|
else 'N' end)
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a on v.Rete+v.codfis=a.chiave_acn
|
|
where v.codfis <> '' and dtendsei is not null
|
|
Update [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set flgprof= (case
|
|
when v.tipoconsulenza='P' then 'S'
|
|
else 'N' end)
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a on v.Rete+v.piva=a.chiave_acn
|
|
where v.piva <> '' and (v.codman is null or v.codman='') and dtendsei is not null
|
|
Update [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set flgprof= (case
|
|
when v.tipoconsulenza='P' then 'S'
|
|
else 'N' end)
|
|
from consuni_periodico.consulenzaunica.dbo.vinfocliente v left join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] as a on v.Rete+'FF@'+v.Codman=a.chiave_acn
|
|
where v.codman <> ''and dtendsei is not null
|
|
--fine flag professional
|
|
UPDATE [C6StampeCentralizzate].[C6MartPeriodico].[tabellone]
|
|
set cognome=cognome+' '+nome ,nome=''
|
|
from [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] where len(chiave_acn)=12 and cognome not like '%SOCIETA'' ITALIANA DI RE%' --per le piva
|
|
update C6MartPeriodico.tabellone
|
|
set campione1=case when chiave_acn in (select rete+cod_fiscale from C6MartPeriodico.TB_Campione) then 'S' else 'N' end
|
|
--lettera di benvenuto
|
|
drop table if exists #lettera_benvenuto
|
|
SELECT d.rete, d.codicefiscale,d.idreport,d.tiporeport,d.datagenerazione,d.datainvio,d.DataInvioRistampa,d.FlagInvio,d.NomeFile,d.numeroPagine,d.ID_ELAB,d.id_Fk_zip
|
|
into #lettera_benvenuto
|
|
FROM
|
|
(
|
|
SELECT rete,codicefiscale, Max(datainvio) as datamax
|
|
FROM C6Mart.gestione_pdf_ftp
|
|
GROUP BY rete,codicefiscale
|
|
) r
|
|
INNER JOIN C6Mart.gestione_pdf_ftp d
|
|
ON d.rete=r.rete and d.CodiceFiscale=r.codicefiscale AND d.DataInvio=r.datamax
|
|
where d.Rete+d.CodiceFiscale in (select chiave_acn from C6MartPeriodico.tabellone) order by codicefiscale,datainvio
|
|
update C6MartPeriodico.tabellone
|
|
set cocf_dtletbenv=datainvio
|
|
from #lettera_benvenuto b inner join C6MartPeriodico.tabellone t on b.rete+b.codicefiscale=t.chiave_acn
|
|
--fine lettera benvenuto
|
|
update c6martperiodico.tabellone
|
|
set lettera_sost='N'
|
|
update c6martperiodico.tabellone
|
|
set stato_cliente='Attivo'
|
|
-- FerAcu 20241029 Ogni volta che il TABELLONE viene ricostruito, si perdevano i dati dell'IMMOBILIARE
|
|
UPDATE t
|
|
set flgpe_perimetro_semestr = i.FLAG_IN_PERIMETRO
|
|
, solo_rend_imm = isnull(i.RENDICONTO_IMM,'N')
|
|
, anche_rend_sei = i.RENDICONTO_SEI
|
|
from [C6MartPeriodicoImmobiliare].[W6IMM] i
|
|
Join [C6StampeCentralizzate].[C6MartPeriodico].[tabellone] t on t.chiave_acn = i.RETE+i.CODFIS
|
|
truncate table C6MartPeriodico.APPREND_DTSX_Tabellone
|
|
insert into C6MartPeriodico.APPREND_DTSX_Tabellone
|
|
select * from C6MartPeriodico.vTabellone
|
|
END |