dbo.RENAPER_COMPLETA_CUITS_FALTANTES

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
select cuil, identificacion, dni, * from renaper_info where id = 39408
exec [sp_buscar_cuit] null, '4432409', null

exec [sp_buscar_cuit] 'BRAGAGNOLO CASTRO MARÍA EMILIA', '39242324', '"BRAGAGNOLO" near "CASTRO" near "MARÍA" near "EMILIA"'


*/

CREATE OR ALTER PROCEDURE dbo.RENAPER_COMPLETA_CUITS_FALTANTES
AS
BEGIN
    SET NOCOUNT ON;
 declare @dni varchar(8)
 declare @nombre varchar(200)
 declare @cuit varchar(11)
 declare @cuits table (cuit varchar(20), nombre varchar(200))
 declare @id bigint 
 
 DECLARE C_cursor CURSOR FOR
  select upper(apellido) + ' ' + upper(nombres) as nombre, 
  ltrim(rtrim(dbo.fn_StripCharacters(dni, '^0-9/'))) as dni, id
    from RENAPER_INFO 
      where nroError = 0 and ISNULL(cuil,'0') in ('','0') and dni is not null 
  -- and Id = 39408
 declare @cant int = 0 
 declare @act  int = 0 
 declare @nombre_contains varchar(500)

 OPEN C_cursor
 FETCH NEXT FROM C_cursor INTO  @nombre, @dni, @id
 WHILE @@fetch_status = 0
 BEGIN 
  set @cant = @cant + 1

  set @cuit = null 
  delete from @cuits
  set @nombre_contains = (select REPLACE(@nombre,' ','" near "'))
  set @nombre_contains = '"' + @nombre_contains + '"'
  --select '"' + @nombre + '"' as nombre, '"' + @dni + '"' as dni, 'antes de sp_buscar_cuit' as leyenda
  --select @nombre_contains return 
  insert into @cuits 
   exec [sp_buscar_cuit] @nombre, @dni, @nombre_contains
  select top 1 @cuit = cuit from @cuits 
  if (@cuit is not null) 
  begin
   set @act = @act + 1
   update RENAPER_INFO set cuil = @cuit, identificacion = @cuit where id = @id 
  end 
  else 
  begin
  select @nombre nombre, @dni dni, @id id 
  end 
  FETCH NEXT FROM C_cursor INTO  @nombre, @dni, @id 
 END
 CLOSE C_cursor
 DEALLOCATE C_cursor 
 select @cant as procesados,  @act  as actualizados 
END 

GO

Used By

No items found