-- Schema: C6Mart -- Stored Procedure: DM_ANAG_PROMOTORI -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE procedure [C6Mart].[DM_ANAG_PROMOTORI] AS BEGIN SET NOCOUNT ON; DECLARE @ID_ELAB INT DECLARE @TIPO_ELAB VARCHAR(1) SET @ID_ELAB = C6MART.GETIDELAB() SET @TIPO_ELAB = C6MART.GETTIPOELAB() -- Log esecuzione INSERT INTO LOG_ESECUZIONE (Nome, Inizio, Nota) VALUES ( 'DM_ANAG_PROMOTORI', GETDATE(), 'Elaborazione giornaliera' ) TRUNCATE TABLE C6MART.ANAG_PROMOTORI INSERT INTO [C6Mart].[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 DISTINCT ADS4WS_PROMOTORI.RETE AS RETE, ADS4WS_PROMOTORI.CODICE AS ID_PROMOTORE, SPB_NAC.LIVELLONELLAGERARCHIA AS LIVELLO, NULL AS COD_FISCALE, NULL AS PARTITA_IVA, rtrim(ltrim(ADS4WS_PROMOTORI.COGNOME)) AS COGNOME, rtrim(ltrim(ADS4WS_PROMOTORI.NOME)) AS NOME, NULL AS RAG_SOC, CASE WHEN ADS4WS_PROMOTORI.DataInizioCollaborazione=0 THEN NULL ELSE CAST(CAST(ADS4WS_PROMOTORI.DataInizioCollaborazione AS VARCHAR(8)) AS DATETIME) END AS DATA_INIZIO, CASE WHEN ADS4WS_PROMOTORI.DataFineCollaborazione=0 THEN NULL ELSE CAST(CAST(ADS4WS_PROMOTORI.DataFineCollaborazione AS VARCHAR(8)) AS DATETIME) END AS DATA_FINE, rtrim(ltrim(ADS4WS_PROMOTORI.INDIRIZZO)) AS INDIRIZZO, rtrim(ltrim(ADS4WS_PROMOTORI.CITTA)) AS LOCALITA, rtrim(ltrim(ADS4WS_PROMOTORI.PROVINCIA)) AS PROVINCIA, rtrim(ltrim(ADS4WS_PROMOTORI.CAP)) AS CAP, NULL AS NAZIONE, rtrim(ltrim(ADS4WS_PROMOTORI.prefissotelefono + ADS4WS_PROMOTORI.TelefonoAgenzia1)) AS TEL_RECAPITO, NULL AS TEL_CELL, rtrim(ltrim(EMAIL_PB.EMAIL)) AS E_MAIL, NULL AS COD_ABI, NULL AS COD_CAB, NULL AS COD_CIN, NULL AS COD_CC, --CASE -- WHEN SPB_NAC.CODICEAGENTE IS NULL THEN 'TERMINATO' -- ELSE CASE WHEN PF.RETE IS NULL THEN 'ATTIVO' ELSE 'FITTIZIO' END --END AS STATO, @ID_ELAB AS ID_ELAB, @TIPO_ELAB AS TIPO_ELAB FROM C6STAGING.ADS4WS_PROMOTORI ADS4WS_PROMOTORI LEFT JOIN C6MART.EMAIL_PB EMAIL_PB ON ADS4WS_PROMOTORI.RETE = EMAIL_PB.RETE AND ADS4WS_PROMOTORI.CODICE = EMAIL_PB.CODICE LEFT JOIN C6STAGING.SPB_NAC SPB_NAC ON ADS4WS_PROMOTORI.RETE = SPB_NAC.CODICERETE AND ADS4WS_PROMOTORI.CODICE = SPB_NAC.CODICEAGENTE LEFT JOIN C6MART.CODICI_PROMOTORI_FITTIZI PF ON (ADS4WS_PROMOTORI.CODICE BETWEEN PF.CODICEDA AND PF.CODICEA) AND ADS4WS_PROMOTORI.RETE = PF.RETE WHERE ADS4WS_PROMOTORI.STATO = 'A' --Aggiunta Valerio non inserisco in anagrafica pb terminati in quanto non hanno il livello and SPB_NAC.CODICEAGENTE is not null --AND ADS4WS_PROMOTORI.CODICE NOT IN ('009202')--,'014908') ---eliminato il filtro su '005772' 04/08/2010 ---eliminato il filtro su'003064' 12/08/2010 ---eliminato il filtro su '010712' -- Log esecuzione UPDATE LOG_ESECUZIONE SET Fine = GETDATE(), Tipo = 'INSERT', Righe = @@ROWCOUNT WHERE Nome = 'DM_ANAG_PROMOTORI' AND Inizio = ( SELECT MAX(Inizio) FROM LOG_ESECUZIONE WHERE Nome = 'DM_ANAG_PROMOTORI' ) END