Estamos haciendo la carga de los proveedores en el sistema, el tema es que al momento de dar de alta como persona al proveedor, e ingresarle el dato del CBU, el sistema nos informa Error de Reglas de Sistema - 481: El CBU ingresado no es válido!!!.
Hemos realizado la prueba generando el CBU de una cuenta bancaria real, y aún así no lo acepta. El formato con el que se genera desde el banco es 00000000 - 00000000000000, pero se lo está ingresando sin el guión medio (0000000000000000000000 - total: 22 dígitos).
Esto es un error en la carga de los datos, parametrización errónea del sistema o es bug que deba reportar en el track?
Estuve probando en la versión 1.9.4 y encontré un problema. Me fije como estaba implementada la función de validación del CBU, y lo que esta haciendo es chequear que el valor sea numérico y que se encuentre en el rango:
Pido disculpas por el ejemplo… pero no recordaba el número exacto, por eso fue todo con ceros.
Por lo que estuvimos corroborando, el CBU de las cuentas del Banco Nación de algunos empleados de la Universidad, comienzan en 0 (01100419…), en el CITI, Santander y Francés, sucede lo mismo. Por lo que me comentás, para estos casos, el sistema no lo consideraría un CBU válido?
Fijate que edite el post. Cuando lo verifique, no tuve en cuenta cual es el rango de los CBU por que la verdad que no tenía ninguno a mano. Después de eso, llame a la tesorera y le pregunte bien como era y ella me mostró CBUs que arrancan hasta con tres ceros.
El archivo que hay que editar es “SIU-Pilaga/proyectos/pilaga/php/p_nucleo/anexas/ci_abm_persona_formulario.php”. La función se llama “validar_cbu” y esta en la linea 41. Dentro del “if” está definido el rango de validación:
…
if (is_numeric($cbu)&& 1000000000000000000000<=$cbu && $cbu<=9999999999999999999999){
…
Para contemplar CBUs que tengan hasta tres ceros en el comienzo quedaría:
…
if (is_numeric($cbu)&& 0001000000000000000000<=$cbu && $cbu<=9999999999999999999999){
…
Entendés lo que hicimos? Cualquier duda consulta nuevamente.