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
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
Depends On
8Used By
No items found