Fabrício Desbessel
Delphiano de coração
Clube Delphi
 Downloads | Mapa do Site | 44 visitantes on-line 


 Login
   
    
 Lembrar de mim
Esqueceu sua senha?

 MENU
 :: Inicial
 :: Currículo
 :: Lições
 :: Contato
 :: Delphi
 :: Publicações
 :: Livros
 :: Lattes
 :: Projetos

 Buscar no site
  

 Ajuda...


 Clube Delphi


 Busca Google

  
 Delphi - Validando CNPJ
O CNPJ pode ser verificado através de um cálculo do dígito verificador. Isso é interessante para suas aplicações pois impede que sejam informados CNPJ inválidos.

1º Coloque o código abaixo, acima do procedimento que irá fazer a chamada da verificação.

function Cnpj(xCNPJ: String):Boolean;
Var
  d1,d4,xx,nCount,fator,resto,digito1,digito2 : Integer;
   Check : String;
begin
d1 := 0;
d4 := 0;
xx := 1;
for nCount := 1 to Length( xCNPJ )-2 do
    begin
    if Pos( Copy( xCNPJ, nCount, 1 ), '/-.' ) = 0 then
    begin
    if xx < 5 then
    begin
    fator := 6 - xx;
    end
    else
   begin
   fator := 14 - xx;
   end;
   d1 := d1 + StrToInt( Copy( xCNPJ, nCount, 1 ) ) * fator;
   if xx < 6 then
    begin
    fator := 7 - xx;
   end
   else
   begin
   fator := 15 - xx;    end;
   d4 := d4 + StrToInt( Copy( xCNPJ, nCount, 1 ) ) * fator;
   xx := xx+1;
   end;
   end;
   resto := (d1 mod 11);
   if resto < 2 then
   begin
   digito1 := 0;
   end
   else
   begin
   digito1 := 11 - resto;
   end;
   d4 := d4 + 2 * digito1;
   resto := (d4 mod 11);
   if resto < 2 then
    begin
    digito2 := 0;
   end
   else
    begin
    digito2 := 11 - resto;
   end;
    Check := IntToStr(Digito1) + IntToStr(Digito2);
   if Check <> copy(xCNPJ,succ(length(xCNPJ)-2),2) then
    begin
    Result := False;
   end
   else
    begin
    Result := True;
   end;
end;

2º No evento OnExit do campo onde será digitado o CPF coloque o código abaixo:
 If NOMECAMPO.Text<>'' Then
    If Cnpj(NOMECAMPO.Text)=False Then
    Begin
      MessageDlg('CNPJ informado é incorreto!',mtError, [mbOk],0);
      NOMECAMPO.SetFocus;
    End;


 
 Edição Atual

Edição Atual


 Aprendizagem

Para você que quer aprender SQL, abaixo tem o link para um Objeto de Aprendizagem (OA) sobre o assunto.

Aprendendo SQL


 Frases
"Trate as pessoas da forma como elas devem ser e ajude-as a se tornarem o que elas são capazes de ser. "
Goethe

 Arquivo
 :: Acessando o Firebird através do Excel  
 :: Dar um pouco de amor incentiva muito as outras pessoas a fazerem o mesmo 
 :: Super produção da minha KX250F 
 :: Retorno a FAHOR/CFJL 
 :: O que você quer ser quando crescer? 
 :: Como a vida ensina 
 :: Delphi Conference 2010 - Uma certa indignação... 
 :: RadPHP XE o novo Delphi for PHP 
 :: Delphi - Tratando erros de banco de dados 
 :: Delphi - Tratando erros de sistemas 
 :: Delphi - Uilizando o Enter ao invés do TAB em projetos CLX 
 :: Delphi 2009 
 :: Crie uma loja virtual com Delphi for PHP - Parte XII 
 :: Crie uma loja virtual com Delphi for PHP - Parte XI 
 :: Crie uma loja virtual com Delphi for PHP - Parte X 
 :: Delphi - Como fazer o enter disparar um Click de um botão 
 :: Crie uma loja virtual com Delphi for PHP - Parte IX 
 :: Crie uma loja virtual com Delphi for PHP - Parte VIII 
 :: Crie uma loja virtual com Delphi for PHP - Parte VII 
 :: Delphi - Validando CNPJ 
 :: Crie uma loja virtual com Delphi for PHP - Parte VI 
 :: Crie uma loja virtual com Delphi for PHP - Parte V 
 :: Crie uma loja virtual com Delphi for PHP - Parte IV 
 :: Crie uma loja virtual com Delphi for PHP - Parte III 
 :: Encontro de Craques 
 :: Crie uma loja virtual com Delphi for PHP - Parte II 
 :: Você é Hands on? 
 :: Crie uma loja virtual com Delphi for PHP - Parte I 
 :: Autenticação no Delphi for PHP - Parte IV 
 :: Autenticação no Delphi for PHP - Parte III 
 :: Autenticação no Delphi for PHP - Parte II 
 :: Autenticação no Delphi for PHP - Parte I 
 :: Cá entre nós... – Horizontina e os horizontinenses 
 :: Window (Janelas) no Delphi For PHP 
 :: Nada substitui o Talento 
 :: MainMenu no Delphi For PHP 
 :: Aplicações MySQL com Delphi for PHP - Parte VII 
 :: Aplicações MySQL com Delphi for PHP - Parte VI 
 :: Delphi - Conexões dinâmicas ao Banco de Dados 
 :: Mundo Corporativo - A história da formiga 
 :: Aplicações MySQL com Delphi for PHP - Parte V 
 :: Impedir os cadastros em duplicidade 
 :: Aplicações MySQL com Delphi for PHP - Parte IV 
 :: Aplicações MySQL com Delphi for PHP - Parte III 
 :: Aplicações MySQL com Delphi for PHP - Parte II 
 :: Aplicações MySQL com Delphi for PHP - Parte I 
 :: Gráficos no Delphi II 
 :: Gráficos no Delphi I 
 :: Delphi For PHP 
 :: Delphi - Relatórios com Quick Report - Parte VI 
 :: Delphi - Relatórios com Quick Report - Parte V 
 :: Delphi Tour 
 :: Delphi - Relatórios com Quick Report - Parte IV 
 :: Delphi - Relatórios com Quick Report - Parte III 
 :: Delphi - CodeGear anuncia Delphi 2007 
 :: Delphi - CodeGear anuncia Delphi for PHP 
 :: Delphi - Relatórios com Quick Report - Parte II 
 :: Delphi - Relatórios com Quick Report - Parte I 
 :: Delphi - Mestre/Detail com dbExpress 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte V 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte IV 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte III 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte II 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte I 
 :: Delphi - Wizards para criação de banco de dados no Delphi 7 
 :: Delphi - Trabalhando com o Database Desktop 
 :: Delphi - Validando CPF 
 :: Delphi - Colocando Backup e Restauração em Sistemas com Firebird ou Interbase 
 :: Delphi - Artigo publicado na Revista ClubeDelphi 
 :: Palestrante na Borcon 
 :: Calculando o "Custo Brasil" em um PC 
 :: Delphi - Aplicações Web com Webbroker - Parte V 
 :: Políticos Honestos 
 :: Delphi - Aplicações Web com Webbroker - Parte IV 
 :: Delphi - Artigo publicado na revista Clube Delphi 
 :: Delphi - Aplicações Web com Webbroker - Parte III 
 :: Delphi - Artigo publicado na revista Clube Delphi 
 :: Delphi - Aplicações Web com Webbroker - Parte II 
 :: Delphi - Aplicações Web com Webbroker - Parte I 
 :: Delphi - Instalando o QuickReport no Delphi 7 
 :: Delphi - DLL's com formulários 
 :: Delphi - DLLs! Porque e Como utilizar 
 :: Delphi - Montando telas de cadastro dinamicamente 
 :: Delphi - Executando vídeo no Delphi através do ActiveX do Windows Media Player 
 :: Delphi - Listando arquivos de um diretório 
 :: Delphi - Como criar arquivos de Help com softwares gratuitos 
 :: Delphi - Consumindo RSS de notícias em .Net 
 :: Delphi - Criando uma instalação profissional para sua aplicação utilizando o InstallShield  
 :: Comissão Editorial da Revista Clube Delphi 
 :: Lançamento do Sistema SAS 
 :: Colunista ClubeDelphi 
 :: Delphi - Não perder dados com uma queda de energia 
 :: Delphi - Colocando a opção de configurar impressão 
 :: Delphi - Traduzindo as mensagens de erro 
 :: Exemplo de Persistência 
 :: Delphi - Colocando Backup em sistemas com tabelas Paradox 
 :: Delphi - Uilizando o Enter ao invés do TAB 
 :: Delphi - Deixando seus sistemas muito mais bonitos 
 :: Delphi - Impedir o fechamento da tela com ALT+F4 
 :: Delphi 2005 
 :: Delphi - Tela de Consultas Personalizáveis 
 ::  Delphi - Gerar planilhas do excel através de uma consulta (Query) 
 :: Delphi - Telas de Apresentação 
 :: Delphi - Filtrando Tabelas 

Fabrício Desbessel - É permitida a reprodução de qualquer material desse site desde que seja citada a fonte.