-- Schema: C6Mart -- Stored Procedure: SRV_STORICIZZAZIONE_OLD -- Stored procedure -- ============================================= -- Author: paolo giovanetti -- Create date: 23 gennaio 2009 -- Description: - rimossa la transazione inutile -- - aggiunta la storicizzazione delle elaborazioni e del global_error -- - la storicizzazione di GESTIONE_ZIP_FTP prevede la sua pulizia sul MART !! -- ============================================= CREATE PROCEDURE [C6Mart].[SRV_STORICIZZAZIONE_OLD] @NomeTabella 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 espresso in giorni SET @TempoStoricoC6 = dbo.getparametro('TempoStoricoC6') SELECT @MIN_ID_ELAB = ISNULL(MAX(ID_ELAB),0) FROM C6MART.ELABORAZIONI WHERE DATEDIFF(DAY,DATA_OPERAZIONE,GETDATE()) > @TempoStoricoC6 SET @ID_ELAB = C6MART.GETIDELAB() -- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX INIZIO TABELLE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --XXXXXXXXXXXXXXXXXXXXXXXX ALBERO_PRODOTTI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ALBERO_PRODOTTI') BEGIN DELETE FROM C6Storico.ALBERO_PRODOTTI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6Storico.ALBERO_PRODOTTI (DESCRIZIONE_ORIGINALE, ALBERO_GERARCHIA_1, ALBERO_GERARCHIA_2, ALBERO_GERARCHIA_3, ID_ELAB) SELECT DESCRIZIONE_ORIGINALE, ALBERO_GERARCHIA_1, ALBERO_GERARCHIA_2, ALBERO_GERARCHIA_3, ID_ELAB FROM C6Mart.ALBERO_PRODOTTI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CC XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CC') BEGIN DELETE FROM C6Storico.ANAG_CC WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6Storico.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 C6Mart.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 C6Storico.ANAG_CC_TERZI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6Storico.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 C6Mart.ANAG_CC_TERZI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CLIENTI XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL OR @NomeTabella = 'ANAG_CLIENTI') BEGIN DELETE FROM C6Storico.ANAG_CLIENTI WHERE ID_ELAB >= @ID_ELAB OR ID_ELAB < @MIN_ID_ELAB INSERT INTO C6Storico.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 C6Mart.ANAG_CLIENTI WHERE ID_ELAB = @ID_ELAB END --XXXXXXXXXXXXXXXXXXXXXXXX ANAG_CLIENTI_PREV XXXXXXXXXXXXXXXXXXXXXXXX-- IF(@NomeTabella IS NULL O