PDC_REPORT_CreazioneDB/sql/storedProduzione/dbo_AMB_VerificaLettere.sql
2025-06-06 19:02:52 +02:00

450 lines
23 KiB
Transact-SQL

--INFORMAZIONI UTILI
--La vista vPatrimoniobfAggregato_senzaNobPreZ riporta i dati del portafoglio del cliente su
--cui viene eseguito il check di superamenteo della soglia di 50K. Questa non corrisponde
--all'intero patrimonio del cliente (che è invece presente sulla vPatrimoniobfAggregato)
--ma i soli prodotti che sono inclusi nel servizio SEI, per cui questi sono i soli prodotti
--che contribuiscono al superamento della soglia
----TABELLA DI LOG LETTERE DI BENVENUTO (VIENE TRONCATA A OGNI LANCIO)
--select *
--from LOG_ESECUZIONE
--order by Inizio desc
----UPDATE PER PASSARE DA SEI IN ATTIVAZIONE A SEI ATTIVATO (INSERIRE LA DATA DI GENERAZIONE DELLA LETTERA DI BENVENUTO)
--select top 100 *
----update tab set dtvalid = '2024-05-09 21:29:02.817'
--from Consuni.ConsulenzaUnica.dbo.contratto tab
--where chiaveclientepb= 1713909
--PER TROVARE LA DATA DI GENERAZIONE CONSULTARE LA TABELLA c6mart.gestione_pdf_ftp
--select * from c6mart.gestione_pdf_ftp where CodiceFiscale=''
-- exec dbo.AMB_VerificaLettere 'MRNLSN62C09L424J'
CREATE procedure dbo.AMB_VerificaLettere ( @cf varchar(20) = 'DMECST71D10H501E') as
BEGIN
--DECLARE @cf VARCHAR(16) = 'VCCMHL75S29D612I'
DECLARE @DataGenerazione varchar(20)
print 'Caso: ' + @cf
-- Controllo se è stato stampato nella tabella gestione_pdf_ftp
IF EXISTS (SELECT 1 FROM c6mart.gestione_pdf_ftp WHERE codicefiscale = @cf)
BEGIN
select @DataGenerazione = convert(varchar, DataGenerazione, 103) from c6mart.gestione_pdf_ftp where CodiceFiscale=@cf
PRINT 'Lettera di Benvenuto Stampata nella tabella gestione_pdf_ftp'
+ ' (' + @DataGenerazione + ')'
END
ELSE
BEGIN
PRINT 'ERRORE: Lettera di Benvenuto Non Stampata: Controllo nella rp_vcontrattipergenerazionereport'
-- Controllo nella tabella rp_vcontrattipergenerazionereport se non trovato in gestione_pdf_ftp
IF EXISTS (SELECT 1 FROM c6mart.rp_vcontrattipergenerazionereport WHERE cod_fiscale = @cf) --SELECT * FROM c6mart.rp_vtuttiicontratti
BEGIN
PRINT 'Codice fiscale trovato nella tabella rp_vcontrattipergenerazionereport'
END
ELSE
BEGIN
PRINT 'ERRORE: Codice fiscale non trovato in entrambe le tabelle ( gestione_pdf_ftp e rp_vcontrattipergenerazionereport)'
END
END
-- Fine controllo
--Fine controllo se è stato stampato
--controllo se è nella tabella contratti da escludere
IF EXISTS (SELECT 1 FROM C6Mart.Contratti_Da_Escludere tab WHERE cod_fiscale = @cf)
PRINT 'Il contratto è inserito in una lista di contratti da escludere C6Mart.Contratti_Da_Escludere'
ELSE IF EXISTS (SELECT 1 FROM C6Mart.tbNotAllocatedResources where COD_FISCALE = @cf)
PRINT 'Il contratto è inserito in una lista di contratti da escludere C6Mart.tbNotAllocatedResources'
ELSE
PRINT 'Il contratto non è inserito in una lista di contratti da escludere'
--fine controllo se è nella tabella contratti da escludere
--controllo nella rp_vtuttiicontratti
DECLARE @condizioneNonSoddisfatta NVARCHAR(MAX) = ''
IF NOT EXISTS (
SELECT 1
FROM c6mart.rp_vtuttiicontratti
WHERE Cod_Fiscale = @cf
)
BEGIN
SET @condizioneNonSoddisfatta = 'ERRORE: Cod_Fiscale non trovato nella tabella rp_vtuttiicontratti'
END
ELSE
BEGIN
SELECT
@condizioneNonSoddisfatta =
CASE
WHEN cod_agente IN ('015126') THEN @condizioneNonSoddisfatta + 'cod_agente non soddisfatta; '
WHEN InvioBenvenuto = 'S' THEN @condizioneNonSoddisfatta + 'InvioBenvenuto non soddisfatta; '
WHEN ISNULL(RisorseNa, 'N') = 'S' THEN @condizioneNonSoddisfatta + 'RisorseNa non soddisfatta; verifica la C6Staging.rp_Consulenza (Se manca qui metti in sessione) e C6staging.Spb_Contr_Sintesi (Se manca qui problema Servizi)'
WHEN ISNULL(NumRevoche, 0) <> 0 THEN @condizioneNonSoddisfatta + 'NumRevoche non soddisfatta; '
WHEN (
DATEDIFF(d, Data_Perf, GETDATE()) < CAST(dbo.getParametro('NUMGIORNIDALPERF_REP') AS INT)
AND cod_agente <> '015312'
) THEN @condizioneNonSoddisfatta + 'Data_Perf non soddisfatta; '
WHEN Cod_Fiscale NOT IN (SELECT COD_FISCALE FROM C6Mart.PIRAMIDE_MOD) THEN @condizioneNonSoddisfatta + 'Cod_Fiscale non presente in PIRAMIDE_MOD; '
ELSE @condizioneNonSoddisfatta
END
FROM c6mart.rp_vtuttiicontratti
WHERE Cod_Fiscale = @cf
END
IF @condizioneNonSoddisfatta <> ''
BEGIN
PRINT 'ERRORE: Condizione/e non soddisfatta/e: ' + @condizioneNonSoddisfatta
END
ELSE
BEGIN
PRINT 'Cliente presente nella rp_vtuttiicontratti con tutte le condizioni soddisfatte.'
END
--fine controllo nella rp_vtuttiicontratti
--controllo chave cliente duplicata
IF EXISTS (
SELECT 1
FROM consuni.consulenzaunica.dbo.vinfocliente
WHERE (codfis = @cf or piva=@cf or codman=SUBSTRING(@cf,4,len(@cf))) AND tipologia = 'A'
HAVING COUNT(DISTINCT rete) > 1
)
BEGIN
PRINT 'ERRORE: Chiavecliente duplicata'
SET NOCOUNT ON;
SELECT 'vinfocliente' _vinfocliente_PDC, *
FROM consuni.consulenzaunica.dbo.vinfocliente
WHERE (codfis = @cf or piva=@cf or codman=SUBSTRING(@cf,4,len(@cf))) AND tipologia = 'A'
SET NOCOUNT OFF;
END
ELSE
BEGIN
PRINT 'Nessuna ChiaveDuplicata sulla VinfoCliente'
-- SET NOCOUNT ON;
-- SELECT 'vinfocliente' _vinfocliente_PDC, *
-- FROM consuni.consulenzaunica.dbo.vinfocliente
-- WHERE (codfis = @cf or piva=@cf or codman=SUBSTRING(@cf,4,len(@cf))) AND tipologia = 'A'
-- SET NOCOUNT OFF;
END
--fine controllo chiavecliente duplicata
-- Controllo per stato contratto non valido
IF EXISTS (
SELECT 1
FROM consuni.consulenzaunica.dbo.vinfocliente
WHERE (codfis = @cf or piva=@cf or codman=SUBSTRING(@cf,4,len(@cf)))
AND tipologia = 'A'
AND statocontratto NOT IN ('SEI', 'AVANZATOBASE', 'REVOCASEI', 'DADVISORY')
)
BEGIN
PRINT 'ERRORE: Stato contratto non valido'
END
ELSE
BEGIN
PRINT 'Stato contratto valido'
END
--Fine Controllo per stato contratto non valido
DECLARE @dtFirmaSEI DATETIME
SET @dtFirmaSEI = (
SELECT MAX(dtFirmaSEI)
FROM consuni.consulenzaunica.dbo.vinfocliente
WHERE (codfis = @cf or piva=@cf or codman=SUBSTRING(@cf,4,len(@cf))) AND dtFirmaSEI IS NOT NULL
)
DECLARE @currentDate DATETIME
SET @currentDate = GETDATE()
-- Controllo per data di firma
IF @dtFirmaSEI IS NULL
BEGIN
PRINT 'ERRORE: Nessuna data di firma trovata per il codice fiscale specificato.'
END
ELSE IF DATEADD(DAY, 15, @dtFirmaSEI) > @currentDate
BEGIN
PRINT 'ERRORE: Non sono ancora trascorsi 15 giorni dalla firma.'
END
ELSE
BEGIN
PRINT 'La firma è stata apposta da più di 15 giorni.'
-- Fine controllo data Firma
END
-- CURSORI Generazione Lettere SEI e DIRECT
declare @sogliaRfa as decimal (18,0) = (select valore from [CONSUNI].[ConsulenzaUnica].[dbo].[param] where parametro = 'sogliaRFA')
declare @sogliaRfaDB as decimal (18,0) = 0.0
declare @data_perf as datetime = '20200401'
-- -- -- CURSORE SEI -- -- --
SELECT distinct
'CURSORE SEI' CURSORE_SEI
, '--' CONDIZIONI
, Case When nar.rete is null Then 'OK' Else 'KO'End CONDIZIONE_AllocatedResources
, Case when ((patrimonioBF.ctv >= @sogliaRFA or contratti.data_perf < @data_perf) or (patrimonioBF.ctv >= 25000 and contratti.data_inizioavanzato < '20240412'))
then 'OK'
Else 'KO'
End CONDIZIONE_Soglie_e_Date
, @sogliaRFA sogliaRFA_RIFERIMENTO
, patrimonioBF.ctv
, @data_perf data_perf_RIFERIMENTO
, contratti.data_perf
, contratti.data_inizioavanzato
, '---' DATI
,contratti.Rete
,CASE WHEN UPPER(contratti.Rete) = 'F' THEN 'Fideuram' WHEN UPPER(contratti.Rete) = 'S' THEN 'Sanpaolo Invest' ELSE 'IW Private Investments' END NomeRete
,contratti.Cod_Agente Agente
,(CASE UPPER(ISNULL(promotori.STATO,'')) WHEN 'ATTIVO' THEN isnull(promotori.Cognome,'') ELSE '' END) CognomeAgente
,(CASE UPPER(ISNULL(promotori.STATO,'')) WHEN 'ATTIVO' THEN isnull(promotori.Nome,'') ELSE '' END) NomeAgente
,isnull(promotori.Indirizzo,'') IndirizzoAgente
,isnull(promotori.Cap,'') CapAgente
,isnull(promotori.Localita,'') CittaAgente
,isnull(promotori.TEL_Recapito,'') TelefonoAgente
,contratti.Cod_Fiscale CodiceFiscale
,clienti.Cognome CognomeCliente
,clienti.nome NomeCliente
,CASE WHEN isnull( MIFID.Profilo_Ass,0) = 0 THEN 0 ELSE 1 END ProfiloIsAct
,isnull(PatrNonRapprAsset.Controvalore,0) as PatrimonioNonRappresentabile
,isnull(patrimonioBF.PartiteViaggiantiDisInv,0) as PartiteViaggiantiDisInv
,isnull(partiteViaggianti.Importo,0) as PartiteViaggiantiInv
,isnull(patrimonioBF.ContoCorrente,0) as ContoCorrente
,isnull(patrimonioBF.PatrimonioSenzaCC,0) as PatrimonioBancaFideuramCtvAlNettoContoCorrente
,isnull(patrimonioBF.PatrimonioNonAssociato,0) as RisorseNonAssociate
,isnull(patrimonioAltro.Patrimonioaltro,0) as Patrimonioaltroctv
,isnull(patrimonioImmobiliare.PatrimonioImmob,0) as Patrimonioimmobiliarectv
,isnull(patrimonioTerzi.ctv,0) as PatrimonioTerzictv
,isnull(patrimonioTerzi.ControvaloreSenzaCC,0) as PatrimonioTerziCtvAlNettoContoCorrente
,isnull(patrimonioTerzi.ControvaloreCC,0) as PatrimonioTerziContoCorrente
,isnull(patrimonioBF.ctv,0) as Patrimoniobancafideuramctv
,(isnull(patrimonioBF.ctv,0) + isnull(patrimonioTerzi.ctv,0)) as Patrimoniocomplessivototalectv
,isnull(numIntermediari.NumeroIntermediari,0) as NumeroIntermediari
,contratti.CodiceContratto CodiceContratto
,contratti.tip_contratto--,2 as tip_contratto--
,case when contratti.tip_contratto=3 then 6 else 5 end as idModelloDiagnosi --5 as idModelloDiagnosi aggiunta per Fideuram Direct / Direct Banker
,1 as idReportDiagnosi
,'Diagnosi' as descrizioneDiagnosi
,-1 as idReportMonitoraggio
,719 as idModellotMonitoraggio
,'Monitoraggio' as descrizioneMonitoraggio
,contratti.AdesioneSuccessivaAvanzato AS AdesioneSuccessivaAvanzato
,CASE
WHEN RISCHIO_NA.VAR_PERC_PTF IS NULL THEN -1000
ELSE RISCHIO_NA.VAR_PERC_PTF
END AS VaRRisorseNonAssociate
,CASE
WHEN RISCHIO_NA.COPERTURA IS NULL THEN -1000
ELSE RISCHIO_NA.COPERTURA
END AS CoperturaRisorseNonAssociate
,CASE
WHEN RISCHIO_RISORSEFINANZIARIE.VAR_PERC_PTF IS NULL THEN -1000
ELSE RISCHIO_RISORSEFINANZIARIE.VAR_PERC_PTF
END AS VaRTotaleRisorseFinanziarie
,CASE
WHEN RISCHIO_NA.COPERTURA IS NULL THEN -1000
ELSE RISCHIO_RISORSEFINANZIARIE.COPERTURA
END AS CoperturaTotaleRisorseFinanziarie,
0 As NoMonitoraggio,
CASE
WHEN (SELECT count(*) FROM c6mart.GESTIONE_PDF_FTP WHERE codicefiscale = contratti.cod_fiscale AND rete = contratti.Rete ) > 0 THEN 1 ELSE 0
END AS ContrattoOld,
0 AS IdReportPDFDiagnosi,
0 AS IdReportPDFMonitoraggio ,
---- aggiunti il 09/3/2018 con pubblicazione nuovo software gestione accorpamento lettere e servizi aggiuntivi
CASE
WHEN (SELECT count(*) FROM c6mart.GESTIONE_PDF_FTP WHERE codicefiscale = contratti.cod_fiscale AND rete = contratti.Rete ) > 0 THEN 1 ELSE 0
END AS ContrattoOld,
0 AS IdReportPDFDiagnosi,
0 AS IdReportPDFMonitoraggio,
0 as flagnqp,
0 as flagprlrde,
-- modifica del 22/10/2018 - il flag professionale è più sotto- questo è un errore
------0 as Flgprof,
0 as flagpg
----------------------------------------------------- fine 09/3/2018
,
case contratti.TipoConsulenza
when 'P' then 'S'
when 'D' then 'N'
else 'N'
end as Flgprof
from C6Mart.RP_vContrattiPerGenerazioneReport contratti
left join C6Mart.ANAG_PROMOTORI promotori
on contratti.Rete = promotori.Rete
and contratti.Cod_Agente = promotori.Id_Promotore
left join C6Mart.tbNotAllocatedResources as nar --pk
on contratti.Rete = nar.Rete --pk
and contratti.Cod_Fiscale = nar.Cod_Fiscale --pk
left join C6Mart.ANAG_CLIENTI clienti
on contratti.Rete = clienti.Rete
and contratti.Cod_Fiscale = clienti.Cod_Fiscale
INNER join C6Mart.vPatrimoniobfAggregato_SenzaNobPrez patrimonioBF
on contratti.Rete = patrimonioBF.Rete
and contratti.Cod_Fiscale = patrimonioBF.Cod_Fiscale
left outer join C6Mart.vPatrimonioAltroAggregato patrimonioAltro
on contratti.Rete = patrimonioAltro.Rete
and contratti.Cod_Fiscale = patrimonioAltro.Cod_Fiscale
left outer join C6Mart.vPatrimonioImmobAggregato patrimonioImmobiliare
on contratti.Rete = patrimonioImmobiliare.Rete
and contratti.Cod_Fiscale = patrimonioImmobiliare.Cod_Fiscale
left outer join C6Mart.vPatrimonioTerziAggregato patrimonioTerzi
on contratti.Rete = patrimonioTerzi.Rete
and contratti.Cod_Fiscale = patrimonioTerzi.Cod_Fiscale
left outer join C6Mart.MIFID MIFID
on contratti.Rete = MIFID.Rete
and contratti.Cod_Fiscale = MIFID.Cod_Fiscale
left outer join C6Mart.vPatrimonioNonRappresentabileAsset PatrNonRapprAsset
on contratti.Rete = PatrNonRapprAsset.Rete
and contratti.Cod_Fiscale = PatrNonRapprAsset.Cod_Fiscale
left outer join C6Mart.vNumeroIntermediari numIntermediari
on contratti.Rete = numIntermediari.Rete
and contratti.Cod_Fiscale = numIntermediari.Cod_Fiscale
left outer join C6Mart.RISCHIO_AGGREGATO RISCHIO_NA
on contratti.Rete = RISCHIO_NA.Rete
and contratti.Cod_Fiscale = RISCHIO_NA.Cod_Fiscale
and RISCHIO_NA.cod_aggreg = 'COMPLESSIVO|BF|NA'
left outer join C6Mart.RISCHIO_AGGREGATO RISCHIO_RISORSEFINANZIARIE
on contratti.Rete = RISCHIO_RISORSEFINANZIARIE.Rete
and contratti.Cod_Fiscale = RISCHIO_RISORSEFINANZIARIE.Cod_Fiscale
and RISCHIO_RISORSEFINANZIARIE.cod_aggreg = 'COMPLESSIVO|BF'
left outer join C6Mart.PARTITE_VIAGGIANTI PARTITEVIAGGIANTI
on contratti.Rete = PARTITEVIAGGIANTI.RETE
and contratti.Cod_Fiscale = PARTITEVIAGGIANTI.COD_FISCALE
--left join c6mart.vcontrattic6 vcontr
--on vcontr.codicecontratto = contratti.codicecontratto
where 1=1
and contratti.Rete in ('F', 'S', 'W')
and contratti.Cod_Fiscale = @CF
and contratti.tip_contratto != 3
-- -- -- DIRECT -- -- --
SELECT distinct
'CURSORE DIRECT' CURSORE_DIRECT
, '--' CONDIZIONI
, Case When nar.rete is null Then 'OK' Else 'KO'End CONDIZIONE_AllocatedResources
, Case when exists (select 1 from c6staging.VAR_ADEGUATEZZA_INDICATORI ind Where ind.CODICE_FISCALE = contratti.Cod_Fiscale and ind.rete = contratti.rete) Then 'OK' Else 'KO'End CONDIZIONE_ADEGUATEZZA_INDICATORI
, Case when (patrimonioBF.ctv >= @sogliaRFADB and vcontr.data_perf < @data_perf)
then 'OK'
Else 'KO'
End CONDIZIONE_SoglieDate
, @sogliaRFAdb sogliaRFA_RIFERIMENTO
, patrimonioBF.ctv
, @data_perf data_perf_RIFERIMENTO
, contratti.data_perf
, '---' DATI
, contratti.Rete
,CASE WHEN UPPER(contratti.Rete) = 'F' THEN 'Fideuram' WHEN UPPER(contratti.Rete) = 'S' THEN 'Sanpaolo Invest' ELSE 'IW Private Investments' END NomeRete
,contratti.Cod_Agente Agente
,(CASE UPPER(ISNULL(promotori.STATO,'')) WHEN 'ATTIVO' THEN isnull(promotori.Cognome,'') ELSE '' END) CognomeAgente
,(CASE UPPER(ISNULL(promotori.STATO,'')) WHEN 'ATTIVO' THEN isnull(promotori.Nome,'') ELSE '' END) NomeAgente
,isnull(promotori.Indirizzo,'') IndirizzoAgente
,isnull(promotori.Cap,'') CapAgente
,isnull(promotori.Localita,'') CittaAgente
,isnull(promotori.TEL_Recapito,'') TelefonoAgente
,contratti.Cod_Fiscale CodiceFiscale
,clienti.Cognome CognomeCliente
,clienti.nome NomeCliente
,CASE WHEN isnull( MIFID.Profilo_Ass,0) = 0 THEN 0 ELSE 1 END ProfiloIsAct
,isnull(PatrNonRapprAsset.Controvalore,0) as PatrimonioNonRappresentabile
,isnull(patrimonioBF.PartiteViaggiantiDisInv,0) as PartiteViaggiantiDisInv
,isnull(partiteViaggianti.Importo,0) as PartiteViaggiantiInv
,isnull(patrimonioBF.ContoCorrente,0) as ContoCorrente
,isnull(patrimonioBF.PatrimonioSenzaCC,0) as PatrimonioBancaFideuramCtvAlNettoContoCorrente
,isnull(patrimonioBF.PatrimonioNonAssociato,0) as RisorseNonAssociate
,isnull(patrimonioAltro.Patrimonioaltro,0) as Patrimonioaltroctv
,isnull(patrimonioImmobiliare.PatrimonioImmob,0) as Patrimonioimmobiliarectv
,isnull(patrimonioTerzi.ctv,0) as PatrimonioTerzictv
,isnull(patrimonioTerzi.ControvaloreSenzaCC,0) as PatrimonioTerziCtvAlNettoContoCorrente
,isnull(patrimonioTerzi.ControvaloreCC,0) as PatrimonioTerziContoCorrente
,isnull(patrimonioBF.ctv,0) as Patrimoniobancafideuramctv
,(isnull(patrimonioBF.ctv,0) + isnull(patrimonioTerzi.ctv,0)) as Patrimoniocomplessivototalectv
,isnull(numIntermediari.NumeroIntermediari,0) as NumeroIntermediari
,contratti.CodiceContratto CodiceContratto
,contratti.tip_contratto
,case when contratti.tip_contratto=3 then 6 else 5 end as idModelloDiagnosi --5 as idModelloDiagnosi aggiunta per Fideuram Direct / Direct Banker
,1 as idReportDiagnosi
,'Diagnosi' as descrizioneDiagnosi
,-1 as idReportMonitoraggio
,719 as idModellotMonitoraggio
,'Monitoraggio' as descrizioneMonitoraggio
,contratti.AdesioneSuccessivaAvanzato AS AdesioneSuccessivaAvanzato
,CASE
WHEN RISCHIO_NA.VAR_PERC_PTF IS NULL THEN -1000
ELSE RISCHIO_NA.VAR_PERC_PTF
END AS VaRRisorseNonAssociate
,CASE
WHEN RISCHIO_NA.COPERTURA IS NULL THEN -1000
ELSE RISCHIO_NA.COPERTURA
END AS CoperturaRisorseNonAssociate
,CASE
WHEN RISCHIO_RISORSEFINANZIARIE.VAR_PERC_PTF IS NULL THEN -1000
ELSE RISCHIO_RISORSEFINANZIARIE.VAR_PERC_PTF
END AS VaRTotaleRisorseFinanziarie
,CASE
WHEN RISCHIO_NA.COPERTURA IS NULL THEN -1000
ELSE RISCHIO_RISORSEFINANZIARIE.COPERTURA
END AS CoperturaTotaleRisorseFinanziarie,
0 As NoMonitoraggio,
CASE
WHEN (SELECT count(*) FROM c6mart.GESTIONE_PDF_FTP WHERE codicefiscale = contratti.cod_fiscale AND rete = contratti.Rete ) > 0 THEN 1 ELSE 0
END AS ContrattoOld,
0 AS IdReportPDFDiagnosi,
0 AS IdReportPDFMonitoraggio ,
---- aggiunti il 09/3/2018 con pubblicazione nuovo software gestione accorpamento lettere e servizi aggiuntivi
CASE
WHEN (SELECT count(*) FROM c6mart.GESTIONE_PDF_FTP WHERE codicefiscale = contratti.cod_fiscale AND rete = contratti.Rete ) > 0 THEN 1 ELSE 0
END AS ContrattoOld,
0 AS IdReportPDFDiagnosi,
0 AS IdReportPDFMonitoraggio,
0 as flagnqp,
0 as flagprlrde,
-- modifica del 22/10/2018 - il flag professionale è più sotto- questo è un errore
------0 as Flgprof,
0 as flagpg
----------------------------------------------------- fine 09/3/2018
,
case contratti.TipoConsulenza
when 'P' then 'S'
when 'D' then 'N'
else 'N'
end as Flgprof
from C6Mart.RP_vContrattiPerGenerazioneReport contratti
left join C6Mart.ANAG_PROMOTORI promotori
on contratti.Rete = promotori.Rete
and contratti.Cod_Agente = promotori.Id_Promotore
left join C6Mart.tbNotAllocatedResources as nar --pk
on contratti.Rete = nar.Rete --pk
and contratti.Cod_Fiscale = nar.Cod_Fiscale --pk
left join C6Mart.ANAG_CLIENTI clienti
on contratti.Rete = clienti.Rete
and contratti.Cod_Fiscale = clienti.Cod_Fiscale
INNER join C6Mart.vPatrimoniobfAggregato_SenzaNobPrez patrimonioBF
on contratti.Rete = patrimonioBF.Rete
and contratti.Cod_Fiscale = patrimonioBF.Cod_Fiscale
left outer join C6Mart.vPatrimonioAltroAggregato patrimonioAltro
on contratti.Rete = patrimonioAltro.Rete
and contratti.Cod_Fiscale = patrimonioAltro.Cod_Fiscale
left outer join C6Mart.vPatrimonioImmobAggregato patrimonioImmobiliare
on contratti.Rete = patrimonioImmobiliare.Rete
and contratti.Cod_Fiscale = patrimonioImmobiliare.Cod_Fiscale
left outer join C6Mart.vPatrimonioTerziAggregato patrimonioTerzi
on contratti.Rete = patrimonioTerzi.Rete
and contratti.Cod_Fiscale = patrimonioTerzi.Cod_Fiscale
left outer join C6Mart.MIFID MIFID
on contratti.Rete = MIFID.Rete
and contratti.Cod_Fiscale = MIFID.Cod_Fiscale
left outer join C6Mart.vPatrimonioNonRappresentabileAsset PatrNonRapprAsset
on contratti.Rete = PatrNonRapprAsset.Rete
and contratti.Cod_Fiscale = PatrNonRapprAsset.Cod_Fiscale
left outer join C6Mart.vNumeroIntermediari numIntermediari
on contratti.Rete = numIntermediari.Rete
and contratti.Cod_Fiscale = numIntermediari.Cod_Fiscale
left outer join C6Mart.RISCHIO_AGGREGATO RISCHIO_NA
on contratti.Rete = RISCHIO_NA.Rete
and contratti.Cod_Fiscale = RISCHIO_NA.Cod_Fiscale
and RISCHIO_NA.cod_aggreg = 'COMPLESSIVO|BF|NA'
left outer join C6Mart.RISCHIO_AGGREGATO RISCHIO_RISORSEFINANZIARIE
on contratti.Rete = RISCHIO_RISORSEFINANZIARIE.Rete
and contratti.Cod_Fiscale = RISCHIO_RISORSEFINANZIARIE.Cod_Fiscale
and RISCHIO_RISORSEFINANZIARIE.cod_aggreg = 'COMPLESSIVO|BF'
left outer join C6Mart.PARTITE_VIAGGIANTI PARTITEVIAGGIANTI
on contratti.Rete = PARTITEVIAGGIANTI.RETE
and contratti.Cod_Fiscale = PARTITEVIAGGIANTI.COD_FISCALE
left join c6mart.vcontrattic6 vcontr
on vcontr.codicecontratto = contratti.codicecontratto
where 1=1
and contratti.Rete in ('F', 'S', 'W')
and contratti.Cod_Fiscale = @CF
and contratti.tip_contratto = 3
-- Tabelle di riferimento
select '-vinfocliente' vinfocliente,* from consuni.consulenzaunica.dbo.vinfocliente where codfis=@cf
select '-rp_vtuttiicontratti-' rp_vtuttiicontratti,* from c6mart.rp_vtuttiicontratti where Cod_fiscale=@cf
select '-rp_vcontrattipergenerazionereport-' rp_vcontrattipergenerazionereport,* from c6mart.rp_vcontrattipergenerazionereport where Cod_Fiscale=@cf
select '-gestione_email-' gestione_email,* from c6mart.gestione_email where Cod_Fiscale=@cf
select '-gestione_pdf_ftp-' gestione_pdf_ftp,* from c6mart.gestione_pdf_ftp where CodiceFiscale=@cf
select '-Contratti_Da_Escludere-' Contratti_Da_Escludere, * from C6Mart.Contratti_Da_Escludere where cod_fiscale=@cf
select '-tbNotAllocatedResources-' tbNotAllocatedResources, * from C6Mart.tbNotAllocatedResources where COD_FISCALE = @cf
select '-C6Staging.rp_Consulenza-' rp_Consulenza, * from C6Staging.rp_Consulenza where COD_FISCALE = @cf
select '-C6staging.Spb_Contr_Sintesi-' Spb_Contr_Sintesi,* from C6staging.Spb_Contr_Sintesi where CODICEFISCALE = @cf
select '-vPatrimoniobfAggregato-' as Vista_PatrimoniobfAggregato, * from [C6Mart].[vPatrimoniobfAggregato] where COD_FISCALE = @cf
union
select '-vPatrimoniobfAggregato_senzaNobPrez-' as Vista , * from [C6Mart].[vPatrimoniobfAggregato_SenzaNobPrez] where COD_FISCALE = @cf
END