22 de agosto de 2001

Validar el número de CUIT o CUIL

¿Cómo validar el número de C.U.I.T. o C.U.I.L.? (Solo para Argentina)

En la República Argentina a todas las personas físicas o jurídicas, se le otorga un número conocido como Clave Única de Identificación Tributaria (C.U.I.T.) o Clave Única de Identificación Laboral (C.U.I.L.).

Para saber si este número es correcto utilizaremos la función:

? _ValidaCUIT("20-16886271-8")

*------------------------------------------------
* FUNCTION _ValidaCUIT(tcCUIT)
*------------------------------------------------
* Valida el número de CUIT o CUIL
* USO: _ValidaCUIT(<99-99999999-9>)
* RETORNA: Lógico
*------------------------------------------------
FUNCTION _ValidaCUIT(tcCUIT)
  LOCAL lnSuma, llRet
  IF EMPTY(tcCuit)
    llRet = .T.
  ELSE
    IF TYPE('tcCuit') = 'C' AND LEN(tcCuit) = 13
      lnSuma = VAL(SUBS(tcCUIT,11,1)) * 2 + ;
        VAL(SUBS(tcCUIT,10,1)) * 3 + ;
        VAL(SUBS(tcCUIT,9,1)) * 4 + ;
        VAL(SUBS(tcCUIT,8,1)) * 5 + ;
        VAL(SUBS(tcCUIT,7,1)) * 6 + ;
        VAL(SUBS(tcCUIT,6,1)) * 7 + ;
        VAL(SUBS(tcCUIT,5,1)) * 2 + ;
        VAL(SUBS(tcCUIT,4,1)) * 3 + ;
        VAL(SUBS(tcCUIT,2,1)) * 4 + ;
        VAL(SUBS(tcCUIT,1,1)) * 5
      llRet = VAL(SUBS(tcCUIT,13,1)) = ;
        IIF(MOD(lnSuma,11) = 0, 0, 11-MOD(lnSuma,11))
    ELSE
      *--- No es Char o no tiene el largo correcto
      llRet = .F.
    ENDIF
  ENDIF
  RETURN llRet
ENDFUNC

Luis María Guayán

No hay comentarios. :

Publicar un comentario