Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ilano

Validando número de CPF

Recommended Posts

Olá pessoal,Peguei esse código para validar CPF:

'Analista: Milena'Data da Criação: 06/04/2005'Descrição: Aqui serão inseridas a Função validar CPF '--------------------'Data da última alteração: 06/04/2005'Analista que fez última alteração: MilenaNamespace S007Public Class ValidarCPF Public Function ValCPF(ByVal txtCPFAluno As String, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) As Boolean Dim i As Integer 'utilizada nos FOR... NEXT Dim vlStrCampo As String 'armazena do CPF que será utilizada para o cálculo Dim vlStrCaracter As String 'armazena os digitos do CPF da direita para a esquerda Dim vlIntNumero As Integer 'armazena o digito separado para cálculo (uma a um) Dim vlIntMais As Integer 'armazena o digito específico multiplicado pela sua base Dim vlLngSoma As Long 'armazena a soma dos digitos multiplicados pela sua base(vlIntMais) Dim vlDblDivisao As Double 'armazena a divisão dos digitos*base por 11 Dim vlLngInteiro As Long 'armazena inteiro da divisão Dim vlIntResto As Integer 'armazena o resto Dim vlIntDig1 As Integer 'armazena o 1º digito verificador Dim vlIntDig2 As Integer 'armazena o 2º digito verificador Dim vlStrConf As String 'armazena o digito verificador Try vlLngSoma = 0 vlIntNumero = 0 vlIntMais = 0 'vlStrCampo = Replace(txtCPFAluno, ".", "") vlStrCampo = Replace(args.Value, ".", "") vlStrCampo &= Replace(vlStrCampo, "-", "") vlStrCampo = Left(vlStrCampo, 9) 'Inicia cálculos do 1º dígito For i = 2 To 10 vlStrCaracter = Right(vlStrCampo, i - 1) vlIntNumero = Left(vlStrCaracter, 1) vlIntMais = vlIntNumero * i vlLngSoma = vlLngSoma + vlIntMais Next vlDblDivisao = vlLngSoma / 11 vlLngInteiro = Int(vlDblDivisao) * 11 vlIntResto = vlLngSoma - vlLngInteiro If vlIntResto = 0 Or vlIntResto = 1 Then vlIntDig1 = 0 Else vlIntDig1 = 11 - vlIntResto End If vlStrCampo = vlStrCampo & vlIntDig1 'concatena o CPF com o primeiro digito verificador vlLngSoma = 0 vlIntNumero = 0 vlIntMais = 0 'Inicia cálculos do 2º dígito For i = 2 To 11 vlStrCaracter = Right(vlStrCampo, i - 1) vlIntNumero = Left(vlStrCaracter, 1) vlIntMais = vlIntNumero * i vlLngSoma = vlLngSoma + vlIntMais Next i vlDblDivisao = vlLngSoma / 11 vlLngInteiro = Int(vlDblDivisao) * 11 vlIntResto = vlLngSoma - vlLngInteiro If vlIntResto = 0 Or vlIntResto = 1 Then vlIntDig2 = 0 Else vlIntDig2 = 11 - vlIntResto End If vlStrConf = vlIntDig1 & vlIntDig2 'Caso o CPF esteja errado dispara a mensagem If vlStrConf <> Right(args.Value, 2) Then 'If vlStrConf <> Right(txtCPFAluno, 2) Then args.IsValid = False 'args.IsValid = False Else args.IsValid = True ' args.IsValid = True End If Catch err As Exception ' return false lblMensagem.Text = "Erro ao validar CPF: " & err.Message End Try End FunctionEnd ClassEnd Namespace

Preciso saber como faço para utilizá-lo em minha aplicação web.Grato,Ilano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você criará um arquivo pra classe (.vb).

 

depois irá importar o namespace S007.

Imports S007

e usará ,por exemplo, desta maneira:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load		Dim a As New ValidarCPF		a.ValCPF(parametros)	End Sub

Ficou claro? ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara,

 

Eu tentei da forma q você postou e não deu certo. O código ficou assim:

 

No evento OnClick do botão:

Dim a As New ValidarCPF

a.ValidaCPF(TxtCPF.Text)

Tb tentei assim:

 

If a.ValidaCPF(TxtCPF.Text) = False Then

LbMensagem.Text = "Nº DO CPF INVÁLIDO!!!"

TxtCPF.Text = ""

End If

Fica sublinhado de azul a parte da linha linha: a.ValidaCPF

 

Como posso resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.