Ir para conteúdo
Fórum Script Brasil
  • 0

Cálculo Do Dv Do Cnpj


Guest - Daniel -

Pergunta

Guest - Daniel -

Aí, galera... estou precisando de uma ajuda muito grande de vocês. Fui alocado para trabalhar com ASP (mesmo sem saber muita coisa sobre a linguagem). E agora eu tenho que, urgentemente, fazer uma página que calcula o DV do CNPJ. Eu já procurei em Google e tudo mas só encontro rotinas em PHP, VB... mas em ASP eu ainda não achei... alguém poderia me dar um HELP!!

Agradeceria profundamente!!!

Abraços,

Daniel

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Guest - Daniel -

Ok, eu achei este código, mas tá dando o seguinte erro:

Microsoft VBScript compilation error '800a03ee' 

Expected ')' 

/aplweb/calcula DV-new.asp, line 5 

Function Valida_Cnpj (Num_Cnpj As String) As Boolean
-------------------------------^
O código é o seguinte (se vocês me mostrarem mais erros agradeceria muito):
<html>
<head>
<!-- func_cnpj.asp -->
<%
Function Valida_Cnpj (Num_Cnpj As String) As Boolean
      Dim dig1, dig2 As Integer 
      ' Variáveis que irão receber os dígitos calculados
      Dim p_dig1, p_dig2 As Integer 
      'Variaveis usadas somente p/ auxiliar no
      'calculo do dígito
      Dim str_partes, dig_fim As String 
      ' Vão receber respectivamente os nove
      'caracteres iniciais e os dois ultimos
      Dim parte1, parte2, parte3, parte4 As String 
      'Recebem os números do cnpj sem os
      'pontos
      Dim soma_dig1, soma_dig2, cont As Long 
      'Recebem o valor da soma e
      'multiplicação dos números
      'Inicia a eliminação dos Pontos e traços do número
      parte1 = Mid(Num_Cnpj, 1, 2)
      parte2 = Mid(Num_Cnpj, 4, 3)
      parte3 = Mid(Num_Cnpj, 8, 3)
      parte4= Mid(Num_Cnpj, 12, 4) 
      str_partes = parte1 + parte2 + parte3 + parte4
      dig_fim = Right(Num_Cnpj, 2)
      soma_dig1 = 0
      soma_dig2 = 0
      For cont = 1 To Len(str_partes)
            soma_dig1 = soma_dig1 + Val(Mid(str_partes, cont, 1)) _
            * IIf(cont < 5, 6 - cont, 14 - cont)
            soma_dig2 = soma_dig2 + Val(Mid(str_partes, cont, 1)) _
            * IIf(cont < 6, 7 - cont, 15 - cont)
      Next cont
      p_dig1 = soma_dig1 Mod 11
      dig1 = IIf(p_dig1 = 0 Or p_dig1 = 1, 0, 11 - p_dig1)
      p_dig2 = soma_dig2 + dig1 * 2
      p_dig2 = p_dig2 Mod 11
      dig2 = IIf(p_dig2 = 0 Or p_dig2 = 1, 0, 11 - p_dig2)
      If dig_fim <> dig1 & dig2 Then
            Valida_Cnpj= False 'Retorna false se o número não for válido
      Else
            Valida_Cnpj= True 'Retorna true se o número for váldo
      End If
End Function
%>

</head>

<body>
	<form action="<%call Valida_Cnpj(%> cnpj <%)%>" method="post" target="_self" name="CNPJ">	
  <td width="23%"><b>CNPJ<b></td>
  <td width="2%"><b>:</b></td>
  <td><input type="text" name="cnpj" size="20" maxlength="13" tabindex="3"></td>
  <input type="submit" value="Submit">
	</form>
</body>
</html>

Valeu, galera!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...