-- Schema: C6Mart
-- Stored Procedure: RP_DM_POPOLACONTRATTI_20160315












--create view as
 
CREATE procedure [C6Mart].[RP_DM_POPOLACONTRATTI_20160315] AS
BEGIN

INSERT INTO LOG_ESECUZIONE
		(Nome, Inizio, Nota)
	VALUES (
		'RP_DM_POPOLACONTRATTI',
		GETDATE(),
		'Elaborazione giornaliera'
	)	
	


-- LOG CAMBIO COD_FISCALE RETE ***************************************************************************************
 INSERT INTO c6mart.test_logmd
         SELECT 'VARZ CF RETE',GETDATE(),VC.COD_FISCALE,VC.RETE,			  
				NULL AS RIATTIVAZIONE_1,NULL AS TIPOCONTRATTO_1,
				NULL AS RIATTIVAZIONE_2,NULL AS TIPOCONTRATTO_2,
				NULL AS RIATTIVAZIONE_3,NULL AS TIPOCONTRATTO_3,NULL AS INVIO_3, 
				'da ' + VC.cod_fiscale +'-'+ VC.RETE + ' a ' + C6.cod_fiscale +'-'+ C6.RETE	 
	     FROM C6MART.VCONTRATTI VC 
	     JOIN [C6Mart].[vContrattiC6]  C6 
	     ON VC.chiaveClientePB = C6.CHIAVECLIENTEPB
	     WHERE VC.cod_fiscale <> C6.cod_fiscale OR VC.RETE <> C6.RETE 	     
--********************************************************************************************************************	     
				      
	     
	      
 
 
 

TRUNCATE TABLE C6MART.VCONTRATTI
--DELETE C6MART.VCONTRATTI 
--	WHERE chiaveClientePB in (SELECT chiaveClientePB  FROM [C6Mart].[vContrattiC6])
	
 
INSERT INTO  C6MART.VCONTRATTI
	SELECT * FROM [C6Mart].[vContrattiC6] 
	

INSERT INTO [C6Mart].[CONTRATTOSEI_METADATI]
           ([CHIAVECLIENTEPB]
           ,[ClienteMIGRATO]
           ,[RISORSENA]
           ,[PROFILOATTIVO]
           ,[NumSolleciti]
           ,[NumRevoche]
           ,[Data_ultimoSollecito]
           ,[Data_ultimaRevoca]
           ,[InvioBenvenuto]
           ,[Tip_riattivazione]
           ,[Tip_contratto])           
     SELECT    
			A.CHIAVECLIENTEPB,
			NULL,
			NULL,
			NULL,
			0,
			0,
			NULL,
			NULL,
			'N',
			A.Riattivazione,
			A.Tip_Contratto
	 FROM C6MART.VCONTRATTI A
	 LEFT JOIN [C6Mart].[CONTRATTOSEI_METADATI] B
		ON A.chiaveClientePB = B.CHIAVECLIENTEPB
	 WHERE B.CHIAVECLIENTEPB IS NULL 
	  
---- FCianfa: INIZIO FORZATURA per errore giornaliero del 31/07/2015, il cliente non è censito in C6Mart.ANAG_CLIENTI

--	DELETE  from C6MART.VCONTRATTI
--	where rete+cod_fiscale = 'FFF@9700'
	
----FINE FORZATURA


   	
	 
-- CASO NUOVO CONTRATTO ***************************************************************************************
INSERT INTO c6mart.test_logmd 
SELECT 'NUOVO CONTRATTO',GETDATE(),VC.COD_FISCALE,VC.RETE,
VC.riattivazione     AS RIATTIVAZIONE_1,VC.tip_contratto AS TIPOCONTRATTO_1,
MD.tip_riattivazione AS RIATTIVAZIONE_2,MD.tip_Contratto AS TIPOCONTRATTO_2,
VC.Riattivazione     AS RIATTIVAZIONE_3,VC.Tip_Contratto AS TIPOCONTRATTO_3,'N' AS INVIO_3,''
FROM [C6Mart].[CONTRATTOSEI_METADATI] MD inner join
         (select VC1.cod_fiscale,VC1.rete,VC1.chiaveClientePB,VC1.Riattivazione,VC1.Tip_Contratto
	     FROM C6MART.VCONTRATTI VC1 
	     JOIN [C6Mart].[CONTRATTOSEI_METADATI]  MC1 
	     ON VC1.chiaveClientePB = MC1.CHIAVECLIENTEPB
	     LEFT JOIN c6mart.gestione_pdf_ftp  PDF1
	     ON SUBSTRING(PDF1.NomeFile, 1, 11) = VC1.CODICECONTRATTO
	     WHERE MC1.INVIOBENVENUTO = 'S' AND PDF1.CODICEFISCALE IS NULL) VC
 ON VC.chiaveClientePB = MD.chiaveClientePB	       
	       
	       
UPDATE [C6Mart].[CONTRATTOSEI_METADATI] SET 
--SELECT     
TIP_RIATTIVAZIONE =VC.Riattivazione, TIP_CONTRATTO=VC.Tip_Contratto
,NumSolleciti=0,NumRevoche=0,Data_ultimoSollecito=null,Data_ultimaRevoca=null,InvioBenvenuto='N' 
FROM [C6Mart].[CONTRATTOSEI_METADATI] MD inner join
         (select VC1.chiaveClientePB,VC1.Riattivazione,VC1.Tip_Contratto
	     FROM C6MART.VCONTRATTI VC1 
	     JOIN [C6Mart].[CONTRATTOSEI_METADATI]  MC1 
	     ON VC1.chiaveClientePB = MC1.CHIAVECLIENTEPB
	     LEFT JOIN c6mart.gestione_pdf_ftp  PDF1
	     ON SUBSTRING(PDF1.NomeFile, 1, 11) = VC1.CODICECONTRATTO
	     WHERE MC1.INVIOBENVENUTO = 'S' AND PDF1.CODICEFISCALE IS NULL) VC
 ON VC.chiaveClientePB = MD.chiaveClien
