CUIT (para la Argentina)

vForum público de la plataforma de desarrollo Velneo

Moderador: vCoaches

Avatar de Usuario
Cuco
vLeader
vLeader
Mensajes: 1179
Registrado: 20 Sep 2005, 20:45
Ubicación: Gijón - Asturias - España- Posición: 43.532928,-5.628616

Mensaje por Cuco » 17 Jun 2006, 19:17

He ampliado y comprobado el mapa.
Si se abre una ficha de entidades se puede comprobar un CUIT con o sin giones, o generar un CUIT con o sin guiones a partir de 10 números más 0, 1 ó 2 guiones.
Adjuntos
CUIT-JFD.map
(10.24 KiB) Descargado 142 veces
杜鹃鸟
Juan Miguel Figueroa Dorrego

Fontanía Lógica ™, E.P.I.
Una empresa personal imaginaria
Posición:
43.532928,-5.628616

Avatar de Usuario
amadis
vLeader
vLeader
Mensajes: 1311
Registrado: 22 Sep 2005, 16:08
Ubicación: Asturias (España)
Contactar:

Mensaje por amadis » 19 Jun 2006, 00:09

Gracias por vuestras aportaciones... Una utilidad más que tenemos...
vSaludos...

Amadís
Axos Soluciones Visuales
Software Gestión Distribución

Web: http://www.axosvisual.com

Avatar de Usuario
Yaguá
vRookie
vRookie
Mensajes: 20
Registrado: 23 May 2006, 18:29
Ubicación: Argentina (Concordia,Entre Ríos)

Mensaje por Yaguá » 20 Jun 2006, 13:51

Probé la función de Jua28 y cuando el verificador es 0, acepta como válido a 9.
La verdad que no analicé el algoritmo, solo lo probé con distintas CUIT.

Avatar de Usuario
Yaguá
vRookie
vRookie
Mensajes: 20
Registrado: 23 May 2006, 18:29
Ubicación: Argentina (Concordia,Entre Ríos)

Variable inexistente

Mensaje por Yaguá » 20 Jun 2006, 14:12

La intención es recoger en una variable la CUIT con formato 00-00000000-0 y aclaraba que debía existir.
No se si se pueden pasar una referencia a una variable como argumento de una función, para poder recoger el valor luego. La alternativa que se me ocurrió es que si la CUIT es válida la función devuelva la cadena formateada y si nó una cadena vacía. Pero decidí devolver 0 o 1 y la cadena en una variable global, porque me pareció ver que así está hecha la función de verificación del NIF, de Velneo.

Avatar de Usuario
Cuco
vLeader
vLeader
Mensajes: 1179
Registrado: 20 Sep 2005, 20:45
Ubicación: Gijón - Asturias - España- Posición: 43.532928,-5.628616

Mensaje por Cuco » 20 Jun 2006, 19:26

Ante todo pedir disculpas: En la función DEV-VERIF-DIGITO-CUIT se deslizó un error incomprensible (adjunto pantalla). Lo incomprensible del error no es el error en sí mismo, que a cualquiera le pasa incluso recomendando que se ejecute el inspector de errores sistemáticamente, sino que el imspector de errores no lo detecte.

Obsérvese la forma en que está escrita el valor que ha de tomar la variable local
nDigitoControl

'_cCadenaCUIT'fValor( 'cCaracter' )

No es una forma válida y debería ser detectada.
Pues no lo detecta, ni el inspector de errores del asistente para edición de fórmulas ni el inspector general y además funciona aunque mal, claro, pero funciona. Lo comunicaré a Soporte.

He realizado pruebas bastante exaustivas y no detecto lo que dices, Yaguá.
He probado con el mismo CUIT que pongo de ejemplo (que es el de internet)
Y en la posición 7ª la he ido cambiando desde 0 hasta 9 y curiosamente obtengo el mismo dígito de verificación

9 para 20-17251359-9 y para 20-17258359-9
Me temo que para otras posiciones, habrá siempre también dos números válidos.

Y he comprobado que el CUIT
20-17054359-0 es válido y el
20-17054359-9 no es válido

Lo primero pasa porque el algoritmo es muy flojo, la escritura de una cifra mal en una posición puede dar dos número válidos pero uno de ellos no era el que se queria escribir.
También admite el baile (intercambio) de cifras entre las posiciones
1ª y 7ª
2ª y 8ª
3ª y 9ª
4ª y 10ª
obteniéndose números validos pero incorrectos.

El código nacional de medicamentos españoles tiene un algoritmo similar y no es tan flojo pero le llega bastante.

Pruébalo ahora y si encuentras alguna anomalia la comunicas al foro. Gracias.

Yo he escrito una función que vale para verificar el digito de control si se escriben 11 dígitos sin guiones o 13 con guiones, y para generar el dígito de verificación si se escriben 10 sin guiones, u 11 ó 12, con 1 ó 2 guiones. Las he montado sobre el formulario para comprobaciónes y formas de uso.

También he visto en internet que los dos primeros dígitos no pueden ser más que 20, 21, 23 ... Se podría antes comprobar también esta circunstancia para validar no el dígito, sino el número en sí.

Gracias por probar el mapa y otra vez perdón.
Adjuntos
Erro-no-detectado.jpg
(35.56 KiB) Descargado 270 veces
杜鹃鸟
Juan Miguel Figueroa Dorrego

Fontanía Lógica ™, E.P.I.
Una empresa personal imaginaria
Posición:
43.532928,-5.628616

Avatar de Usuario
Cuco
vLeader
vLeader
Mensajes: 1179
Registrado: 20 Sep 2005, 20:45
Ubicación: Gijón - Asturias - España- Posición: 43.532928,-5.628616

Mensaje por Cuco » 20 Jun 2006, 19:32

Adjunto el mapa corregido, sólo será cambiar en la función DEV-VERIF-DIGITO-CUIT

en la posición 11

_cCadenaCUIT'fValor( 'cCaracter' )

por

fValor( 'cCaracter' )
Adjuntos
CUIT-JFD.map
Este es el mapa válido, espero que definitivo
(10.19 KiB) Descargado 158 veces
杜鹃鸟
Juan Miguel Figueroa Dorrego

Fontanía Lógica ™, E.P.I.
Una empresa personal imaginaria
Posición:
43.532928,-5.628616

Avatar de Usuario
Yaguá
vRookie
vRookie
Mensajes: 20
Registrado: 23 May 2006, 18:29
Ubicación: Argentina (Concordia,Entre Ríos)

Mensaje por Yaguá » 21 Jun 2006, 11:31

Ese era el error, ahora sí acepta los valores correctos.
Muchas gracias por tomarte el tiempo de revisar la función.

Avatar de Usuario
Cuco
vLeader
vLeader
Mensajes: 1179
Registrado: 20 Sep 2005, 20:45
Ubicación: Gijón - Asturias - España- Posición: 43.532928,-5.628616

Mensaje por Cuco » 21 Jun 2006, 20:30

No hay que darlas.

Con respecto al error del inspector de no detectar el mío, transcribo lo que me contestaron en soporte de Velneo:

"En lo que a su consulta se refiere ha comprobado que solamente ocurre cuando en una fórmula se incluye, junto a otro ítem, una función que tenga un solo parámetro (si la función no tiene parámetros o tiene más de 1, el inspector dará error). Lo pondremos en conocimiento del Dpto. de Desarrollo para que sea tenido en cuenta en futuras versiones."
杜鹃鸟
Juan Miguel Figueroa Dorrego

Fontanía Lógica ™, E.P.I.
Una empresa personal imaginaria
Posición:
43.532928,-5.628616

Avatar de Usuario
amadis
vLeader
vLeader
Mensajes: 1311
Registrado: 22 Sep 2005, 16:08
Ubicación: Asturias (España)
Contactar:

Mensaje por amadis » 21 Jun 2006, 21:00

Curioso "error"...
vSaludos...

Amadís
Axos Soluciones Visuales
Software Gestión Distribución

Web: http://www.axosvisual.com

Maulet
vRookie
vRookie
Mensajes: 1
Registrado: 22 Jun 2006, 22:44
Ubicación: Argentina
Contactar:

Fede

Mensaje por Maulet » 27 Jun 2006, 03:12

Hola.. me sumo ... creo que somos 5...

me viene al pelo... justo necesitaba para hacer un crusamiento de informacion con los datos tirados por el afip y mi empresa....

estoy haciendo un pequeño programa que le podria serviros... cundo lo termine lo subo

Salu2 foreros...y gracias...


grande Argentina !!! :o
One Quake to play.
One Rail to kill then all...

Responder