WITH C_MODELO_TDT
AS
(
SELECT B.Fuente_Val, --SÍ VA
P.Tipo_Documento_Cd --SÍ VA
,(CASE WHEN P.Ruc_Val IS NULL and LENGTH(P.Num_Documento_Val)=11
THEN P.Num_Documento_Val
ELSE P.Ruc_Val END) Ruc_Val --SÍ VA
,P.Num_Documento_Val --SÍ VA
,P.Nombre_Razon_Social_Val --SÍ VA (TDT)
--,RP.TipoRelacion_Id
,TR.TipoRelacion_Val --SÍ VA
--,AGREGAR TipoRelacion_Val ESTANDARIZADO --ESTANDARIZAR CON UN CASE WHEN
,PREL.Tipo_Documento_Cd As Rel_Tipo_Documento_Cd --SÍ VA
,PREL.Num_Documento_Val As Rel_Num_Documento_Val --SÍ VA
,PREL.Nombre_Razon_Social_Val as Rel_Nombre_Razon_Social_Val --SÍ VA
,CASE WHEN regexp_similar(C.Contacto_Val,'9[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')=1
THEN 'C' ELSE 'F' END As Nombre_Val --SÍ VA
--,PREL.Apellido_Parterno_Val
--,PREL.Apellido_Materno_Val
,C.TipoContacto_Id --SÍ VA
,C.Contacto_Val --SÍ VA
,FBACK.TIPO_FEEDBACK_VAL --SÍ VA
,RP.Fuente_Id --AL FINAL
,RP.Contacto_Id --AL FINAL
,RP.Persona_Cntc_Id --AL FINAL
,RP.Rel_Persona_Cntc_Id --AL FINAL
,PRI2.Tipo_Priorizacion_Id --AL FINAL
,TR.TipoRelacion_Id --AL FINAL
FROM E_DW_VIEWS.V_REL_VPC_CNTC_RELPERSONA RP
INNER JOIN E_DW_VIEWS.V_MST_VPC_CNTC_CONTACTO C ON RP.Contacto_Id = C.Contacto_Id
INNER JOIN E_DW_VIEWS.V_MST_VPC_CNCT_PERSONA P ON RP.Persona_Cntc_Id = P.Persona_Cntc_Id
INNER JOIN E_DW_VIEWS.V_MST_VPC_CNCT_PERSONA PREL ON RP.Rel_Persona_Cntc_Id = PREL.Persona_Cntc_Id
LEFT JOIN E_DW_VIEWS.V_MST_VPC_CNTC_PRIORIZACION PRI2 ON RP.Rel_Persona_Cntc_Id = PRI2.Persona_Cntc_Id AND RP.Contacto_Id = PRI2.Contacto_Id
LEFT JOIN E_DW_VIEWS.V_MST_VPC_CNTC_FEEDBACK FBACK ON
((PREL.Tipo_Documento_Cd = FBACK.Tipo_Doc_Contacto_Cd AND PREL.Num_Documento_Val = FBACK.Cod_Doc_Contacto_Val)
OR
(PREL.Nombre_Razon_Social_Val = FBACK.Nombre_Razon_Social_Val))
AND C.Contacto_Val = FBACK.Contacto_Val --AND FBACK.Tipo_Feedback_Val = 'NEGATIVO'
LEFT JOIN E_DW_VIEWS.V_MST_VPC_CNTC_MAESTROFUENTE B ON RP.Fuente_Id=B.Fuente_Id
LEFT JOIN E_DW_VIEWS.V_MST_VPC_CNTC_TIPORELACION TR ON TR.TipoRelacion_Id = RP.TipoRelacion_Id
WHERE
C.TipoContacto_Id=2
--and length(CASE WHEN P.Ruc_Val IS NULL and LENGTH(P.Num_Documento_Val)=11 THEN P.Num_Documento_Val ELSE P.Ruc_Val END) in (8,11)
)
SEL *
FROM C_MODELO_TDT