﻿-- =============================================  
-- Author:  Paolo Giovanetti  / TRINGALI PER FIDUCIARIE  
-- Create date: <Create Date,,>  
-- Description: <Description,,>  
-- =============================================  
CREATE procedure [C6MartPeriodico].[RP_DM_WSEICAP]  
AS  
BEGIN  
 SET NOCOUNT ON;  
 -- Log esecuzione  
 INSERT INTO LOG_ESECUZIONE  
  (Nome, Inizio, Nota)  
 VALUES (  
  'RP_DM_WSEICAP',  
  GETDATE(),  
  'Elaborazione trimestrale'  
 )  
 declare @data varchar(8)
set @data= [C6MartPeriodico].[getTrimestre2](getdate(),0)
 TRUNCATE TABLE C6MartPeriodico.WSEICAP 
 INSERT INTO C6MartPeriodico.[WSEICAP]  
           ([DTTRIM]
      ,[DTRIFE]
      ,[RETE]
      ,[COD_FISCALE]
      ,[CODCONF]
      ,[SUBPROD]
      ,[ISIN]
      ,[DTINIZ]
      ,[DTFINE]
      ,[CTV_COMMIT]
      ,[IMPVERS]
      ,[IMPRES]
      ,[DESCPROD]
      ,[SGR])  
 SELECT distinct [DTTRIM]
      ,[DTRIFE]
      ,[RETE]
       ,case when CODMAN<>'' then 'FF@'+CODMAN
	  else CODFIS end as COD_FISCALE
      ,[CODCONF]
      ,[SUBPROD]
      ,CASE
    WHEN ISIN IS NULL OR ISIN = '' THEN 'NA'
    ELSE ISIN
  END AS ISIN
      ,[DTINIZ]
      ,[DTFINE]
      ,[CTV_COMMIT]
      ,[IMPVERS]
      ,[IMPRES]
      ,[DESCPROD]
      ,[SGR]
  FROM [C6StampeCentralizzate].[C6StagingPeriodico].[WSEICAP]
  where 
  DTTRIM=@data
 -- Log esecuzione  
 UPDATE  
  LOG_ESECUZIONE  
 SET  
  Fine = GETDATE(),  
  Tipo = 'INSERT',  
  Righe = @@ROWCOUNT  
 WHERE  
  Nome = 'RP_DM_WSEICAP' AND  
  Inizio = (  
   SELECT  
    MAX(Inizio)  
   FROM  
    LOG_ESECUZIONE  
   WHERE  
    Nome = 'RP_DM_WSEICAP'  
  )  
END