programación | Avantix - Soluciones Informáticas

Validar CBU en Javascript

Posted enero 19th, 2012 in Artículos de Interés by admin

Hace un tiempo me vi con la necesidad de hacer una validación de CBU. Para quienes no lo saben, el CBU es la Clave Bancaria Unificada es un número que identifica la cuenta, el banco y la sucursal. Es un elemento necesario para realizar transferencia inequívocas entre personas y/o empresas.

Validar en CBU se puede hacer tanto en el servidor como en el cliente. En éste caso, lo hice en Javascript para que se ejecute en el navegador del cliente.

Se los adjunto, debajo tengo las fuentes que me ayudaron a realizar el código en éste lenguaje.

if (document.Form.CBU.value.length < 22){
alert('Por favor, ingrese el CBU correctamente');
return false;
}

var cbu;
cbu = document.Form.CBU.value;

var ponderador;
ponderador = ’97139713971397139713971397139713′;

var i;
var nDigito;
var nPond;
var bloque1;
var bloque2;

var nTotal;
nTotal = 0;

bloque1 = ’0′ + cbu.substring(0,7)

for(i=0;i<=7;i++)
{
nDigito = bloque1.charAt(i)
nPond = ponderador.charAt(i)
nTotal = nTotal + (nPond * nDigito) – ((Math.floor(nPond * nDigito / 10)) * 10)
}

i=0;

while( ((Math.floor((nTotal+i)/10))*10) != (nTotal + i) )
{
i = i + 1;
}

// i = digito verificador

if (cbu.substring(7,8) != i){
alert(‘Por favor, ingrese un CBU válido’)
return false;
}

nTotal = 0;

bloque2 = ’000′ + cbu.substring(8,21)

for(i=0;i<=15;i++)
{
nDigito = bloque2.charAt(i)
nPond = ponderador.charAt(i)
nTotal = nTotal + (nPond * nDigito) – ((Math.floor(nPond * nDigito / 10)) * 10)
}

i=0;

while( ((Math.floor((nTotal+i)/10))*10) != (nTotal + i) )
{
i = i + 1;
}

// i = digito verificador

if (cbu.substring(21,22) != i){
alert(‘Por favor, ingrese un CBU válido’)
return false;
}

Fuentes

http://www.latiumsoftware.com/es/pascal/0049.php#6

http://www.portalfox.com/index.php?name=News&file=article&sid=444&mode=nested&order=0&thold=0

Programación y Desarrollo web

Posted mayo 4th, 2010 in Servicios by admin

El equipo interdiscliplinario de Avantix cuenta en su staff con personal capacitado para realizar desarrollos web a medida, también tenemos convenios con importantes empresas de desarrollo de software para derivar aquellos trabajos que lo ameriten.

Las tecnologías en las que trabajamos incluyen:

  • .NET
  • PHP
  • ASP
  • MySQL
  • SQL Server
  • WordPress

…entre otras.