PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 25 → Procedure Validar Cpf
Procedure Validar Cpf
Iniciado por amarildo, fev., 25 2015 6:29 PM - Sem resposta
Membro registado
535 mensagems
Popularité : +14 (14 votes)
Publicado em fevereiro, 25 2015 - 6:29 PM
http://windevdesenvolvimento.blogspot.com.br/2015/02/matos-funcao-cpf-validar.html

Aqui nesse video mostro como fazer uma rotina/procedure para validar um cpf

// Summary: retorna TRUE se o CPF está correto ou FALSE se está incorreto
// Syntax:
//[ <Result> = ] matos_f_cpf_validar (<pCPF> is string)
// Parameters:
//pCPF (ANSI string): <specify the role of pCPF>
// Return Value:
// boolean: // None
// For instance:
// Indicate an example.
//IF matos_f_cpf_validar(EDT_cpf) = 1 THEN
//STC_resultado="Cpf Validado com Sucesso"
//ELSE
//STC_resultado="Cpf Invalido"
//END
Procedure matos_f_cpf_validar(pCPF is string)
_CPFis string
_Peso is 2-byte unsigned int
_Resto is 1-byte int
_Digito is 1-byte int
FOR i=1 _TO_ Length(pCPF)
IF 47 < Asc(pCPF[[i]]) < 58 THEN
_CPF+=pCPF[[i]]
END
END
IF Length(_CPF) <> 11 THEN RESULT False
FOR i=1 TO 10
    _Peso = _Peso + (Asc(_CPF[[1 TO 10]][[i]]) -48)  * (10-i+2)
END
_Resto = Modulo(_Peso,11)
IF _Resto < 2 THEN
_Digito = 0
ELSE
_Digito = 11 - _Resto
END
IF Val(_CPF[[11]]) <> _Digito THEN
RESULT False
ELSE
RESULT True
END


IF matos_f_cpf_validar(EDT_cpf) = 1 THEN
STC_resultado="Cpf Validado com Sucesso"
ELSE
STC_resultado="Cpf Invalido"
END