dbo.pe_obtener_personas

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

1
Name Data Type Length Description
@p_cuit varchar 20

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

/*
[pe_obtener_personas] 27954104910
[pe_obtener_personas] 27954093854
[pe_obtener_personas] 20954084206
[pe_obtener_personas] 27954069406 
[pe_obtener_personas] 27954067683
[pe_obtener_personas] 27954066598
[pe_obtener_personas] 27954005173
[pe_obtener_personas] 27208925658
*/

CREATE OR ALTER PROCEDURE dbo.pe_obtener_personas 
@p_cuit varchar(20)
AS

BEGIN
    SET NOCOUNT ON;
  declare @ultimo_mes_empleados date
 declare @mes_empleados date
 declare @periodo_empleados_desde int 
 declare @periodo_empleados_hasta int 
    
 set @ultimo_mes_empleados = (select max(fuentes_procesadas.fecha_informacion) from fuentes_procesadas where fuente = 'empleados')
 set @periodo_empleados_hasta = convert(int,substring(convert(char,@ultimo_mes_empleados),3,2)+substring(convert(char,@ultimo_mes_empleados),6,2))

 set @mes_empleados = DATEADD(M,-2,@ultimo_mes_empleados)
 set @periodo_empleados_desde = convert(int,substring(convert(char,@mes_empleados),3,2)+substring(convert(char,@mes_empleados),6,2))
 
 declare @fijo VARCHAR(max), @movil varchar(max), @otro varchar(max) 
 EXEC [sp_obtener_telefonos_tipo] @p_cuit,  @fijo output, @movil output, @otro output 
 select distinct replace(nombre_persona,'''',' ') as nombre_persona, 
                 sexo, 
     cuerpo_clave,
                 replace(padrones.nombres,'''',' ') as nombre, 
                 replace(padrones.apellidos,'''',' ') as apellidos,  
     DATOS_PERSONAS.c02_fecha_nac,
     fecha_defuncion,
                 replace(RENAPER_INFO.apellido,'''',' ') as rapellido,
     replace(RENAPER_INFO.nombres,'''',' ') as rnombres,
     replace(RENAPER_INFO.nacionalidad,'''','') as nacionalidad, 
     (SELECT DISTINCT 
  telefonos = STUFF((SELECT ', ' + t.tipo + ':' + t.telefono
                FROM telefonos t
                where t.id_padron = padrones.id_padron
    order by tipo
                FOR XML PATH (''))
                , 1, 2, '') ) telefonos,
  @fijo as telefono_fijo, @movil as telefono_movil , @otro as telefono_otro,   
   (SELECT DISTINCT 
  emails = STUFF((SELECT ', ' + t.email
                FROM emails t
                where t.id_padron = padrones.id_padron

                FOR XML PATH (''))
                , 1, 2, '') ) emails,
   (SELECT DISTINCT 
  empleadores = STUFF((SELECT distinct ', ' + t.cuit + ' ' + replace(p2.nombre_persona,'''',' ')
                FROM empleados t
    inner join padrones p2 on p2.identificacion = t.cuit
                where t.cuil = @p_cuit and t.visible = 1 and t.periodo = (select max(periodo) from empleados b
                    where b.cuil = @p_cuit 
          and b.visible = 1 
                      and b.periodo between @periodo_empleados_desde and @periodo_empleados_hasta)
    and t.periodo = (select max(periodo) from empleados b
                    where b.cuil = @p_cuit 
          and b.visible = 1 
                      and b.periodo between @periodo_empleados_desde and @periodo_empleados_hasta)

                FOR XML PATH (''))
                , 1, 2, '') ) empleadores

 from padrones
 left join datos_personas on datos_personas.c01_cuit = @p_cuit
 left join RENAPER_INFO on renaper_info.identificacion = @p_cuit
 where padrones.identificacion = @p_cuit 
 and habilitado = 1
 END 
 

 
GO

Used By

No items found