-- Schema: C6MartPeriodico
-- Stored Procedure: RP_DM_ASSETCLASS_TERZI


-- =============================================  
-- Author:  <Author,,Name>  
-- Create date: <Create Date,,>  
-- Description: <Description,,>  
-- =============================================  
  
--select * from [C6MartPeriodico].[ASSETCLASS_TERZI]  
--[C6MartPeriodico].[DM_ASSETCLASS_TERZI]  
CREATE procedure [C6MartPeriodico].[RP_DM_ASSETCLASS_TERZI]  
AS  
BEGIN  
  
 SET NOCOUNT ON;  
  
 DECLARE @ID_ELAB INT  
 DECLARE @TIPO_ELAB VARCHAR(1)  
   
 SET @ID_ELAB = C6MartPeriodico.GETIDELAB()  
 SET @TIPO_ELAB = C6MartPeriodico.GETTIPOELAB()  
  
 -- Log esecuzione  
 INSERT INTO LOG_ESECUZIONE_PERIODICO  
  (Nome, Inizio, Nota)  
 VALUES (  
  'RP_DM_ASSETCLASS_TERZI',  
  GETDATE(),  
  'Elaborazione trimestrale'  
 )  
  
 TRUNCATE TABLE C6MartPeriodico.ASSETCLASS_TERZI  
   
 INSERT INTO [C6MartPeriodico].[ASSETCLASS_TERZI]  
     ([ID_ASSETCLASS]  
     ,[COD_ISIN]  
     ,[COD_MAF]  
     ,[COD_ADEGUATEZZA]  
     ,[ID_ELAB]  
     ,[TIPO_ELAB])  
   
 SELECT   
  B.CODICE_ASSET_CLASS_INGRESSO,  
  B.CODICE_ISIN,  
  B.CODICE_MAF,  
  ISNULL(B.CODICE_ADEGUATEZZA,'$'),  
  @ID_ELAB AS ID_ELAB,  
  @TIPO_ELAB AS TIPO_ELAB  
 FROM   
 C6StagingPeriodico.RP_REP_ASSET_1_E_2_ORDINATE B  
   
 -- Log esecuzione  
 UPDATE  
  LOG_ESECUZIONE_PERIODICO  
 SET  
  Fine = GETDATE(),  
  Tipo = 'INSERT',  
  Righe = @@ROWCOUNT  
 WHERE  
  Nome = 'RP_DM_ASSETCLASS_TERZI' AND  
  Inizio = (  
   SELECT  
    MAX(Inizio)  
   FROM  
    LOG_ESECUZIONE_PERIODICO  
   WHERE  
    Nome = 'RP_DM_ASSETCLASS_TERZI'  
  )  
  
END  
  


