Ilano 0 Denunciar post Postado Junho 7, 2007 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 NamespacePreciso 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
Zingui 0 Denunciar post Postado Junho 8, 2007 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
Ilano 0 Denunciar post Postado Junho 8, 2007 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