CREATE procedure [C6StagingPeriodico].[RP_ST_APPO_CONTRATTI_OLD]
AS
-- Log esecuzione
	INSERT INTO LOG_ESECUZIONE
		(Nome, Inizio, Nota)
	VALUES (
		'RP_ST_APPO_CONTRATTI',
		GETDATE(),
		'Elaborazione trimestrale'
	)
SELECT C.COD_FISCALE, C.RETE 
INTO #CONTRATTI_DA_CONSIDERARE_ATTIVI
FROM 
   C6StagingPeriodico.ContrattiPreTrimestrale c 
INNER JOIN 
   C6Mart.Gestione_PDF_FTP g
ON 
   c.cod_fiscale = g.CodiceFiscale
AND
   c.rete = g.Rete
AND 
   g.NomeFile like '%' + c.codiceContratto + '%'
WHERE 
   ISNULL(Data_FineAvanzato, CAST('99991231' AS datetime)) > C6MartPeriodico.GetPreviousTrimestre(getdate(), 0)  /*Precedente Trimestrale*/
AND g.DataGenerazione < C6MartPeriodico.GetTrimestre2(getdate(),1)
AND c.InvioBenvenuto = 'S'
GROUP BY C.COD_FISCALE, C.RETE
SELECT * 
INTO #CONTRATTI_DA_CONSIDERARE
FROM #CONTRATTI_DA_CONSIDERARE_ATTIVI 
UNION 
SELECT case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF END AS CF, C.RETE 
FROM 
   #CONTRATTI_DA_CONSIDERARE_ATTIVI a
RIGHT JOIN
   [C6StagingPeriodico].[GetContrattiChiusiFromSEI] (
   C6MartPeriodico.getPreviousTrimestre(getDate(), 0), 
   c6martperiodico.getTrimestre(getDAte(), 0)) c
ON
    a.cod_fiscale = case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF END
AND
   a.RETE = c.RETE
INNER JOIN 
   C6Mart.Gestione_PDF_FTP g
ON 
   case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF end = g.CodiceFiscale
AND
   C.rete = g.Rete
AND 
   g.NomeFile like '%' + c.COD_CONF + '%'
WHERE 
   a.Rete is null  
   AND ISNULL(c.DATA_CHIUSURA_C6, CAST('99991231' AS datetime)) > C6MartPeriodico.GetPreviousTrimestre(getdate(), 0)  /*Precedente Trimestrale*/
AND g.DataGenerazione < C6MartPeriodico.GetTrimestre2(getdate(),1)
GROUP BY C.CF, C.RETE
TRUNCATE TABLE C6StagingPERIODICO.APPO_CONTRATTI
--INSERT INTO C6StagingPERIODICO.APPO_CONTRATTI_TEST select * from C6StagingPERIODICO.APPO_CONTRATTI
INSERT INTO C6StagingPERIODICO.APPO_CONTRATTI
SELECT 
    C.*
FROM 
   C6StagingPeriodico.ContrattiPreTrimestrale c 
INNER JOIN 
   #CONTRATTI_DA_CONSIDERARE D
ON
   C.RETE = D.RETE
AND 
   C.COD_FISCALE = D.COD_FISCALE
UNION
SELECT 
c.chiaveClientePB,	
case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF END as COD_FISCALE,	
NULL as COD_MANDATO,	 
PIVA as PIVA_FIDUCIARIA,	
PB	as COD_AGENTE,
c.RETE,
COD_CONF as codiceContratto,
NULL as flagRol,
c.INDIRIZZO,	
c.CAP,	
c.CITTA,
PROV as PROVINCIA,	
c.NAZIONE,	
null as PRESSO,
c.EMAIL,	
FREQUENZA_DIAGNOSI	as FREQ_DIAGNOSI,
FREQUENZA_MONITORAGGIO as FREQ_MONITORAGGIO,	
FLAG_STAMPA_REPORT	as GENERAZIONEREPORT,
DATA_SOTTOSCRIZIONE_CB as DATA_INIZIOBASE,	
DATA_CHIUSURA_CB as DATA_FINEBASE,
DATA_PERFEZIONAMENTO_CB	as DATA_PERF_BASE,
DATA_PERFEZIONAMENTO_C6	 as DATA_PERF,	
DATA_SOTTOSCRIZIONE_C6	as DATA_INZIOAVANZATO,
DATA_CHIUSURA_C6 as DATA_FINEAVANZATO,
null as RIATTIVAZIONE,	
null as TIP_CONTRATTO,	
null as TIP_RIATTIVAZIONE,	
'S' as ClienteMIGRATO,	
'N' as RISORSENA,	
1 as PROFILOATTIVO,	
0 as NumSolleciti,	
0 as NumRevoche,	
null as Data_ultimoSollecito,	
null as Data_ultimaRevoca,	
'S' as InvioBenvenuto
FROM 
C6StagingPeriodico.ContrattiPreTrimestrale t 
RIGHT JOIN 
   [C6StagingPeriodico].[GetContrattiChiusiFromSEI] (
   c6MartPeriodico.getPreviousTrimestre(getDate(), 0), 
   c6martperiodico.getTrimestre(getDAte(), 0)) c 
ON
   t.RETE = c.RETE
AND 
   t.Cod_Fiscale = case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF END
INNER JOIN 
   #CONTRATTI_DA_CONSIDERARE D
ON
   C.RETE = D.RETE
AND 
   case when len(c.CF) < 16 then 'FF@' + c.CF else c.CF END = D.COD_FISCALE
WHERE 
   t.rete is null
	-- Log esecuzione
	UPDATE
		LOG_ESECUZIONE
	SET
		Fine = GETDATE(),
		Tipo = 'INSERT',
		Righe = @@ROWCOUNT
	WHERE
		Nome = 'RP_ST_APPO_CONTRATTI' AND
		Inizio = (
			SELECT
				MAX(Inizio)
			FROM
				LOG_ESECUZIONE
			WHERE
				Nome = 'RP_ST_APPO_CONTRATTI'
		)
--select count(*) from C6StagingPERIODICO.APPO_CONTRATTI_TEST
--select count(*) from C6StagingPERIODICO.APPO_CONTRATTI
--select count(*) from vcontrcong0913
--select v.* from #CONTRATTI_DA_CONSIDERARE t
--right join vcontrcong0913 v
--on t.rete= v.rete
--and t.cod_fiscale = v.cod_fiscale
--where t.rete is null
--select top 1 * from 
--[consevo].consulenzabasefl.dbo.cbs_AvanzatiChiusi c 
--where cf = '4200'