Funação Validade CPF/CNPJ e Incrição Estadual
Após as mudanças ocorridas no site não consequi mais encontrar o link ´funções´.
Alguém poderia me informar onde consigo uma função para validação de CPF/CNPJ ?
Gostari também de uma função para formatação e validação de Incrição Estadual.
Obrigado.
Marcelo
Alguém poderia me informar onde consigo uma função para validação de CPF/CNPJ ?
Gostari também de uma função para formatação e validação de Incrição Estadual.
Obrigado.
Marcelo
Marknet
Curtidas 0
Respostas
Lucas Silva
03/05/2004
para CPF
para cnpj
function TForm1.VerificaCpf(cpf: String): Boolean; //Esta procedure é usada para verificar se um CPF existe. //Se o resultado for false o cpf é invalido.Se nada foi digitato ou se o cpf for valido o resultado é true. var n1, n2, n3, n4, n5, n6, n7, n8, n9, d1, d2 : integer; digitado, calculado : string; begin Result := False; if not(cpf = ´´)then begin if length(trim(cpf)) <> 11 then begin Result := False; end else begin n1 := StrToInt(cpf[1]); n2 := StrToInt(cpf[2]); n3 := StrToInt(cpf[3]); n4 := StrToInt(cpf[4]); n5 := StrToInt(cpf[5]); n6 := StrToInt(cpf[6]); n7 := StrToInt(cpf[7]); n8 := StrToInt(cpf[8]); n9 := StrToInt(cpf[9]); d1 := n9*2 + n8*3 + n7*4 + n6*5 + n5*6 + n4*7 + n3*8 + n2*9 +n1*10; d1 := 11 - (d1 mod 11); if d1 >= 10 then d1 := 0; d2 := d1*2 + n9*3 + n8*4 + n7*5 + n6*6 + n5*7 + n4*8 + n3*9 + n2*10 +n1*11; d2 := 11 - (d2 mod 11); if d2 >= 10 then d2 := 0; calculado:=IntToStr(d1)+ IntToStr(d2); digitado:=cpf[10]+ cpf[11]; if calculado <> digitado then begin result := FALSE; end else result := TRUE; end; end; end;
para cnpj
function TForm1.VerificaCnpj(cnpj: String): Boolean; //Esta procedure é usada para verificar se um CGC existe. //Se o resultado for false o cnpj é inválido. Se nada foi digitato ou se o cgc for valido o resultado é true var n1, n2, n3, n4, n5, n6, n7, n8, n9, n10, n11, n12, d1, d2 : integer; digitado, calculado : string; begin Result := False; if not (cnpj = ´´) then begin if length(trim(cnpj))<> 14 then begin Result := False; end else begin n1 := StrToInt(cnpj[1]); n2 := StrToInt(cnpj[2]); n3 := StrToInt(cnpj[3]); n4 := StrToInt(cnpj[4]); n5 := StrToInt(cnpj[5]); n6 := StrToInt(cnpj[6]); n7 := StrToInt(cnpj[7]); n8 := StrToInt(cnpj[8]); n9 := StrToInt(cnpj[9]); n10 := StrToInt(cnpj[10]); n11 := StrToInt(cnpj[11]); n12 := StrToInt(cnpj[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 := cnpj[13] + cnpj[14]; if calculado <> digitado then result := FALSE else result := TRUE; end; end; end;
GOSTEI 0