ValidaCPF

A função ValidaCPF recebe uma string com um CPF e indica se o CPF é válido fazendo duas verificações:

  • Se possui 11 dígitos, descartando eventuais espaços em branco no início e no final da string e também descartando os caracteres ".", "-" e "/".
  • Calcula os dígitos verificadores com base nos 9 primeiros dígitos e considera válido se os dígitos calculados forem iguais aos que vieram na string.

Tipo de Retorno

Integer

Pacote

A função ValidaCPF está definida dentro do pacote ValidaCPF.pkg.

Sintaxe

Move (ValidaCPF({sCPF})) to {iRet}

Onde:

  • {sCPF} é o CPF que será validado;
  • {iRet} é a variável que receberá o resultado da função, sendo 1 (um) se o CPF for válido, e 0 (zero) caso contrário.

Exemplo

Abaixo um exemplo de uso da função, que verifica se o CPF é válido e apresenta um erro se não for:

Function Valida_CPF Integer iCampo String sValor Returns Integer
    If (ValidaCPF(sValor) = 0) Begin
        Error Dferr_Operator "Número de CPF inválido!"
        Function_Return 1
    End
End_Function // Valida_CNPJ
Set Field_Validate_Msg Field Usuario.CPF to Get_Valida_CPF

Tópicos relacionados

Observação

  • Note que CPFs com números repetidos como "111.111.111-11" são válidos de acordo com a verificação dos dígitos. Esta função retornará true para estes CPFs.