-- ============================================= -- Author: Paolo Giovanetti -- Create date: 21 gennaio 2009 -- Description: Effettua una storicizzazione del DataMart prima dell'import di nuovi dati. -- ============================================= -- [C6MartPeriodico].[SRV_STORICIZZAZIONE] 'GESTIONE_EMAIL' CREATE PROCEDURE [C6MartPeriodico].[SRV_STORICIZZAZIONE_OLD] @NomeTabella AS VARCHAR(50) = NULL AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- Insert statements for procedure here DECLARE @ID_ELAB INT -- Elaborazione da storicizzare DECLARE @MIN_ID_ELAB AS INT -- Elaborazione vecchia da eliminare dallo storico DECLARE @TempoStoricoC6 AS INT -- Numero di giorni di vita dello storico SET @TempoStoricoC6 = dbo.getparametro('TempoStoricoC6') SELECT @MIN_ID_ELAB = ISNULL(MAX(ID_ELAB),0) FROM C6MARTPERIODICO.ELABORAZIONI WHERE DATEDIFF(DAY,DATA_OPERAZIONE,GETDATE()) > @TempoStoricoC6 SET @ID_ELAB = C6MARTPERIODICO.GETIDELAB() -- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX TABELLA SPECIALE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --XXXXXXXXXXXXXXXXXXXXXXXX CONTRATTOSEI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CONTRATTOSEI') BEGIN DELETE FROM C6StoricoPeriodico.CONTRATTOSEI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CONTRATTOSEI (Rete, Cod_Fiscale, Data_Sott, CodiceContratto, Cod_Agente, Data_Perf_Base, Data_Perf, Fascia_CPP, Email, Indirizzo, CAP, Citta, Prov, Nazione, Presso, Data_Inizio, Freq_Diagnosi, Freq_Monitor, Freq_DiagnosiPrec, Freq_MonitorPrec, Data_InizioConsInv, Data_InizioBase, Data_FineBase, Data_InizioAvanzato, Data_FineAvanzato, ProgressivoInvio, GenerazioneReport, InvioBenvenuto, DataUltimoInvio, ClienteMigrato, RisorseNA, NumSolleciti, Data_UltimoSollecito, NumRevoche, Data_UltimaRevoca, Note, ID_ELAB) SELECT Rete, Cod_Fiscale, Data_Sott, CodiceContratto, Cod_Agente, Data_Perf_Base, Data_Perf, Fascia_CPP, Email, Indirizzo, CAP, Citta, Prov, Nazione, Presso, Data_Inizio, Freq_Diagnosi, Freq_Monitor, Freq_DiagnosiPrec, Freq_MonitorPrec, Data_InizioConsInv, Data_InizioBase, Data_FineBase, Data_InizioAvanzato, Data_FineAvanzato, ProgressivoInvio, GenerazioneReport, InvioBenvenuto, DataUltimoInvio, ClienteMigrato, RisorseNA, NumSolleciti, Data_UltimoSollecito, NumRevoche, Data_UltimaRevoca, Note, @ID_ELAB FROM C6Mart.CONTRATTOSEI --WHERE ID_ELAB = @ID_ELAB END -- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX FINE TABELLA SPECIALE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CC XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CC') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_CC WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_CC (RETE, COD_FISCALE, INTERMEDIARIO, COINTEST, COD_CC, FASCIA_CPP, SALDO, DATA_APERTURA, DATA_CHIUSURA, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, INTERMEDIARIO, COINTEST, COD_CC, FASCIA_CPP, SALDO, DATA_APERTURA, DATA_CHIUSURA, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_CC WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CC_TERZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CC_TERZI') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_CC_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_CC_TERZI (RETE, COD_FISCALE, INTERMEDIARIO, COINTEST, COD_CC, FASCIA_CPP, SALDO, DATA_APERTURA, DATA_CHIUSURA, ID_ELAB) SELECT RETE, COD_FISCALE, INTERMEDIARIO, COINTEST, COD_CC, FASCIA_CPP, SALDO, DATA_APERTURA, DATA_CHIUSURA, ID_ELAB FROM C6MartPeriodico.ANAG_CC_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CLIENTI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CLIENTI') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_CLIENTI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_CLIENTI (RETE, COD_FISCALE, NOME, COGNOME, DATA_NASCITA, STATO_CIVILE, NUM_COMPONENTI, NUM_FIGLI, ETA, PARTITA_IVA, CITTADINANZA, PERSONA_FIS_GIUR, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, PRESSO, TEL_RECAPITO, TEL_CELL, E_MAIL, DATA_INIZIO, DATA_FINE, STATO, RAG_SOC, SESSO, ID_PROMOTORE, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, NOME, COGNOME, DATA_NASCITA, STATO_CIVILE, NUM_COMPONENTI, NUM_FIGLI, ETA, PARTITA_IVA, CITTADINANZA, PERSONA_FIS_GIUR, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, PRESSO, TEL_RECAPITO, TEL_CELL, E_MAIL, DATA_INIZIO, DATA_FINE, STATO, RAG_SOC, SESSO, ID_PROMOTORE, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_CLIENTI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CLIENTI_PREV XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CLIENTI_PREV') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_CLIENTI_PREV WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_CLIENTI_PREV (RETE, COD_FISCALE, STATO_LAVORATIVO, PROFESSIONE, CAT_PROFESSIONALE, DATA_INIZIO, DATA_FINE, RETRIB_LORDA, PROFESSIONE_SEC, CAT_PROFESSIONALE_SEC, DATA_INIZIO_SEC, DATA_FINE_SEC, RETRIB_LORDA_SEC, PROFESSIONE_PREC, CAT_PROFESSIONALE_PREC, DATA_INIZIO_PREC, DATA_FINE_PREC, RETRIB_LORDA_PREC, RICONGIUNZIONE, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, STATO_LAVORATIVO, PROFESSIONE, CAT_PROFESSIONALE, DATA_INIZIO, DATA_FINE, RETRIB_LORDA, PROFESSIONE_SEC, CAT_PROFESSIONALE_SEC, DATA_INIZIO_SEC, DATA_FINE_SEC, RETRIB_LORDA_SEC, PROFESSIONE_PREC, CAT_PROFESSIONALE_PREC, DATA_INIZIO_PREC, DATA_FINE_PREC, RETRIB_LORDA_PREC, RICONGIUNZIONE, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_CLIENTI_PREV WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_PRODOTTI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_PRODOTTI') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_PRODOTTI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_PRODOTTI (COD_PRODOTTO, COD_ISIN, PAESE, ID_AREA, CAT_PRODOTTO, TIPO_PRODOTTO, DESCR_PRODOTTO, DIV_QUOTAZIONE, DIV_REGOLAMENTO, ID_EMITTENTE, MERCATO_CONTRATT, COD_MAF, RATING, COD_ADEGUATEZZA, COD_SOTTOPRODOTTO, COD_INTERNO, ID_ELAB, TIPO_ELAB) SELECT COD_PRODOTTO, COD_ISIN, PAESE, ID_AREA, CAT_PRODOTTO, TIPO_PRODOTTO, DESCR_PRODOTTO, DIV_QUOTAZIONE, DIV_REGOLAMENTO, ID_EMITTENTE, MERCATO_CONTRATT, COD_MAF, RATING, COD_ADEGUATEZZA, COD_SOTTOPRODOTTO, COD_INTERNO, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_PRODOTTI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_PRODOTTI_TERZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_PRODOTTI_TERZI') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_PRODOTTI_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_PRODOTTI_TERZI (COD_PRODOTTO, COD_PRODOTTO_TERZI, NOME_PRODOTTO, ALBERO_PRODOTTI, COD_ISIN, DESCR_PRODOTTO, DIV_QUOTAZIONE, INTERMEDIARIO, DIV_REGOLAMENTO, ID_EMITTENTE, MERCATO_CONTRATT, PAESE, RATING, ID_ELAB, TIPO_ELAB) SELECT COD_PRODOTTO, COD_PRODOTTO_TERZI, NOME_PRODOTTO, ALBERO_PRODOTTI, COD_ISIN, DESCR_PRODOTTO, DIV_QUOTAZIONE, INTERMEDIARIO, DIV_REGOLAMENTO, ID_EMITTENTE, MERCATO_CONTRATT, PAESE, RATING, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_PRODOTTI_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_PROMOTORI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_PROMOTORI') BEGIN DELETE FROM C6StoricoPeriodico.ANAG_PROMOTORI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ANAG_PROMOTORI (RETE, ID_PROMOTORE, LIVELLO, COD_FISCALE, PARTITA_IVA, COGNOME, NOME, RAG_SOC, DATA_INIZIO, DATA_FINE, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, TEL_RECAPITO, TEL_CELL, E_MAIL, COD_ABI, COD_CAB, COD_CIN, COD_CC, STATO, ID_ELAB, TIPO_ELAB) SELECT RETE, ID_PROMOTORE, LIVELLO, COD_FISCALE, PARTITA_IVA, COGNOME, NOME, RAG_SOC, DATA_INIZIO, DATA_FINE, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, TEL_RECAPITO, TEL_CELL, E_MAIL, COD_ABI, COD_CAB, COD_CIN, COD_CC, STATO, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ANAG_PROMOTORI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX AREA_BISOGNO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'AREA_BISOGNO') BEGIN DELETE FROM C6StoricoPeriodico.AREA_BISOGNO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.AREA_BISOGNO (ID_AREA, NOME_AREA, ORDINAMENTO, ID_ELAB) SELECT ID_AREA, NOME_AREA, ORDINAMENTO, ID_ELAB FROM C6MartPeriodico.AREA_BISOGNO WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ASSET_PERC XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ASSET_PERC') BEGIN DELETE FROM C6StoricoPeriodico.ASSET_PERC WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ASSET_PERC (COD_PRODOTTO, ID_ASSETCLASS, COD_ISIN, COD_MAF, COD_INTERNO, COD_SOTTOPRODOTTO, LIVELLO, PERC, ID_ELAB, TIPO_ELAB) SELECT COD_PRODOTTO, ID_ASSETCLASS, COD_ISIN, COD_MAF, COD_INTERNO, COD_SOTTOPRODOTTO, LIVELLO, PERC, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ASSET_PERC WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ASSET_PERC_TERZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ASSET_PERC_TERZI') BEGIN DELETE FROM C6StoricoPeriodico.ASSET_PERC_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ASSET_PERC_TERZI (COD_PRODOTTO_TERZI, ID_ASSETCLASS, LIVELLO, NOME_PRODOTTO, TIPO_PRODOTTO, PERC, ID_ELAB, TIPO_ELAB) SELECT COD_PRODOTTO_TERZI, ID_ASSETCLASS, LIVELLO, NOME_PRODOTTO, TIPO_PRODOTTO, PERC, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ASSET_PERC_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ASSETCLASS XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ASSETCLASS') BEGIN DELETE FROM C6StoricoPeriodico.ASSETCLASS WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ASSETCLASS (ID_ASSETCLASS, DESCRIZIONE, LIVELLO, ORDINAMENTO, ID_ELAB) SELECT ID_ASSETCLASS, DESCRIZIONE, LIVELLO, ORDINAMENTO, ID_ELAB FROM C6MartPeriodico.ASSETCLASS WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ASSETCLASS_TERZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ASSETCLASS_TERZI') BEGIN DELETE FROM C6StoricoPeriodico.ASSETCLASS_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ASSETCLASS_TERZI (ID_ASSETCLASS, COD_ISIN, COD_MAF, COD_ADEGUATEZZA, ID_ELAB, TIPO_ELAB) SELECT ID_ASSETCLASS, COD_ISIN, COD_MAF, COD_ADEGUATEZZA, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.ASSETCLASS_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX CLIENTI_CON_RNA_ALTO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CLIENTI_CON_RNA_ALTO') BEGIN DELETE FROM C6StoricoPeriodico.CLIENTI_CON_RNA_ALTO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CLIENTI_CON_RNA_ALTO ([Rete] ,[CodicePB] ,[CodiceFiscale] ,[Percentuale] ,[DataCalcolo] , ID_ELAB) SELECT [Rete] ,[CodicePB] ,[CodiceFiscale] ,[Percentuale] ,[DataCalcolo] , @ID_ELAB FROM C6MartPeriodico.CLIENTI_CON_RNA_ALTO END --XXXXXXXXXXXXXXXXXXXXXXXX CODICI_PROMOTORI_FITTIZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CODICI_PROMOTORI_FITTIZI') BEGIN DELETE FROM C6StoricoPeriodico.CODICI_PROMOTORI_FITTIZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CODICI_PROMOTORI_FITTIZI (Rete, CodiceDA, CodiceA, ID_ELAB) SELECT Rete, CodiceDA, CodiceA, @ID_ELAB FROM C6MartPeriodico.CODICI_PROMOTORI_FITTIZI END --XXXXXXXXXXXXXXXXXXXXXXXX CODIFICA_RISCHIO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CODIFICA_RISCHIO') BEGIN DELETE FROM C6StoricoPeriodico.CODIFICA_RISCHIO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CODIFICA_RISCHIO (PROFILO, DESCRIZIONE, MIN_VAR, MAX_VAR, ID_ELAB) SELECT PROFILO, DESCRIZIONE, MIN_VAR, MAX_VAR, ID_ELAB FROM C6MartPeriodico.CODIFICA_RISCHIO WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX CONGELAMENTO_SEI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CONGELAMENTO_SEI') BEGIN DELETE FROM C6StoricoPeriodico.CONGELAMENTO_SEI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CONGELAMENTO_SEI (DATA_CONGELAMENTO, ID_ELAB) SELECT DATA_CONGELAMENTO, @ID_ELAB FROM C6StagingPeriodico.CONGELAMENTO_SEI END --XXXXXXXXXXXXXXXXXXXXXXXX CONO_PIANIFICAZIONE XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'CONO_PIANIFICAZIONE') BEGIN DELETE FROM C6StoricoPeriodico.CONO_PIANIFICAZIONE WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.CONO_PIANIFICAZIONE (RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_CONO, SCENARIO_PESSIMISTICO, SCENARIO_MEDIO, SCENARIO_OTTIMISTICO, ID_ELAB) SELECT RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_CONO, SCENARIO_PESSIMISTICO, SCENARIO_MEDIO, SCENARIO_OTTIMISTICO, ID_ELAB FROM C6MartPeriodico.CONO_PIANIFICAZIONE WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX DATI_REPORT XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'DATI_REPORT') BEGIN DELETE FROM C6StoricoPeriodico.DATI_REPORT WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.DATI_REPORT (RETE, COD_FISCALE, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, FLAG_REPORT, REPORT_DIAGN, REPORT_MONIT, DATA_REPORT, REPORT_FREQ, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, INDIRIZZO, LOCALITA, PROVINCIA, CAP, NAZIONE, FLAG_REPORT, REPORT_DIAGN, REPORT_MONIT, DATA_REPORT, REPORT_FREQ, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.DATI_REPORT WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX DETTAGLIO_ASUL XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'DETTAGLIO_ASUL') BEGIN DELETE FROM C6StoricoPeriodico.DETTAGLIO_ASUL WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.DETTAGLIO_ASUL (RETE, COD_FISCALE, COD_PRODOTTO, ID_CONTRATTO, COD_SOTTOPRODOTTO, COD_INTERNO, CTV, DATA_RIF, COD_ISIN_FITTIZIO, COD_ISIN_SOTT, COD_MAF_SOTT, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, COD_PRODOTTO, ID_CONTRATTO, COD_SOTTOPRODOTTO, COD_INTERNO, CTV, DATA_RIF, COD_ISIN_FITTIZIO, COD_ISIN_SOTT, COD_MAF_SOTT, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.DETTAGLIO_ASUL WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ELABORAZIONI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ELABORAZIONI') BEGIN DELETE FROM C6StoricoPeriodico.ELABORAZIONI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ELABORAZIONI (ID_ELAB, TIPO_ELAB, DATA_OPERAZIONE) SELECT ID_ELAB, TIPO_ELAB, DATA_OPERAZIONE FROM C6MartPeriodico.ELABORAZIONI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ELABORAZIONI_EMAIL_RNA XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ELABORAZIONI_EMAIL_RNA') BEGIN DELETE FROM C6StoricoPeriodico.ELABORAZIONI_EMAIL_RNA WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.ELABORAZIONI_EMAIL_RNA ([Data_Elaborazione],[ID_ELAB]) SELECT [Data_Elaborazione],@ID_ELAB FROM C6MartPeriodico.ELABORAZIONI_EMAIL_RNA WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX EMAIL_PB XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'EMAIL_PB') BEGIN DELETE FROM C6StoricoPeriodico.EMAIL_PB WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.EMAIL_PB (RETE, CODICE, PREFISSO, FIRMA, EMAIL, ID_ELAB, TIPO_ELAB) SELECT RETE, CODICE, PREFISSO, FIRMA, EMAIL, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.EMAIL_PB WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX GESTIONE_EMAIL XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'GESTIONE_EMAIL') BEGIN DELETE FROM C6StoricoPeriodico.GESTIONE_EMAIL WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.GESTIONE_EMAIL (Email_Id, Rete, CodicePB, Tipo, Data_Generazione, Inviata, Data_Invio, ID_ELAB) SELECT Email_Id, Rete, CodicePB, Tipo, Data_Generazione, Inviata, Data_Invio, ID_ELAB FROM C6MartPeriodico.GESTIONE_EMAIL WHERE ID_ELAB = @ID_ELAB END -- --XXXXXXXXXXXXXXXXXXX GESTITA SEPARATAMENTE XXXXXXXXXXXXXXXXXXX-- -- --XXXXXXXXXXXXXXXXXXXXXXXX GLOBAL_ERROR XXXXXXXXXXXXXXXXXXXXXXXX-- -- IF(@NomeTabella IS NULL OR @NomeTabella = 'GLOBAL_ERROR') -- BEGIN -- DELETE FROM C6StoricoPeriodico.GLOBAL_ERROR WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB -- INSERT INTO C6StoricoPeriodico.GLOBAL_ERROR -- (ID, Cancel, ErrorCode, ErrorDescription, EventHandlerStartTime, LocaleID, Propagate, SourceDescription, SourceID, SourceName, Time, ID_ELAB) -- SELECT -- ID, Cancel, ErrorCode, ErrorDescription, EventHandlerStartTime, LocaleID, Propagate, SourceDescription, SourceID, SourceName, Time, ID_ELAB -- FROM C6MartPeriodico.GLOBAL_ERROR WHERE ID_ELAB = @ID_ELAB -- END --XXXXXXXXXXXXXXXXXXXXXXXX MIFID XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MIFID') BEGIN DELETE FROM C6StoricoPeriodico.MIFID WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MIFID(RETE, COD_FISCALE, PROFILO_ASS, DATA_INIZIO_VAL,ID_ELAB) SELECT RETE, COD_FISCALE, PROFILO_ASS, DATA_INIZIO_VAL, @ID_ELAB FROM C6MartPeriodico.MIFID WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX MONITORAGGIO_ATTUALE XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MONITORAGGIO_ATTUALE') BEGIN DELETE FROM C6StoricoPeriodico.MONITORAGGIO_ATTUALE WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MONITORAGGIO_ATTUALE (RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_ATTIVAZIONE, DATA_CTV, CTV_MONITORATO, APPORTO_INIZIALE, APPORTO_SUCCESSIVO, LIQUIDAZIONI, CEDOLE_DIVIDENDI, MINUS_PLUSVALENZA, RISORSE_ASSOCIATE, RENDIMENTO_CUMULATO, RENDIMENTO_ANNUALIZZATO, ORDINAMENTO_PROGETTO,ID_ELAB) SELECT RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_ATTIVAZIONE, DATA_CTV, CTV_MONITORATO, APPORTO_INIZIALE, APPORTO_SUCCESSIVO, LIQUIDAZIONI, CEDOLE_DIVIDENDI, MINUS_PLUSVALENZA, RISORSE_ASSOCIATE, RENDIMENTO_CUMULATO, RENDIMENTO_ANNUALIZZATO, ORDINAMENTO_PROGETTO,@ID_ELAB FROM C6MartPeriodico.MONITORAGGIO_ATTUALE END --XXXXXXXXXXXXXXXXXXXXXXXX MONITORAGGIO_DETTAGLIO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MONITORAGGIO_DETTAGLIO') BEGIN DELETE FROM C6StoricoPeriodico.MONITORAGGIO_DETTAGLIO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MONITORAGGIO_DETTAGLIO (RETE, COD_FISCALE, POSITION_ID, ID_AREA, DATA_ASSOCIAZIONE, VERSATO_NETTO_DA_ASSOC, UTILE_PERDITA_DA_ASSOC, ID_ELAB) SELECT RETE, COD_FISCALE, POSITION_ID, ID_AREA, DATA_ASSOCIAZIONE, VERSATO_NETTO_DA_ASSOC, UTILE_PERDITA_DA_ASSOC, @ID_ELAB FROM C6MartPeriodico.MONITORAGGIO_DETTAGLIO END --XXXXXXXXXXXXXXXXXXXXXXXX MONITORAGGIO_INIZIALE XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MONITORAGGIO_INIZIALE') BEGIN DELETE FROM C6StoricoPeriodico.MONITORAGGIO_INIZIALE WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MONITORAGGIO_INIZIALE (RETE, COD_FISCALE, DATA_FOTO, CTV_TOTALE, CTV_EXT, CTV_INV, CTV_RIS, CTV_PRE, CTV_LIQ, CTV_CC, CTV_NA, PARTITA_VIAGGIANTE, VAR_COMPLESSIVO, VAR_COPERTURA, ID_ELAB) SELECT RETE, COD_FISCALE, DATA_FOTO, CTV_TOTALE, CTV_EXT, CTV_INV, CTV_RIS, CTV_PRE, CTV_LIQ, CTV_CC, CTV_NA, PARTITA_VIAGGIANTE, VAR_COMPLESSIVO, VAR_COPERTURA, @ID_ELAB FROM C6MartPeriodico.MONITORAGGIO_INIZIALE END --XXXXXXXXXXXXXXXXXXXXXXXX MONITORAGGIO_REPORT XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MONITORAGGIO_REPORT') BEGIN DELETE FROM C6StoricoPeriodico.MONITORAGGIO_REPORT WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MONITORAGGIO_REPORT (RETE, COD_FISCALE, DATA_INVIO, CTV_TOTALE, CTV_EXT, CTV_INV, CTV_RIS, CTV_PRE, CTV_LIQ, CTV_CC, CTV_NA, PARTITA_VIAGGIANTE, VAR_COMPLESSIVO, VAR_COPERTURA, ID_ELAB) SELECT RETE, COD_FISCALE, DATA_INVIO, CTV_TOTALE, CTV_EXT, CTV_INV, CTV_RIS, CTV_PRE, CTV_LIQ, CTV_CC, CTV_NA, PARTITA_VIAGGIANTE, VAR_COMPLESSIVO, VAR_COPERTURA, @ID_ELAB FROM C6MartPeriodico.MONITORAGGIO_REPORT END --XXXXXXXXXXXXXXXXXXXXXXXX MONITORAGGIO_STORICO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'MONITORAGGIO_STORICO') BEGIN DELETE FROM C6StoricoPeriodico.MONITORAGGIO_STORICO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.MONITORAGGIO_STORICO (RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_CTV, CTV_MONITORATO, RISORSE_ASSOCIATE, ID_ELAB) SELECT RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, DATA_CTV, CTV_MONITORATO, RISORSE_ASSOCIATE, @ID_ELAB FROM C6MartPeriodico.MONITORAGGIO_STORICO END --XXXXXXXXXXXXXXXXXXXXXXXX PARTITE_VIAGGIANTI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PARTITE_VIAGGIANTI') BEGIN DELETE FROM C6Storico.PARTITE_VIAGGIANTI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6Storico.PARTITE_VIAGGIANTI (RETE, COD_FISCALE, IMPORTO, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, IMPORTO, ID_ELAB, TIPO_ELAB FROM C6Mart.PARTITE_VIAGGIANTI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PATRIMONIO_ALTRO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PATRIMONIO_ALTRO') BEGIN DELETE FROM C6StoricoPeriodico.PATRIMONIO_ALTRO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PATRIMONIO_ALTRO (RETE, COD_FISCALE, QUANTITA, DESCRIZIONE, CTV, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, QUANTITA, DESCRIZIONE, CTV, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PATRIMONIO_ALTRO WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PATRIMONIO_BF XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PATRIMONIO_BF') BEGIN DELETE FROM C6StoricoPeriodico.PATRIMONIO_BF WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PATRIMONIO_BF (RETE, COD_FISCALE, POSITION_ID, COD_PRODOTTO, ID_CONTRATTO, DATA_SOTTOSCRIZIONE, COD_STATO, NUM_POLIZZA, COD_MAF, COD_INTERNO, COD_SOTTOPRODOTTO, TIPO_PRODOTTO, NOME_PROGETTO, ID_AREA, DATA_OPERAZIONE, DATA_VALUTA, DATA_REGOLAMENTO, QUANTITA, PREZZO, CTV, CTV_NOMINALE, VERSATO_NETTO, PARTVIA_DISINV, DATA_PARTVIA_DISINV, PARTVIA_INV, REND_SOTTOSCRIZIONE, REND_TRIMESTRE, REND_ANNO, REND_NON_RAPPR, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, POSITION_ID, COD_PRODOTTO, ID_CONTRATTO, DATA_SOTTOSCRIZIONE, COD_STATO, NUM_POLIZZA, COD_MAF, COD_INTERNO, COD_SOTTOPRODOTTO, TIPO_PRODOTTO, NOME_PROGETTO, ID_AREA, DATA_OPERAZIONE, DATA_VALUTA, DATA_REGOLAMENTO, QUANTITA, PREZZO, CTV, CTV_NOMINALE, VERSATO_NETTO, PARTVIA_DISINV, DATA_PARTVIA_DISINV, PARTVIA_INV, REND_SOTTOSCRIZIONE, REND_TRIMESTRE, REND_ANNO, REND_NON_RAPPR, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PATRIMONIO_BF WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PATRIMONIO_IMMOBILIARE XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PATRIMONIO_IMMOBILIARE') BEGIN DELETE FROM C6StoricoPeriodico.PATRIMONIO_IMMOBILIARE WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PATRIMONIO_IMMOBILIARE (RETE, COD_FISCALE, DESCRIZIONE, TIPOLOGIA, LOCALITA, PROVINCIA, CAP, NAZIONE, VALORE_STIMATO, AFFITTO, NOTE, DIV_RIFERIMENTO, CAMBIO, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, DESCRIZIONE, TIPOLOGIA, LOCALITA, PROVINCIA, CAP, NAZIONE, VALORE_STIMATO, AFFITTO, NOTE, DIV_RIFERIMENTO, CAMBIO, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PATRIMONIO_IMMOBILIARE WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PATRIMONIO_TERZI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PATRIMONIO_TERZI') BEGIN DELETE FROM C6StoricoPeriodico.PATRIMONIO_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PATRIMONIO_TERZI (RETE, COD_FISCALE, NUM_POLIZZA, TIPO_POLIZZA, TIPO_PRODOTTO, TIPO_PRODOTTO2, COD_PRODOTTO, COD_PRODOTTO_TERZI, INTERMEDIARIO, DATA_SOTTOSCRIZIONE, DATA_SCADENZA, FREQ_RATA, DURATA_POLIZZA, PREMIO, ALIQUOTA, DATA_SOTT_FP, DATA_REGOLAMENTO, QUANTITA, PREZZO, CTV, VERSATO_NETTO, DIV_REGOLAMENTO, CAMBIO, DESCR_GRUPPO_PRODOTTO, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, NUM_POLIZZA, TIPO_POLIZZA, TIPO_PRODOTTO, TIPO_PRODOTTO2, COD_PRODOTTO, COD_PRODOTTO_TERZI, INTERMEDIARIO, DATA_SOTTOSCRIZIONE, DATA_SCADENZA, FREQ_RATA, DURATA_POLIZZA, PREMIO, ALIQUOTA, DATA_SOTT_FP, DATA_REGOLAMENTO, QUANTITA, PREZZO, CTV, VERSATO_NETTO, DIV_REGOLAMENTO, CAMBIO, DESCR_GRUPPO_PRODOTTO, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PATRIMONIO_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PIRAMIDE_MOD XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PIRAMIDE_MOD') BEGIN DELETE FROM C6StoricoPeriodico.PIRAMIDE_MOD WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PIRAMIDE_MOD (RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, TIPO_PROGETTO, PERC_AREA, CTV_PROGETTO, CTV_AREA, ORIZZ_TEMP, CTV_TOTALE, STATO_CONSULENZA, DATA_STATO_CONS, DATA_MIGR_CONS, ID_CONTRATTO, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, ID_AREA, NOME_PROGETTO, TIPO_PROGETTO, PERC_AREA, CTV_PROGETTO, CTV_AREA, ORIZZ_TEMP, CTV_TOTALE, STATO_CONSULENZA, DATA_STATO_CONS, DATA_MIGR_CONS, ID_CONTRATTO, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PIRAMIDE_MOD WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX PIRAMIDE_VERT XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'PIRAMIDE_VERT') BEGIN DELETE FROM C6StoricoPeriodico.PIRAMIDE_VERT WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.PIRAMIDE_VERT (RETE, COD_FISCALE, ID_AREA, CTV_AREA, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, ID_AREA, CTV_AREA, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.PIRAMIDE_VERT WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX RISCHIO_AGGREGATO XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'RISCHIO_AGGREGATO') BEGIN DELETE FROM C6StoricoPeriodico.RISCHIO_AGGREGATO WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.RISCHIO_AGGREGATO (RETE, COD_FISCALE, COD_AGGREG, VAR_ASSOLUTO_PTF, VAR_PERC_PTF, CVAR_ASSOLUTO_PTF, CVAR_PERC_PTF, MCVAR, MCVARP, BENEFICIO, COPERTURA, CTV_AGGREG, ID_ELAB, TIPO_ELAB) SELECT RETE, COD_FISCALE, COD_AGGREG, VAR_ASSOLUTO_PTF, VAR_PERC_PTF, CVAR_ASSOLUTO_PTF, CVAR_PERC_PTF, MCVAR, MCVARP, BENEFICIO, COPERTURA, CTV_AGGREG, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.RISCHIO_AGGREGATO WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX STRUTTURA_RETE XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'STRUTTURA_RETE') BEGIN DELETE FROM C6StoricoPeriodico.STRUTTURA_RETE WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6StoricoPeriodico.STRUTTURA_RETE (Rete, PB, CognomeNomePB, SPV, CognomeNomeSPV, RM, CognomeNomeRM, DM, CognomeNomeDM, AM, CognomeNomeAM, Livello, ID_ELAB, TIPO_ELAB) SELECT Rete, PB, CognomeNomePB, SPV, CognomeNomeSPV, RM, CognomeNomeRM, DM, CognomeNomeDM, AM, CognomeNomeAM, Livello, ID_ELAB, TIPO_ELAB FROM C6MartPeriodico.STRUTTURA_RETE WHERE ID_ELAB = @ID_ELAB END -- XX -- XX -- XX -- XX AGGIORNAMENTO DATI C6MartPeriodico.TabelleStoricizzate XX -- XX -- XX -- XX -- IF(@NomeTabella IS NOT NULL) BEGIN UPDATE C6MartPeriodico.TabelleStoricizzate SET FINE = GETDATE(), DURATA = DATEDIFF(SECOND ,INIZIO, GETDATE()) WHERE NOME = @NomeTabella END END