CREATE procedure [C6MartPeriodico].[DM_PROVENTI] AS BEGIN SET NOCOUNT ON; DECLARE @ID_ELAB INT DECLARE @TIPO_ELAB VARCHAR(1) DECLARE @DTMAX INT SET @ID_ELAB = C6MartPeriodico.GETIDELAB() SET @TIPO_ELAB = C6MartPeriodico.GETTIPOELAB() SELECT @DTMAX = ISNULL(MAX(DTTRIM),0) FROM c6StagingPeriodico.WSEIPR -- Log esecuzione INSERT INTO LOG_ESECUZIONE_PERIODICO (Nome, Inizio, Nota) VALUES ( 'DM_PROVENTI', GETDATE(), 'Elaborazione trimestrale' ) TRUNCATE TABLE [C6MartPeriodico].[PROVENTI] --select * from [C6MartPeriodico].[PROVENTI] INSERT INTO [C6MartPeriodico].[PROVENTI] ( WSEIPR.RETE, DTTRIM, COD_FISCALE, COD_INTERNO , COD_SOTTOPRODOTTO , DESPROD , DTRIFE, TIPMOV, IMPORTO ) SELECT WSEIPR.RETE, convert(datetime,convert(varchar,WSEIPR.[DTTRIM]),100) as [DT_TRIM], WSEIPR.CODFIS, COD_INTERNO = CASE -- WHEN WSEIPR.FAMPROD <> 'DT' THEN WSEIPR.CODPROD -- ELSE WSEIPR.CODABI WHEN LTRIM(RTRIM(isnull(WSEIPR.CODABI,''))) = '' THEN WSEIPR.CODPROD ELSE LTRIM(RTRIM(WSEIPR.CODABI)) END, COD_SOTTOPRODOTTO = CASE WHEN LTRIM(RTRIM(isnull(WSEIPR.SUBPROD,''))) = '' THEN '' ELSE LTRIM(RTRIM(WSEIPR.SUBPROD)) END, --[C6MartPeriodico].[getDESPRODCAT](CODPROD,SUBPROD) as DESPROD , [C6MartPeriodico].[getDESPRODCAT] (CASE WHEN LTRIM(RTRIM(isnull(WSEIPR.CODABI,''))) = '' THEN WSEIPR.CODPROD ELSE LTRIM(RTRIM(WSEIPR.CODABI)) END, CASE WHEN LTRIM(RTRIM(isnull(WSEIPR.SUBPROD,''))) = '' THEN NULL ELSE LTRIM(RTRIM(WSEIPR.SUBPROD)) END) as DESPROD , convert(datetime,convert(varchar,WSEIPR.[DTRIFE]),100) as DTRIFE, WSEIPR.TIPMOV, WSEIPR.IMPORTO FROM c6StagingPeriodico.WSEIPR WSEIPR WHERE WSEIPR.[DTTRIM] = @DTMAX -- Log esecuzione UPDATE LOG_ESECUZIONE_PERIODICO SET Fine = GETDATE(), Tipo = 'INSERT', Righe = @@ROWCOUNT WHERE Nome = 'DM_PROVENTI' AND Inizio = ( SELECT MAX(Inizio) FROM LOG_ESECUZIONE_PERIODICO WHERE Nome = 'DM_PROVENTI' ) -- FC 22/01/2014 -- Verifica e scarto prodotti INSERT INTO C6MARTPERIODICO.TEST_QUALITY SELECT a.RETE, a.COD_FISCALE, 'PROVENTI.DESPROD IS NULL' FROM [C6MartPeriodico].[PROVENTI] a --WHERE ISNULL(DesProd,'') ='' INNER JOIN c6stagingperiodico.appo_contratti_v b on a.rete=b.rete and a.cod_fiscale=b.cod_fiscale and b.tip_contratto=2 WHERE ISNULL(DesProd,'') ='' END