Olá pessoal, venho solicitar ajuda principalmente do pessoal do RS. Tenho o seguinte IE 4800001926, que quando cadastro no sistema, acusa que o mesmo é inválido
Tenho o seguinte código para validação, reparem na linha em negrito ou aquela q tem o nr 467. A validação testa se os primeiros 3 números são maior ou igual a 1 e menor igual a 467. Porém o início do meu IE é 480, dai ele não entra no if. Verifiquei no próprios site do sefaz que existe mesmo essa validação, será que meu código está desatualizado ?? Gostaria da ajuda de vcs para resolver isso function ChkIERS(const ie: string): Boolean; // 999.999999-9 var b, i, soma: Integer; nro: array[1..10] of byte; dig: SmallInt; begin Result :=false; if (length(ie) <> 10) then exit; if not IsNumero(ie) then exit; i :=StrToInt(copy(ie, 1, 3)); if (i >= 1) and (i <= 467) then //i = 480, begin for i :=1 to 10 do nro[i] :=CharToInt(ie[i]); b :=2; soma :=0; for i :=1 to 09 do begin inc(soma, nro[i] * b); dec(b); if b = 1 then b :=9; end; dig :=11 - (soma mod 11); if (dig >= 10) then dig :=0; Result :=(dig = nro[10]); end; end; ____________________________________________________________________________________ Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]