Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
3| Name | Data Type | Length | Description |
|---|---|---|---|
| @dni | varchar | 8 | |
| @genero | char | 1 | |
| @dias | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
select * from apikey where id_api_key= 124
select * from usuarios_consumos where user_id=86449135 and id_producto=93 order by created desc
*/
/*
SELECT '/' + replace('/','-',domicilio) + '|' + tipo_domicilio FROM domicilios_todos WHERE cuit = '23953614464'
SELECT replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos WHERE cuit = '23953614464'
*/
-- select * from RENAPER_INFO where dni='22318445'
-- exec dni_buscar_cuit_segun_dni
-- exec api_get_govcheck '20892565','F'
-- exec api_get_govcheck '17726090'
-- exec api_get_govcheck '27818598'
-- exec api_get_govcheck '92338518'
-- exec api_get_govcheck '27816392'
-- exec api_get_govcheck '22318445'
-- exec api_get_govcheck '38601084'
-- exec api_get_govcheck '13554164'
-- exec api_get_govcheck '34133243'
-- exec api_get_govcheck '22262171'
-- exec api_get_govcheck '05256834'
-- exec api_get_govcheck '95361446'
-- exec api_get_govcheck '03196513'
-- exec api_get_govcheck '43745732'
-- select * from datos_personas where c01_cuit='27031965131'
/*
select * from RENAPER_INFO where dni='03196513' order by created desc
select distinct nroError from RENAPER_INFO
select * from RENAPER_INFO where nroError=0 order by created desc
select * from RENAPER_INFO where codigoError=12 order by created desc
--update RENAPER_INFO set nroError=99 where nroError=''
select * from padrones where cuerpo_clave in ('36463667','41286040','47819058','47298212','62747484','95361446')
select * from RENAPER_INFO where cuil in ('27364636674','27412860409','20472982126','20478190582','23627474849','23953614464')
update padrones set sexo = 'F' where id_padron=199537990
*/
--select top 10 * from padrones
-- COMPLETAR EL DNI A 8 CARACTERES O QUE VENGA CON LOS CEROS ADELANTE DESDE EL PHP
/*
select * from clae where cuit in ('20177260909','20955578350','20278185983')
select * from padrones where cuerpo_clave='95557835'
select * from padrones where cuerpo_clave='92338518'
select top 1000 *,convert(bigint,cuil) as cuili from RENAPER_INFO WHERE
nroError=0
DNI IS NOT NULL order by cuil
select top 10 * from padrones where ismodified is null
[api_get_govcheck] 14601629,'M',60
select * from padrones where cuerpo_clave = '14601629'
and habilitado = 1
and padrones.tipo_persona='F'
*/
--api_get_govcheck '45038613'
CREATE OR ALTER PROCEDURE dbo.api_get_govcheck
@dni varchar(8),
@genero char(1) = null,
@dias int = 60
AS
BEGIN
SET NOCOUNT ON;
--select * from padrones where cuerpo_clave='92293275'
/* hasta 19/12/2022: Buscaba siempre entrando por Padrones que el campo cuerpo_clave sea el dni que buscamos.
Pero en algunos casos de extranjero renaper nos devuelve un cuit que su parte interna, no es igual al dni,
entonces en la tabla padrones como cuerpo_clave tenemos la parte de adentro del cuit, pero que no es el dni de renaper */
if exists (select * from padrones where cuerpo_clave = @dni
and habilitado = 1
and padrones.tipo_persona='F' )
begin
--select distinct STUFF((SELECT '/' + telefono FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
select distinct '1', empleados_Abril_2021.SEXO as emplegenero, STUFF((SELECT '/' + replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos DOM2 WHERE DOM2.cuit = padrones.identificacion and DOM2.tipo_domicilio in ('E','L','F') and DOM2.visible=1 FOR XML PATH('')),1,1,'') AS domicilio,
STUFF((SELECT '/ ' + ltrim(rtrim(telefono)) FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
cuerpo_clave dni,
--iif(padrones.sexo not in ('M','F'),renaper_info.sexo,padrones.sexo) as genero,-
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo) as genero,
--padrones.sexo as genero,
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)) as apellidos,
*/
-- Lo cambiamos el 09/11/2023: Prioriza datos de renaper si los tenemos
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)) as nombre_persona,
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)) as apellidos,
--
padrones.identificador as tipo_clave,
datos_personas.c02_fecha_nac as fecha_nacimiento,datos_personas.fecha_defuncion as fecha_defuncion,
padrones.identificacion,
--null as email,
--emails.email,
STUFF((SELECT '/ ' + ltrim(rtrim(email)) FROM emails e2 WHERE e2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS email ,
clae.cod_clae as cod_actividad,clae.descripcion as nombre_actividad,
--iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,renaper_info.nacionalidad) as nacionalidad,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)) as nacionalidad,
--renaper_info.EMISION as fecha_emision,RENAPER_INFO.VENCIMIENTO as fecha_vencimiento,
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2) as fecha_emision,
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2) as fecha_vencimiento,
RENAPER_INFO.EJEMPLAR as version_dni,renaper_info.ID_TRAMITE_PRINCIPAL as nro_tramite,RENAPER_INFO.idciudadano,
padrones.ismodified as ultimo_afip,
max(renaper_info.created) as ultimo_renaper,
getdate()-90 as ultimo_pep
from padrones
left join datos_personas on datos_personas.c01_cuit = padrones.identificacion
-- LEFT join RENAPER_INFO on (padrones.identificacion=RENAPER_INFO.cuil and RENAPER_INFO.nroError=99)
/* 8/6/2023 */
LEFT join RENAPER_INFO on (padrones.identificacion=RENAPER_INFO.cuil and RENAPER_INFO.nroError=99 AND RENAPER_INFO.Id = (select max(id) from RENAPER_INFO b where b.cuil = RENAPER_INFO.cuil and b.nroError = 99))
/**/
left join clae on (padrones.identificacion=clae.cuit and clae.visible=1 and clae.principal=1)
left join empleados_Abril_2021 on (padrones.identificacion=empleados_Abril_2021.CUIL and padrones.habilitado=1)
--left join emails on padrones.id_padron =emails.id_padron-
where
( @genero is null or renaper_info.sexo is null or renaper_info.sexo = @genero)
and
cuerpo_clave = @dni
and habilitado = 1
and padrones.tipo_persona='F'
--and identificador in (select identificador from identificadores where identificadores.country_code = 'AR')
and identificador in ('CUIT','CUIL')
--and datos_personas.visible = 1 ESTO ESTÁ MAL YA QUE AL HACER EL LEFT JOIN SI ESTE VALOR NO VIENE ES OBVIO QUE NUNCA VA A SER 1
and isnull(datos_personas.visible,1) = 1
group by empleados_Abril_2021.SEXO,
cuerpo_clave,
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo),
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)),
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)),
*/
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)),
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)),
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)),
padrones.identificador,
datos_personas.c02_fecha_nac,datos_personas.fecha_defuncion,
padrones.identificacion,
--emails.email,
clae.cod_clae ,clae.descripcion,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)),
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2),
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2),
RENAPER_INFO.EJEMPLAR,renaper_info.ID_TRAMITE_PRINCIPAL ,RENAPER_INFO.idciudadano,
padrones.ismodified,padrones.id_padron
end
else
begin
/* 19/12/2022: Entramos por la tabla renaper_info y hacemos el join con Padrones, por lo explicado mas arriba */
select distinct '2', empleados_Abril_2021.SEXO as emplegenero, STUFF((SELECT '/' + replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos DOM2 WHERE DOM2.cuit = padrones.identificacion and DOM2.tipo_domicilio in ('E','L','F') and DOM2.visible=1 FOR XML PATH('')),1,1,'') AS domicilio,
STUFF((SELECT '/ ' + ltrim(rtrim(telefono)) FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
cuerpo_clave dni,
--iif(padrones.sexo not in ('M','F'),renaper_info.sexo,padrones.sexo) as genero,-
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo) as genero,
--padrones.sexo as genero,
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)) as apellidos,
*/
-- Lo cambiamos el 09/11/2023: Prioriza datos de renaper si los tenemos
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)) as nombre_persona,
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)) as apellidos,
--
padrones.identificador as tipo_clave,
datos_personas.c02_fecha_nac as fecha_nacimiento,datos_personas.fecha_defuncion as fecha_defuncion,
padrones.identificacion,
--null as email,
--emails.email,
STUFF((SELECT '/ ' + ltrim(rtrim(email)) FROM emails e2 WHERE e2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS email ,
clae.cod_clae as cod_actividad,clae.descripcion as nombre_actividad,
--iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,renaper_info.nacionalidad) as nacionalidad,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)) as nacionalidad,
--renaper_info.EMISION as fecha_emision,RENAPER_INFO.VENCIMIENTO as fecha_vencimiento,
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2) as fecha_emision,
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2) as fecha_vencimiento,
RENAPER_INFO.EJEMPLAR as version_dni,renaper_info.ID_TRAMITE_PRINCIPAL as nro_tramite,RENAPER_INFO.idciudadano,
padrones.ismodified as ultimo_afip,
max(renaper_info.created) as ultimo_renaper,
getdate()-90 as ultimo_pep
from RENAPER_INFO
left join padrones on (padrones.identificacion=RENAPER_INFO.cuil
and padrones.habilitado = 1
and padrones.tipo_persona='F'
--and identificador in (select identificador from identificadores where identificadores.country_code = 'AR')
and identificador in ('CUIT','CUIL'))
left join datos_personas on datos_personas.c01_cuit = padrones.identificacion
left join clae on (padrones.identificacion=clae.cuit and clae.visible=1 and clae.principal=1)
left join empleados_Abril_2021 on (padrones.identificacion=empleados_Abril_2021.CUIL and padrones.habilitado=1)
--left join emails on padrones.id_padron =emails.id_padron-
where
( @genero is null or renaper_info.sexo = @genero or RENAPER_INFO.sexo is null)
and RENAPER_INFO.dni = @dni
and RENAPER_INFO.nroError=99
and RENAPER_INFO.created >= GETDATE() - @dias
--and datos_personas.visible = 1 ESTO ESTÁ MAL YA QUE AL HACER EL LEFT JOIN SI ESTE VALOR NO VIENE ES OBVIO QUE NUNCA VA A SER 1
and isnull(datos_personas.visible,1) = 1
/* 8/6/2023 */
and RENAPER_INFO.Id = (select max(id) from RENAPER_INFO b where b.cuil = RENAPER_INFO.cuil and b.nroError = 99)
/**/
group by empleados_Abril_2021.SEXO,
cuerpo_clave,
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo),
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)),
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)),
*/
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)),
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)),
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)),
padrones.identificador,
datos_personas.c02_fecha_nac,datos_personas.fecha_defuncion,
padrones.identificacion,
--emails.email,
clae.cod_clae ,clae.descripcion,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)),
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2),
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2),
RENAPER_INFO.EJEMPLAR,renaper_info.ID_TRAMITE_PRINCIPAL ,RENAPER_INFO.idciudadano,
padrones.ismodified,padrones.id_padron
end
END
GO
GO
/*
select * from apikey where id_api_key= 124
select * from usuarios_consumos where user_id=86449135 and id_producto=93 order by created desc
*/
/*
SELECT '/' + replace('/','-',domicilio) + '|' + tipo_domicilio FROM domicilios_todos WHERE cuit = '23953614464'
SELECT replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos WHERE cuit = '23953614464'
*/
-- select * from RENAPER_INFO where dni='22318445'
-- exec dni_buscar_cuit_segun_dni
-- exec api_get_govcheck '20892565','F'
-- exec api_get_govcheck '17726090'
-- exec api_get_govcheck '27818598'
-- exec api_get_govcheck '92338518'
-- exec api_get_govcheck '27816392'
-- exec api_get_govcheck '22318445'
-- exec api_get_govcheck '38601084'
-- exec api_get_govcheck '13554164'
-- exec api_get_govcheck '34133243'
-- exec api_get_govcheck '22262171'
-- exec api_get_govcheck '05256834'
-- exec api_get_govcheck '95361446'
-- exec api_get_govcheck '03196513'
-- exec api_get_govcheck '43745732'
-- select * from datos_personas where c01_cuit='27031965131'
/*
select * from RENAPER_INFO where dni='03196513' order by created desc
select distinct nroError from RENAPER_INFO
select * from RENAPER_INFO where nroError=0 order by created desc
select * from RENAPER_INFO where codigoError=12 order by created desc
--update RENAPER_INFO set nroError=99 where nroError=''
select * from padrones where cuerpo_clave in ('36463667','41286040','47819058','47298212','62747484','95361446')
select * from RENAPER_INFO where cuil in ('27364636674','27412860409','20472982126','20478190582','23627474849','23953614464')
update padrones set sexo = 'F' where id_padron=199537990
*/
--select top 10 * from padrones
-- COMPLETAR EL DNI A 8 CARACTERES O QUE VENGA CON LOS CEROS ADELANTE DESDE EL PHP
/*
select * from clae where cuit in ('20177260909','20955578350','20278185983')
select * from padrones where cuerpo_clave='95557835'
select * from padrones where cuerpo_clave='92338518'
select top 1000 *,convert(bigint,cuil) as cuili from RENAPER_INFO WHERE
nroError=0
DNI IS NOT NULL order by cuil
select top 10 * from padrones where ismodified is null
[api_get_govcheck] 14601629,'M',60
select * from padrones where cuerpo_clave = '14601629'
and habilitado = 1
and padrones.tipo_persona='F'
*/
--api_get_govcheck '45038613'
CREATE OR ALTER PROCEDURE dbo.api_get_govcheck
@dni varchar(8),
@genero char(1) = null,
@dias int = 60
AS
BEGIN
SET NOCOUNT ON;
--select * from padrones where cuerpo_clave='92293275'
/* hasta 19/12/2022: Buscaba siempre entrando por Padrones que el campo cuerpo_clave sea el dni que buscamos.
Pero en algunos casos de extranjero renaper nos devuelve un cuit que su parte interna, no es igual al dni,
entonces en la tabla padrones como cuerpo_clave tenemos la parte de adentro del cuit, pero que no es el dni de renaper */
if exists (select * from padrones where cuerpo_clave = @dni
and habilitado = 1
and padrones.tipo_persona='F' )
begin
--select distinct STUFF((SELECT '/' + telefono FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
select distinct '1', empleados_Abril_2021.SEXO as emplegenero, STUFF((SELECT '/' + replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos DOM2 WHERE DOM2.cuit = padrones.identificacion and DOM2.tipo_domicilio in ('E','L','F') and DOM2.visible=1 FOR XML PATH('')),1,1,'') AS domicilio,
STUFF((SELECT '/ ' + ltrim(rtrim(telefono)) FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
cuerpo_clave dni,
--iif(padrones.sexo not in ('M','F'),renaper_info.sexo,padrones.sexo) as genero,-
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo) as genero,
--padrones.sexo as genero,
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)) as apellidos,
*/
-- Lo cambiamos el 09/11/2023: Prioriza datos de renaper si los tenemos
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)) as nombre_persona,
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)) as apellidos,
--
padrones.identificador as tipo_clave,
datos_personas.c02_fecha_nac as fecha_nacimiento,datos_personas.fecha_defuncion as fecha_defuncion,
padrones.identificacion,
--null as email,
--emails.email,
STUFF((SELECT '/ ' + ltrim(rtrim(email)) FROM emails e2 WHERE e2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS email ,
clae.cod_clae as cod_actividad,clae.descripcion as nombre_actividad,
--iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,renaper_info.nacionalidad) as nacionalidad,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)) as nacionalidad,
--renaper_info.EMISION as fecha_emision,RENAPER_INFO.VENCIMIENTO as fecha_vencimiento,
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2) as fecha_emision,
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2) as fecha_vencimiento,
RENAPER_INFO.EJEMPLAR as version_dni,renaper_info.ID_TRAMITE_PRINCIPAL as nro_tramite,RENAPER_INFO.idciudadano,
padrones.ismodified as ultimo_afip,
max(renaper_info.created) as ultimo_renaper,
getdate()-90 as ultimo_pep
from padrones
left join datos_personas on datos_personas.c01_cuit = padrones.identificacion
-- LEFT join RENAPER_INFO on (padrones.identificacion=RENAPER_INFO.cuil and RENAPER_INFO.nroError=99)
/* 8/6/2023 */
LEFT join RENAPER_INFO on (padrones.identificacion=RENAPER_INFO.cuil and RENAPER_INFO.nroError=99 AND RENAPER_INFO.Id = (select max(id) from RENAPER_INFO b where b.cuil = RENAPER_INFO.cuil and b.nroError = 99))
/**/
left join clae on (padrones.identificacion=clae.cuit and clae.visible=1 and clae.principal=1)
left join empleados_Abril_2021 on (padrones.identificacion=empleados_Abril_2021.CUIL and padrones.habilitado=1)
--left join emails on padrones.id_padron =emails.id_padron-
where
( @genero is null or renaper_info.sexo is null or renaper_info.sexo = @genero)
and
cuerpo_clave = @dni
and habilitado = 1
and padrones.tipo_persona='F'
--and identificador in (select identificador from identificadores where identificadores.country_code = 'AR')
and identificador in ('CUIT','CUIL')
--and datos_personas.visible = 1 ESTO ESTÁ MAL YA QUE AL HACER EL LEFT JOIN SI ESTE VALOR NO VIENE ES OBVIO QUE NUNCA VA A SER 1
and isnull(datos_personas.visible,1) = 1
group by empleados_Abril_2021.SEXO,
cuerpo_clave,
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo),
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)),
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)),
*/
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)),
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)),
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)),
padrones.identificador,
datos_personas.c02_fecha_nac,datos_personas.fecha_defuncion,
padrones.identificacion,
--emails.email,
clae.cod_clae ,clae.descripcion,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)),
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2),
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2),
RENAPER_INFO.EJEMPLAR,renaper_info.ID_TRAMITE_PRINCIPAL ,RENAPER_INFO.idciudadano,
padrones.ismodified,padrones.id_padron
end
else
begin
/* 19/12/2022: Entramos por la tabla renaper_info y hacemos el join con Padrones, por lo explicado mas arriba */
select distinct '2', empleados_Abril_2021.SEXO as emplegenero, STUFF((SELECT '/' + replace(domicilio,'/','-') + '|' + tipo_domicilio FROM domicilios_todos DOM2 WHERE DOM2.cuit = padrones.identificacion and DOM2.tipo_domicilio in ('E','L','F') and DOM2.visible=1 FOR XML PATH('')),1,1,'') AS domicilio,
STUFF((SELECT '/ ' + ltrim(rtrim(telefono)) FROM telefonos t2 WHERE t2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS telefonos ,
cuerpo_clave dni,
--iif(padrones.sexo not in ('M','F'),renaper_info.sexo,padrones.sexo) as genero,-
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo) as genero,
--padrones.sexo as genero,
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)) as apellidos,
*/
-- Lo cambiamos el 09/11/2023: Prioriza datos de renaper si los tenemos
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)) as nombre_persona,
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)) as nombres,
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)) as apellidos,
--
padrones.identificador as tipo_clave,
datos_personas.c02_fecha_nac as fecha_nacimiento,datos_personas.fecha_defuncion as fecha_defuncion,
padrones.identificacion,
--null as email,
--emails.email,
STUFF((SELECT '/ ' + ltrim(rtrim(email)) FROM emails e2 WHERE e2.id_padron = padrones.id_padron FOR XML PATH('')),1,1,'') AS email ,
clae.cod_clae as cod_actividad,clae.descripcion as nombre_actividad,
--iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,renaper_info.nacionalidad) as nacionalidad,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)) as nacionalidad,
--renaper_info.EMISION as fecha_emision,RENAPER_INFO.VENCIMIENTO as fecha_vencimiento,
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2) as fecha_emision,
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2) as fecha_vencimiento,
RENAPER_INFO.EJEMPLAR as version_dni,renaper_info.ID_TRAMITE_PRINCIPAL as nro_tramite,RENAPER_INFO.idciudadano,
padrones.ismodified as ultimo_afip,
max(renaper_info.created) as ultimo_renaper,
getdate()-90 as ultimo_pep
from RENAPER_INFO
left join padrones on (padrones.identificacion=RENAPER_INFO.cuil
and padrones.habilitado = 1
and padrones.tipo_persona='F'
--and identificador in (select identificador from identificadores where identificadores.country_code = 'AR')
and identificador in ('CUIT','CUIL'))
left join datos_personas on datos_personas.c01_cuit = padrones.identificacion
left join clae on (padrones.identificacion=clae.cuit and clae.visible=1 and clae.principal=1)
left join empleados_Abril_2021 on (padrones.identificacion=empleados_Abril_2021.CUIL and padrones.habilitado=1)
--left join emails on padrones.id_padron =emails.id_padron-
where
( @genero is null or renaper_info.sexo = @genero or RENAPER_INFO.sexo is null)
and RENAPER_INFO.dni = @dni
and RENAPER_INFO.nroError=99
and RENAPER_INFO.created >= GETDATE() - @dias
--and datos_personas.visible = 1 ESTO ESTÁ MAL YA QUE AL HACER EL LEFT JOIN SI ESTE VALOR NO VIENE ES OBVIO QUE NUNCA VA A SER 1
and isnull(datos_personas.visible,1) = 1
/* 8/6/2023 */
and RENAPER_INFO.Id = (select max(id) from RENAPER_INFO b where b.cuil = RENAPER_INFO.cuil and b.nroError = 99)
/**/
group by empleados_Abril_2021.SEXO,
cuerpo_clave,
iif(renaper_info.sexo is not null,renaper_info.sexo,padrones.sexo),
/*
nombre_persona,
upper(iif(padrones.nombres is null,renaper_info.nombres,padrones.nombres)),
upper(iif(padrones.apellidos is null,renaper_info.apellido,padrones.apellidos)),
*/
upper(iif(renaper_info.apellido is not null and renaper_info.nombres is not null,
renaper_info.apellido + ' ' + renaper_info.nombres, padrones.nombre_persona)),
upper(iif(renaper_info.nombres is not null,renaper_info.nombres,padrones.nombres)),
upper(iif(renaper_info.apellido is not null,renaper_info.apellido,padrones.apellidos)),
padrones.identificador,
datos_personas.c02_fecha_nac,datos_personas.fecha_defuncion,
padrones.identificacion,
--emails.email,
clae.cod_clae ,clae.descripcion,
iif(datos_personas.nacionalidad is not null,datos_personas.nacionalidad,IIF(renaper_info.nacionalidad IS NULL AND convert(int,padrones.cuerpo_clave) < 90000000,'ARGENTINA', renaper_info.nacionalidad)),
substring(renaper_info.EMISION,7,4) + '-' + substring(renaper_info.EMISION,4,2) + '-' + substring(renaper_info.EMISION,1,2),
substring(renaper_info.VENCIMIENTO,7,4) + '-' + substring(renaper_info.VENCIMIENTO,4,2) + '-' + substring(renaper_info.VENCIMIENTO,1,2),
RENAPER_INFO.EJEMPLAR,renaper_info.ID_TRAMITE_PRINCIPAL ,RENAPER_INFO.idciudadano,
padrones.ismodified,padrones.id_padron
end
END
GO
Depends On
8Used By
No items found