-- Schema: C6MartPeriodicoImmobiliare
-- Stored Procedure: RP_DM_PATRIMONIO_TERZI







-- =============================================  
-- Author:  <Author,,Name>  
-- Create date: <Create Date,,>  
-- Description: <Description,,>  
-- =============================================  
CREATE procedure [C6MartPeriodicoImmobiliare].[RP_DM_PATRIMONIO_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_IMMOBILIARE  
  (Nome, Inizio, Nota)  
 VALUES (  
  'RP_DM_PATRIMONIO_TERZI',  
  GETDATE(),  
  'Mart Immobiliare'  
 )  
  
 TRUNCATE TABLE C6MartPeriodicoImmobiliare.PATRIMONIO_TERZI  
  
 INSERT INTO [C6MartPeriodicoImmobiliare].[PATRIMONIO_TERZI]  
     (  
     [RETE]  
     ,[COD_FISCALE]  
     ,[NUM_POLIZZA]  
     ,[TIPO_POLIZZA]  
     ,[TIPO_PRODOTTO]  
     ,[TIPO_PRODOTTO2]  
     ,[COD_PRODOTTO]  
     ,[COD_PRODOTTO_TERZI]  
     ,[INTERMEDIARIO]  
     ,[DATA_SOTTOSCRIZIONE]  
     ,[DATA_SCADENZA]  
     ,[FREQ_RATA]  
     ,[DURATA_POLIZZA]  
     ,[PREMIO]  
     ,[ALIQUOTA]  
     ,[DATA_SOTT_FP]  
     ,[DATA_REGOLAMENTO]  
     ,[QUANTITA]  
     ,[PREZZO]  
     ,[CTV]  
     ,[VERSATO_NETTO]  
     ,[DIV_REGOLAMENTO]  
     ,[CAMBIO]  
     ,[DESCR_GRUPPO_PRODOTTO]  
   ,[STRTYPE]  
   ,[COMPLEX]  
   ,[EMITTENTE]  
   ,[CHIAVE_THR]  
     ,[ID_ELAB]  
     ,[TIPO_ELAB])  
  
 SELECT   
  VCONTRATTI.rete AS RETE,  
  VCONTRATTI.COD_FISCALE AS COD_FISCALE,  
  NULL AS NUM_POLIZZA,  
  (CASE RP_DettProdottiTerzi.tipoPolizza  
       WHEN 'CapitaleDifferito' THEN 'Capitale differito'  
       WHEN 'MistaImmediata' THEN 'Mista immediata'  
       WHEN 'VitaIntera' THEN 'Vita intera'  
       WHEN 'RenditaVitalizia' THEN 'Rendita vitalizia'  
       WHEN 'Capitalizzazione' THEN 'Capitalizzazione'  
       ELSE RP_DettProdottiTerzi.tipoPolizza  
     END) AS TIPO_POLIZZA,  
  COALESCE(RP_S4_S5_S13_TRAD_UNTIL_LIV3.ALBERO_GERARCHIA_3,COALESCE(RP_S4_S5_S13_TRAD_UNTIL_LIV3.ALBERO_GERARCHIA_2,RP_S4_S5_S13_TRAD_UNTIL_LIV3.ALBERO_GERARCHIA_1)) AS TIPO_PRODOTTO, --da rivedere  
  NULL AS TIPO_PRODOTTO2,  
  isnull(RP_CatalogoProdotti.catalogueID, 'PRODOTTO NON IN CATALOGO') AS COD_PRODOTTO,   
  ISNULL(MAPPING.Temp_oidProd, RP_PatrimonioTerzi.chiaveProdottoTerzi) AS COD_PRODOTTO_TERZI, --da rivedere prima era una stringona presa dal campo OID$  
  RP_DettProdottiTerzi.nomeIntermediario AS INTERMEDIARIO,  
  case when C6StagingPeriodicoImmobiliare.RP_PatrimonioTerzi.tipoProd ='Assets.FinancialAssets.PolizzeRivalutabili'  
     then isnull(RP_DettProdottiTerzi.DTSOTTOSCRIZIONE, RP_PatrimonioTerzi.DATACTV)   
     when C6StagingPeriodicoImmobiliare.RP_PatrimonioTerzi.tipoProd = 'Assets.FinancialAssets.ProdottiPrevidenziali'  
     then RP_PatrimonioTerzi.DATACTV  
     else isnull(RP_DettProdottiTerzi.dtInizioInvest,RP_PatrimonioTerzi.DATACTV)   
  end AS DATA_SOTTOSCRIZIONE,  
  RP_PatrimonioTerzi.dtFine AS DATA_SCADENZA,  
  RP_DettProdottiTerzi.tipoVersamento AS FREQ_RATA,  
  NULL AS DURATA_POLIZZA,  
  NULL AS PREMIO,  
  NULL AS ALIQUOTA,  
  NULL AS DATA_SOTT_FP,  
  NULL AS DATA_REGOLAMENTO,  
  NULL AS QUANTITA,  
  NULL AS PREZZO,  

  		--------------------- intervento del 2/3/2018 per gestire ctv e capitale_investito pił grandi del consentito
                   ---RP_PatrimonioTerzi.ctv AS CTV,  
                   ----RP_DettProdottiTerzi.capitaleInvestito AS VERSATO_NETTO,  
		  case 
				   when RP_PatrimonioTerzi.ctv > 999999999999.00 then 999999999999.00
				   else RP_PatrimonioTerzi.ctv
				end  AS CTV,

				case 
				   when RP_DettProdottiTerzi.capitaleInvestito > 999999999999.00 then 999999999999.00
				   else RP_DettProdottiTerzi.capitaleInvestito
				end  AS VERSATO_NETTO,
  
		---------------------  fine intervento del 2/3/2018

  
  NULL AS DIV_REGOLAMEN
