-- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE procedure [C6Mart].[DM_ANAG_PRODOTTI] 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_PRODOTTI', GETDATE(), 'Elaborazione giornaliera' ) TRUNCATE TABLE C6MART.ANAG_PRODOTTI INSERT INTO [C6Mart].[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 CATITEMREF.CATALOGUEID AS COD_PRODOTTO, CATITEMREF.COD_ISIN AS COD_ISIN, CATITEMREF.COUNTRY AS PAESE, '' AS ID_AREA, (SELECT CASE SUBSTRING(CATITEMREF.TYPE$_BCATAL_FC317,64,3) WHEN 'Ges' THEN 'Gestito Finanziario' WHEN 'Amm' THEN 'Amministrato' WHEN 'Ass' THEN 'Assicurativo' END) AS CAT_PRODOTTO, CATITEMREF.TIPOPRODOTTO AS TIPO_PRODOTTO, CATITEMREF.CATALOGUENAME AS DESCR_PRODOTTO, CATITEMREF.PRODUCTCURRENCY AS DIV_QUOTAZIONE, NULL AS DIV_REGOLAMENTO, NULL AS ID_EMITTENTE, CATITEMREF.PIAZZA AS MERCATO_CONTRATT, CATITEMREF.COD_MAF AS COD_MAF, CATITEMREF.RATOBBLIG AS RATING, CATITEMREF.COD_ADEGUATEZZA AS COD_ADEGUATEZZA, CATITEMREF.COD_SOTTOPRODOTTO AS COD_SOTTOPRODOTTO, CATITEMREF.COD_INTERNO AS COD_INTERNO, @ID_ELAB AS ID_ELAB, @TIPO_ELAB AS TIPO_ELAB FROM C6STAGING.CATITEMREF INNER JOIN ( SELECT CATITEMREF.CATALOGUEID, MAX(OID$) AS OID FROM C6STAGING.CATITEMREF GROUP BY CATITEMREF.CATALOGUEID ) DOPPICATITEMREF ON CATITEMREF.OID$ = DOPPICATITEMREF.OID -- Log esecuzione UPDATE LOG_ESECUZIONE SET Fine = GETDATE(), Tipo = 'INSERT', Righe = @@ROWCOUNT WHERE Nome = 'DM_ANAG_PRODOTTI' AND Inizio = ( SELECT MAX(Inizio) FROM LOG_ESECUZIONE WHERE Nome = 'DM_ANAG_PRODOTTI' ) END