Eduardo boa tarde! Tente utilizar a função abaixo:
function ValidaCGC(NUM: string): boolean; var N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N11, N12: integer; D1, D2: integer; DIGITADO, CALCULADO: string; begin NUM:= trim(NUM); if length(NUM) <> 14 then begin result:= false; exit; end; N1:= StrToInt(NUM[1]); N2:= StrToInt(NUM[2]); N3:= StrToInt(NUM[3]); N4:= StrToInt(NUM[4]); N5:= StrToInt(NUM[5]); N6:= StrToInt(NUM[6]); N7:= StrToInt(NUM[7]); N8:= StrToInt(NUM[8]); N9:= StrToInt(NUM[9]); N10:= StrToInt(NUM[10]); N11:= StrToInt(NUM[11]); N12:= StrToInt(NUM[12]); D1:= (N12 * 2) + (N11 * 3) + (N10 * 4) + (N9 * 5) + (N8 * 6) + (N7 * 7) + (N6 * 8) + (N5 * 9) + (N4 * 2) + (N3 * 3) + (N2 * 4) + (N1 * 5); D1:= 11 - (D1 mod 11); if D1 >= 10 then D1:= 0; D2:= (D1 * 2) + (N12 * 3) + (N11 * 4) + (N10 * 5) + (N9 * 6) + (N8 * 7) + (N7 * 8) + (N6 * 9) + (N5 * 2) + (N4 * 3) + (N3 * 4) + (N2 * 5) + (N1 * 6); D2:= 11 - (D2 mod 11); if D2 >= 10 then D2:= 0; CALCULADO:= IntToStr(D1) + IntToStr(D2); DIGITADO:= NUM[13] + NUM[14]; if CALCULADO = DIGITADO then Result:= true else Result:= false; end; Pelos testes que fiz, o unico CGC que você terá que fazer tratamento será o 000.000.000-00. Quaisquer duvidas contate. Abraços José de Moura Ps: Se precisar para o cpf eu tenho a função. -----Mensagem original----- De: Eduardo Silva ® [mailto:[EMAIL PROTECTED] Enviada em: sexta-feira, 22 de outubro de 2004 Junior 11:34:AM Para: [EMAIL PROTECTED] Assunto: [delphi-br] Dúvida sobre CPF Galera, se a gente digitar o número 111.111.111-11 de um CPF ele passa pela funçao de validação. Duvida: esse número é válido ? Existe alguém que tenha esse CPF ? Em caso de ele não ser válido, eu devo tratar isso dentro da minha função de validação ? _ __________________________________ _ / )| |( \ / / | Eduardo de Almeida Silva | \ \ _( (_ | _ * [EMAIL PROTECTED] _ | _) )_ (((\ \)|_/ )__________________________( \_|(/ /))) (\\\\ \_/ / \ \_/ ////) \ / \ / \ _/ \_ / / / \ \ --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.772 / Virus Database: 519 - Release Date: 01/10/2004 [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: ---------------------------------------------------------------------------- -- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html