Arrumei essa rotina e adaptei para NUMERO DE PROCESSO que eh modulo 11. 01450.12345/2345-99
O segrego eh o seguinte: Inverta tudo 5432 54321 05410 e faça 5x1+4X2+3x3+2x4 5x5+4x6+3x7+2x8+1x9 0x10+5x11=4x13+'x14+0x15 some dos tres / 11 resto=0 primeiro digito = 1 resto=1 primeiro digito = 0 resto=10 primeiro digito= 1 diferente de 0,1,10 primeiro digito eh o resto encontrado. Pegue o primeiro digito e coloque no final do numero que você tem 01450.12345/2345(coloque aqui o primeiro digito encontrado) Comece tudo novamente com esse numero incluido (neste caso a ultima multiplicação vai ser igual a wvariavel x 16) agora você vai encontrar o segundo digito verificador e pronto. Essa regra se aplica para processos no serviço publico. Function CalculaCpfProc(Numero : string) : string; var i,j,k,Soma,Digito : Integer; CNPJ : Boolean; resto : integer; begin case Length(Numero) of 9 : CNPJ := True; 15 : CNPJ := true; else raise Exception.Create('Número inválido'); end; Result := Numero; for j := 1 to 2 do begin k := 2; Soma := 0; for i := Length(Result) downto 1 do begin Soma := Soma + (Ord(Result[i])-Ord('0'))*k; Inc(k); if (k > 16) and CNPJ then k := 2; end; resto := soma mod 11; begin if resto = 0 then digito := 1 else if resto = 1 then digito := 0 else if resto = 10 then digito := 1 else digito := 11- soma mod 11 end; Result := Result + Chr(Digito + Ord('0')); MessageDlg(inttostr(digito), mtInformation, [mbOk], 0); end; end; -----Mensagem original----- De: Trama Paulista .:sites .:sistemas [mailto:[EMAIL PROTECTED] Enviada em: quarta-feira, 15 de setembro de 2004 12:57 Para: [EMAIL PROTECTED] Assunto: [delphi-br] Módulo 11 Alguém saberia me dizer onde onde opsso encontro o cálculo do dígito verificador módulo 11??? Desde já, obrigado. Magno [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 --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.698 / Virus Database: 455 - Release Date: 02/06/2004 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.698 / Virus Database: 455 - Release Date: 02/06/2004 -- <<<<< 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