Validar CUIT/CUIL para Argentina desde una función en SQL Server – Validate Argentinian CUIT/CUIL from SQL Server function


IF EXISTS (
SELECT
*
FROM
sys.objects
WHERE
object_id = OBJECT_ID(N'[dbo].[fn_ValidarCUIT]’) AND type in (N’FN’, N’IF’, N’TF’, N’FS’, N’FT’)
)
begin
drop function fn_ValidarCUIT
end
GO

create function fn_ValidarCUIT (@cuit varchar(13))
returns  bit
as

begin
declare @verificador int
declare @resultado int = 0
declare @cuit_nro varchar(11)
declare @validacion bit
declare @codes varchar(10) = ‘6789456789’

set @cuit_nro = REPLACE(@cuit, ‘-‘, ”)

if isnumeric(@cuit_nro) 1
begin
return 0
end

if len(@cuit_nro) 11
begin
set @validacion = 0
end

set @verificador = RIGHT(@cuit_nro, 1)

declare @x int = 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

If @resultado = @verificador
begin
set @validacion = 1
end
else
begin
set @validacion = 0
End

return @validacion
end

This content is property of Matias Creimerman.
Any misuse of this material will be punishable.
Creative Commons License
This work is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

About the author:

Matías Creimerman

Matías Creimerman

Profesional Website

Linkedin

Blog

Medium

Youracclaim Badges

Microsoft Tech Profile

Aboutme

Connection

Portfoliobox

Github

ASP.NET Forum

Facebook

Twitter

Youtube

Crunchbase

Blogger

Matías Creimerman Certifications

Matias Creimerman

 

2 comentarios en “Validar CUIT/CUIL para Argentina desde una función en SQL Server – Validate Argentinian CUIT/CUIL from SQL Server function”

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s