dbo.RENAPER_INSERTAR_05012022

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

33
Name Data Type Length Description
@ID_TRAMITE_PRINCIPAL varchar 200
@ID_TRAMITE_TARJETA_REIMPRESA varchar 200
@EJEMPLAR varchar 200
@VENCIMIENTO varchar 200
@EMISION varchar 200
@apellido varchar 200
@nombres varchar 200
@fechaNacimiento varchar 200
@cuil varchar 200
@calle varchar 200
@numero varchar 200
@piso varchar 200
@departamento varchar 200
@cpostal varchar 200
@barrio varchar 200
@monoblock varchar 200
@ciudad varchar 200
@municipio varchar 200
@provincia varchar 200
@pais varchar 200
@codigoError varchar 200
@codigof varchar 200
@mensaf varchar 200
@origenf varchar 200
@fechaf varchar 200
@idciudadano varchar 200
@nacionalidad varchar 200
@lugar_nacimiento varchar 200
@nroError varchar 200
@descripcionError varchar 200
@identificacion varchar 20
@sexo char 1
@dni varchar 10

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*

DOMICILIOS
DATOS_PERSONAS DOB Y DOF Y NACIONALIDAD
PADRONES SEXO APELLIDO Y NOMBRE

CASO DE RAMI RENAPER LO INFORMA SIN CUIL Y ESTO FALLA SI EL CUIL ES 0 O INSERTA TODOS A UN CUIL 0

SELECT * FROM RENAPER_INFO WHERE DNI='95557835'

*/



CREATE OR ALTER PROCEDURE dbo.RENAPER_INSERTAR_05012022
@ID_TRAMITE_PRINCIPAL VARCHAR(200),
@ID_TRAMITE_TARJETA_REIMPRESA VARCHAR(200),
@EJEMPLAR VARCHAR(200),
@VENCIMIENTO VARCHAR(200),
@EMISION VARCHAR(200),
@apellido VARCHAR(200),
@nombres VARCHAR(200),
@fechaNacimiento VARCHAR(200),
@cuil VARCHAR(200),
@calle VARCHAR(200),
@numero VARCHAR(200),
@piso VARCHAR(200),
@departamento VARCHAR(200),
@cpostal VARCHAR(200),
@barrio VARCHAR(200),
@monoblock VARCHAR(200),
@ciudad VARCHAR(200),
@municipio VARCHAR(200),
@provincia VARCHAR(200),
@pais VARCHAR(200),
@codigoError VARCHAR(200),
@codigof VARCHAR(200),
@mensaf VARCHAR(200),
@origenf VARCHAR(200),
@fechaf VARCHAR(200),
@idciudadano VARCHAR(200),
@nacionalidad VARCHAR(200),
@lugar_nacimiento VARCHAR(200),
@nroError VARCHAR(200),
@descripcionError VARCHAR(200),
@identificacion varchar(20),
@sexo char(1),
@dni varchar(10)

AS


BEGIN
    SET NOCOUNT ON;
 INSERT INTO RENAPER_INFO
 (ID_TRAMITE_PRINCIPAL,ID_TRAMITE_TARJETA_REIMPRESA,EJEMPLAR,VENCIMIENTO,EMISION,apellido,nombres,
 fechaNacimiento,cuil,calle,numero,piso,departamento,cpostal,barrio,monoblock,ciudad,municipio,provincia,pais,
 codigoError,codigof,mensaf,origenf,fechaf,idciudadano,nacionalidad,lugar_nacimiento,nroError,descripcionError,
 identificacion,sexo,dni) 
 VALUES
 (@ID_TRAMITE_PRINCIPAL,@ID_TRAMITE_TARJETA_REIMPRESA,@EJEMPLAR,@VENCIMIENTO,@EMISION,@apellido,@nombres,
 @fechaNacimiento,@cuil,@calle,@numero,@piso,@departamento,@cpostal,@barrio,@monoblock,@ciudad,@municipio,@provincia,@pais,
 @codigoError,@codigof,@mensaf,@origenf,@fechaf,@idciudadano,@nacionalidad,@lugar_nacimiento,@nroError,@descripcionError,
 @identificacion,@sexo,@dni)
  

  /* 23/07/2021 Grabamos fecha de nacimiento y defuncion, y nacionalidad en DATOS_PERSONAS */
  /* Si no tenemos registro en DATOS_PERSONAS, lo da de alta con los datos que nos vienen de Renaper */
 declare @fecha_nac date = null
 declare @fecha_def date = null 

 if (isnull(@fechaNacimiento,'') != '') 
  set @fecha_nac = convert (date, SUBSTRING(@fechaNacimiento,7,4) + '-' + SUBSTRING(@fechaNacimiento,4,2) + '-' + SUBSTRING(@fechaNacimiento,1,2))
 if (isnull(@fechaf,'') != '') 
  set @fecha_def = convert (date, SUBSTRING(@fechaf,7,4) + '-' + SUBSTRING(@fechaf,4,2) + '-' + SUBSTRING(@fechaf,1,2))
  
 if exists (select * from DATOS_PERSONAS where c01_cuit = @cuil and visible = 1) 
 begin 
  if (@fecha_nac is not null) 
   update DATOS_PERSONAS set c02_fecha_nac = @fecha_nac 
   where c01_cuit = @cuil and visible = 1 
  if (@fecha_def is not null) 
   update DATOS_PERSONAS set fecha_defuncion = @fecha_def, fecha_defuncion_ant = fecha_defuncion 
   where c01_cuit = @cuil and visible = 1
  if (isnull(@nacionalidad,'') != '')
   update datos_personas set nacionalidad =  @nacionalidad
   where c01_cuit = @cuil and visible = 1
 end
 else
 begin  
  insert into DATOS_PERSONAS(c01_cuit, doc_codigo, c02_nrodoc, c02_fecha_nac, c02_anio_nac, fecha_defuncion,visible,nacionalidad) 
    values (@cuil,'2',@dni,@fecha_nac,year(@fecha_nac),@fecha_def,1,@nacionalidad)
 end 

 
 /* 23/07/2021 Si en el padron no tenemos separado apellido y nombre lo grabamos con los datos que nos vienen de Renaper */
 declare @id_padron int = 0
 set @id_padron =  (select top 1 id_padron from padrones where identificacion = @cuil and habilitado = 1 
       and (isnull(apellidos,'') = '' or isnull(nombres,'') = '') 
       and identificador in (select identificador from identificadores where country_code = 'AR'))
 if (@id_padron != 0 )
 begin
  update padrones set apellidos = upper(@apellido),
          nombres   = upper(@nombres)
      where id_padron = @id_padron
 end 

 /* 23/07/2021 Grabamos domicilio 'E' con los datos que nos vienen de Renaper */
 declare @domicilio varchar(200) = isnull(@calle,'') + ' ' + isnull(@numero,'') + ' ' + isnull(@piso,'') + ' ' + isnull(@departamento,'') 
                                   + iif(isnull(@barrio,'0') != '0',' Barrio: ' + @barrio,'') + ' ' + iif(isnull(@ciudad,'0') != '0', ' - ' + @ciudad,'')
 declare @cp varchar(100) = @cpostal
 declare @localidad varchar(200) = iif (@municipio = 'CIUDAD DE BUENOS AIRES', 'CIUDAD AUTONOMA DE BUENOS AIRES',@municipio) 
 declare @pcia varchar(200) = iif (@provincia = 'CIUDAD DE BUENOS AIRES', 'CIUDAD AUTONOMA DE BUENOS AIRES', @provincia)  
 if (@pcia = 'CIUDAD AUTONOMA DE BUENOS AIRES' and @localidad = 'CIUDAD AUTONOMA DE BUENOS AIRES') set @localidad = null 
 declare @cod_pcia int = null 
 select @cod_pcia = codigo_afip from provincias where country_code = 'AR' and prv_nombre = @pcia
 set @domicilio = REPLACE(@domicilio,'      ',' ') 
 set @domicilio = REPLACE(@domicilio,'     ',' ') 
 set @domicilio = REPLACE(@domicilio,'    ',' ') 
 set @domicilio = REPLACE(@domicilio,'   ',' ')
 set @domicilio = REPLACE(@domicilio,'  ',' ') 
 set @domicilio = rtrim(ltrim(@domicilio))

 if not exists (select * from domicilios_todos where cuit = @cuil and domicilio = @domicilio and tipo_domicilio = 'E') 
  insert into domicilios_todos (cuit, domicilio, pai_codigo, pai_nombre, prv_codigo, prv_nombre, loc_nombre, codpos, tipo_domicilio, visible,created) 
  values (@cuil, @domicilio, '54','ARGENTINA', @cod_pcia, @pcia, @localidad, @cp, 'E', 1, GETDATE())

END 

/*
select * from domicilios_todos where cuit ='20955578350'
up+-date DATOS_PERSONAS set c02_fecha_nac= null where c01_cuit ='27208925658'
select * from DATOS_PERSONAS where c01_cuit ='20955578350'
select * from padrones where identificacion = '27208925658'
*/


GO

Used By

No items found