﻿-- =============================================  
-- Author:  Caruso Fabrizio  
-- Create date: 17/09/2014  
-- Description:   
-- Individuazione dei Clienti che presentano un disallineamento tra l’importo associato ad una determinata   
-- area di bisogno e l’eventuale importo che risulta nei dati di Monitoraggio per la medesima Area di Bisogno   
-- (per ogni cliente si prevede l’inserimento di un record di segnalazione per ciascuna area di bisogno che risulta   
-- disallineata con l’indicazione, nel campo descrizione, dell’area a cui si riferisce il disallineamento)  
-- Impostazione Codice TIPO CONTROLLO per il controllo specifico   
-- ( per riferimenti al tipo controllo verificare tabella "tb_tipocontrollo" )  
-- =============================================  
CREATE procedure [C6MartPeriodico].[SP_DQ_VerificaDisallineati]  
@idFaseElaborazione int  
AS  
BEGIN  
--drop table #tab_temp  
--drop table #TbErrori  
Declare @idTipoControllo int  
set @idTipoControllo=9     
CREATE TABLE #tab_temp(  
 [Rete] varchar(1) NOT NULL,  
 [Cod_Fiscale] varchar(16) NOT NULL,  
 id_Area varchar(10) NULL,  
 mon_area varchar(10) NULL,  
 bf_ordprorg int NULL,  
 CTV_MONIT decimal(12,2) NULL,  
 SUM_CTV decimal(12,2) NULL,  
 delta   decimal(12,2) null,  
 CodProg  int)  
insert into #tab_temp  
exec [C6MartPeriodico].[SP_DQ_SelezioneDisallineati]  
select *,@idTipoControllo idTipoControllo  
    into #TbErrori  
from #tab_temp  
declare @idElab  int  
select @idElab=max(id_elab) from  c6martperiodico.elaborazioni  
--select * from c6martperiodico.tb_tipocontrollo  
Insert into C6MartPeriodico.TB_SegnalazioniDataQuality  
(   
idTipoControllo,  
rete,  
codiceFiscale,  
descSegnalazione,  
idElaborazione,  
richiesta,  
idFaseElaborazione)  
select tbErr.idTipoControllo,rete,cod_fiscale,  
Replace(Replace(replace(DescSegnalazione,'area$',tbErr.mon_area),'ctv$',tbErr.CTV_MONIT),'delta$',tbErr.delta)  
,@idelab,'',@idFaseElaborazione  
from #TbErrori tbErr  
inner join c6martperiodico.tb_tipocontrollo Tipo  
on tbErr.idtipocontrollo = tipo.idTipoControllo  
end