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
CREATE OR ALTER PROCEDURE dbo.sp_formar_cuit
AS
begin
declare @dni int
declare @resultado int = 0
declare @cuit_nro varchar(11)
declare @cuit varchar(11)
declare @validacion bit
declare @codes varchar(10) = '6789456789'
declare @res char(1)
declare @ok char(1)
declare @pre char(2)
declare @tabla table (cuit varchar(11))
declare @dnis table (dni varchar(8))
insert into @dnis values ('70054499')
DECLARE C_padron CURSOR FOR
/*select documento
from alberti
where cuit = ''*/
select dni from @dnis
OPEN C_Padron
FETCH NEXT FROM C_Padron INTO @dni
WHILE @@fetch_status = 0
BEGIN
set @ok = 'N'
set @pre = '20'
while @ok = 'N'
begin
set @cuit_nro = @pre + right('00000000'+convert(varchar,@dni),8)
declare @x int = 0
set @resultado = 0
while @x < 10
begin
declare @digitoValidador int = convert(int, substring(@codes, @x + 1, 1))
declare @digito int = convert(int, substring(@cuit_nro, @x + 1, 1))
declare @digitoValidacion int = @digitoValidador * @digito
set @resultado = @resultado + @digitoValidacion
set @x = @x + 1
end
set @resultado = @resultado % 11
set @res = right('00'+convert(varchar,@resultado),1)
set @cuit = @cuit_nro + @res
insert into @tabla values ( @cuit )
if (@pre = '27') begin set @ok = 'S' end
if (@pre = '24') begin set @pre = '27'end
if (@pre = '23') begin set @pre = '24'end
if (@pre = '20') begin set @pre = '23'end
end
FETCH NEXT FROM C_Padron INTO @dni
END
CLOSE C_Padron
DEALLOCATE C_Padron
select * from @tabla
end
GO
GO
CREATE OR ALTER PROCEDURE dbo.sp_formar_cuit
AS
begin
declare @dni int
declare @resultado int = 0
declare @cuit_nro varchar(11)
declare @cuit varchar(11)
declare @validacion bit
declare @codes varchar(10) = '6789456789'
declare @res char(1)
declare @ok char(1)
declare @pre char(2)
declare @tabla table (cuit varchar(11))
declare @dnis table (dni varchar(8))
insert into @dnis values ('70054499')
DECLARE C_padron CURSOR FOR
/*select documento
from alberti
where cuit = ''*/
select dni from @dnis
OPEN C_Padron
FETCH NEXT FROM C_Padron INTO @dni
WHILE @@fetch_status = 0
BEGIN
set @ok = 'N'
set @pre = '20'
while @ok = 'N'
begin
set @cuit_nro = @pre + right('00000000'+convert(varchar,@dni),8)
declare @x int = 0
set @resultado = 0
while @x < 10
begin
declare @digitoValidador int = convert(int, substring(@codes, @x + 1, 1))
declare @digito int = convert(int, substring(@cuit_nro, @x + 1, 1))
declare @digitoValidacion int = @digitoValidador * @digito
set @resultado = @resultado + @digitoValidacion
set @x = @x + 1
end
set @resultado = @resultado % 11
set @res = right('00'+convert(varchar,@resultado),1)
set @cuit = @cuit_nro + @res
insert into @tabla values ( @cuit )
if (@pre = '27') begin set @ok = 'S' end
if (@pre = '24') begin set @pre = '27'end
if (@pre = '23') begin set @pre = '24'end
if (@pre = '20') begin set @pre = '23'end
end
FETCH NEXT FROM C_Padron INTO @dni
END
CLOSE C_Padron
DEALLOCATE C_Padron
select * from @tabla
end
GO
Depends On
No items found
Used By
No items found