Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
3| Name | Data Type | Length | Description |
|---|---|---|---|
| @fecha | date | 3 | |
| @accion | varchar | 100 | |
| @id_renaper | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
update renaper_cuits set renaper_cuits.apellido = padrones.apellidos, renaper_cuits.nombres = padrones.nombres
from renaper_cuits
inner join padrones on (padrones.identificacion = cuit and habilitado= 1)
where fecha = '2021-11-26'
and procesado = 1 and apellido is null
update renaper_cuits set renaper_cuits.apellido = padrones.nombre_persona
from renaper_cuits
inner join padrones on (padrones.identificacion = cuit and habilitado= 1)
where fecha = '2021-11-26'
and procesado = 1 and apellido is null
update renaper_cuits set renaper_cuits.fecha_nacimiento = c02_fecha_nac
from renaper_cuits
inner join datos_personas on (datos_personas.c01_cuit = cuit and visible = 1)
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.fecha_nacimiento is null
update renaper_cuits set renaper_cuits.fecha_defuncion = datos_personas.fecha_defuncion
from renaper_cuits
inner join datos_personas on (datos_personas.c01_cuit = cuit and visible = 1)
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.fecha_defuncion is null
update renaper_cuits set renaper_cuits.nacionalidad = 'ARGENTINA'
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.nacionalidad is null and dni < '15000000'
update renaper_cuits set renaper_cuits.nacionalidad = 'ARGENTINA'
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.nacionalidad is null and dni > '15000000' and dni < '60000000'
select * from renaper_cuits where fecha = '2021-11-26'
exec renaper_lista_cuit '2021-11-26', 'LISTA'
exec renaper_lista_cuit '2021-11-24', 'UPDATE', 10
*/
CREATE OR ALTER PROCEDURE dbo.renaper_lista_cuit
@fecha date,
@accion varchar(100),
@id_renaper int = null
AS
BEGIN
declare @id int, @cuit varchar(20), @dni varchar(10), @sexo char(1)
declare @cuitp varchar(20), @dnip varchar(10), @sexop char(1)
if (@accion = 'LISTA')
begin
DECLARE C_cur CURSOR FOR
select id,
cuit,
sexo,
dni
from renaper_cuits where isnull(procesado,0) = 0 and fecha = @fecha order by cuit desc
OPEN C_cur
FETCH NEXT FROM C_cur INTO @id, @cuit, @sexo, @dni
WHILE @@fetch_status = 0
BEGIN
if (isnull(@cuit,'') = '' or isnull(@dni,'') = '' or isnull(@sexo,'') = '')
begin
if (isnull(@cuit,'') != '')
begin
select @cuitp = identificacion, @dnip = RIGHT('00000000'+cuerpo_clave,8), @sexop = sexo from padrones where identificacion = @cuit and habilitado = 1
end
if (isnull(@dni,'') != '')
begin
select @cuitp = identificacion, @dnip = RIGHT('00000000'+cuerpo_clave,8), @sexop = sexo
from padrones
where (cuerpo_clave = @dni or cuerpo_clave = RIGHT('00000000'+@dni,8))
and identificador in (select identificador from identificadores where country_code = 'AR')
and habilitado = 1
end
if (isnull(@dnip,'') != '')
update renaper_cuits set dni = @dnip where id = @id
if (isnull(@cuitp,'') != '')
update renaper_cuits set cuit = @cuitp where id = @id
if (isnull(@sexo,'') = '')
begin
if (@sexop = 'F' or @sexop = 'M')
begin
update renaper_cuits set sexo = @sexop where id = @id
end
else
begin
if (@cuitp like '27%') update renaper_cuits set sexo = 'F' where id = @id
if (@cuitp like '20%') update renaper_cuits set sexo = 'M' where id = @id
end
end
end
FETCH NEXT FROM C_cur INTO @id, @cuit, @sexo, @dni
END
CLOSE C_cur
DEALLOCATE C_cur
select id, cuit, sexo, dni
from renaper_cuits where isnull(procesado,0) = 0 and fecha = @fecha order by cuit desc
end
if (@accion = 'UPDATE')
begin
declare @apellido varchar(200) = null,
@nombres varchar(200) = null,
@fecha_nacimiento date = null,
@fechaNacimiento varchar(200) = null,
@fecha_defuncion date = null,
@fechaf varchar(200) = null,
@nacionalidad varchar(100) = null,
@lugar_nacimiento varchar(100) = null
select top 1 @apellido = apellido,
@nombres = nombres,
@fechaNacimiento = fechaNacimiento,
@fechaf = fechaf,
@nacionalidad = nacionalidad,
@lugar_nacimiento = lugar_nacimiento
from renaper_info
where renaper_info.cuil = (select renaper_cuits.cuit from renaper_cuits where id = @id_renaper)
order by created desc
if (isnull(@fechaNacimiento,'') != '' and @fechaNacimiento not like '%-%')
set @fecha_nacimiento = convert (date, SUBSTRING(@fechaNacimiento,7,4) + '-' + SUBSTRING(@fechaNacimiento,4,2) + '-' + SUBSTRING(@fechaNacimiento,1,2))
if (isnull(@fechaf,'') != '' and @fecha_defuncion not like '%-%')
set @fecha_defuncion = convert (date, SUBSTRING(@fechaf,7,4) + '-' + SUBSTRING(@fechaf,4,2) + '-' + SUBSTRING(@fechaf,1,2))
update renaper_cuits
set renaper_cuits.apellido = @apellido,
renaper_cuits.nombres = @nombres,
renaper_cuits.fecha_nacimiento = @fecha_nacimiento,
renaper_cuits.fecha_defuncion = @fecha_defuncion,
renaper_cuits.nacionalidad = @nacionalidad,
renaper_cuits.lugar_nacimiento = @lugar_nacimiento,
procesado = 1
where renaper_cuits.id = @id_renaper
end
END
select * from renaper_cuits where id = 3290
GO
GO
/*
update renaper_cuits set renaper_cuits.apellido = padrones.apellidos, renaper_cuits.nombres = padrones.nombres
from renaper_cuits
inner join padrones on (padrones.identificacion = cuit and habilitado= 1)
where fecha = '2021-11-26'
and procesado = 1 and apellido is null
update renaper_cuits set renaper_cuits.apellido = padrones.nombre_persona
from renaper_cuits
inner join padrones on (padrones.identificacion = cuit and habilitado= 1)
where fecha = '2021-11-26'
and procesado = 1 and apellido is null
update renaper_cuits set renaper_cuits.fecha_nacimiento = c02_fecha_nac
from renaper_cuits
inner join datos_personas on (datos_personas.c01_cuit = cuit and visible = 1)
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.fecha_nacimiento is null
update renaper_cuits set renaper_cuits.fecha_defuncion = datos_personas.fecha_defuncion
from renaper_cuits
inner join datos_personas on (datos_personas.c01_cuit = cuit and visible = 1)
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.fecha_defuncion is null
update renaper_cuits set renaper_cuits.nacionalidad = 'ARGENTINA'
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.nacionalidad is null and dni < '15000000'
update renaper_cuits set renaper_cuits.nacionalidad = 'ARGENTINA'
where fecha = '2021-11-26'
and procesado = 1 and renaper_cuits.nacionalidad is null and dni > '15000000' and dni < '60000000'
select * from renaper_cuits where fecha = '2021-11-26'
exec renaper_lista_cuit '2021-11-26', 'LISTA'
exec renaper_lista_cuit '2021-11-24', 'UPDATE', 10
*/
CREATE OR ALTER PROCEDURE dbo.renaper_lista_cuit
@fecha date,
@accion varchar(100),
@id_renaper int = null
AS
BEGIN
declare @id int, @cuit varchar(20), @dni varchar(10), @sexo char(1)
declare @cuitp varchar(20), @dnip varchar(10), @sexop char(1)
if (@accion = 'LISTA')
begin
DECLARE C_cur CURSOR FOR
select id,
cuit,
sexo,
dni
from renaper_cuits where isnull(procesado,0) = 0 and fecha = @fecha order by cuit desc
OPEN C_cur
FETCH NEXT FROM C_cur INTO @id, @cuit, @sexo, @dni
WHILE @@fetch_status = 0
BEGIN
if (isnull(@cuit,'') = '' or isnull(@dni,'') = '' or isnull(@sexo,'') = '')
begin
if (isnull(@cuit,'') != '')
begin
select @cuitp = identificacion, @dnip = RIGHT('00000000'+cuerpo_clave,8), @sexop = sexo from padrones where identificacion = @cuit and habilitado = 1
end
if (isnull(@dni,'') != '')
begin
select @cuitp = identificacion, @dnip = RIGHT('00000000'+cuerpo_clave,8), @sexop = sexo
from padrones
where (cuerpo_clave = @dni or cuerpo_clave = RIGHT('00000000'+@dni,8))
and identificador in (select identificador from identificadores where country_code = 'AR')
and habilitado = 1
end
if (isnull(@dnip,'') != '')
update renaper_cuits set dni = @dnip where id = @id
if (isnull(@cuitp,'') != '')
update renaper_cuits set cuit = @cuitp where id = @id
if (isnull(@sexo,'') = '')
begin
if (@sexop = 'F' or @sexop = 'M')
begin
update renaper_cuits set sexo = @sexop where id = @id
end
else
begin
if (@cuitp like '27%') update renaper_cuits set sexo = 'F' where id = @id
if (@cuitp like '20%') update renaper_cuits set sexo = 'M' where id = @id
end
end
end
FETCH NEXT FROM C_cur INTO @id, @cuit, @sexo, @dni
END
CLOSE C_cur
DEALLOCATE C_cur
select id, cuit, sexo, dni
from renaper_cuits where isnull(procesado,0) = 0 and fecha = @fecha order by cuit desc
end
if (@accion = 'UPDATE')
begin
declare @apellido varchar(200) = null,
@nombres varchar(200) = null,
@fecha_nacimiento date = null,
@fechaNacimiento varchar(200) = null,
@fecha_defuncion date = null,
@fechaf varchar(200) = null,
@nacionalidad varchar(100) = null,
@lugar_nacimiento varchar(100) = null
select top 1 @apellido = apellido,
@nombres = nombres,
@fechaNacimiento = fechaNacimiento,
@fechaf = fechaf,
@nacionalidad = nacionalidad,
@lugar_nacimiento = lugar_nacimiento
from renaper_info
where renaper_info.cuil = (select renaper_cuits.cuit from renaper_cuits where id = @id_renaper)
order by created desc
if (isnull(@fechaNacimiento,'') != '' and @fechaNacimiento not like '%-%')
set @fecha_nacimiento = convert (date, SUBSTRING(@fechaNacimiento,7,4) + '-' + SUBSTRING(@fechaNacimiento,4,2) + '-' + SUBSTRING(@fechaNacimiento,1,2))
if (isnull(@fechaf,'') != '' and @fecha_defuncion not like '%-%')
set @fecha_defuncion = convert (date, SUBSTRING(@fechaf,7,4) + '-' + SUBSTRING(@fechaf,4,2) + '-' + SUBSTRING(@fechaf,1,2))
update renaper_cuits
set renaper_cuits.apellido = @apellido,
renaper_cuits.nombres = @nombres,
renaper_cuits.fecha_nacimiento = @fecha_nacimiento,
renaper_cuits.fecha_defuncion = @fecha_defuncion,
renaper_cuits.nacionalidad = @nacionalidad,
renaper_cuits.lugar_nacimiento = @lugar_nacimiento,
procesado = 1
where renaper_cuits.id = @id_renaper
end
END
select * from renaper_cuits where id = 3290
GO
Depends On
4Used By
No items found