Gerar CPF com base no último dígito antes dos verificadores

1. Gerar CPF com base no último dígito antes dos verificadores

Raphael Monteiro
rmonteiraum

(usa CentOS)

Enviado em 03/02/2013 - 14:17h

Bom Dia,

Estou tentando, quebrando a cabeça para fazer uma fórmula para gerar CPFs com base no último dígito antes do verificador.

EX: xxx.xxx.xx7-xx onde "7" é o último dígito.

Com base nas pesquisas que realizei, o último dígito antes do código verificador, identifica o estado ou região no qual foi emitido o CPF para o cidadão.

O interesse nesta "Fórmula", é gerar uma lista com CPF´s válidos do meu estado, para incluir em uma aplicação.


Hoje, já tenho uma aplicação que solicita o CPF do cidadão e retorna o nome, sexo e nome da mãe. Gostaria de "melhorar" a resposta, tendo os CPFs do meu estado/região pré-carregados.

Alguém tem alguma sugestão da fórmula a ser utilizada?


  


2. Re: Gerar CPF com base no último dígito antes dos verificadores

Sergio Teixeira - Linux User # 499126
Teixeira

(usa Linux Mint)

Enviado em 03/02/2013 - 14:58h

Eu sugiro a você desistir desse caminho, pois a listagem gerada seria imensa.
É mais rápido, fácil e prático calcular os dígitos verificadores na hora como todo mundo faz.
Imagine a quantidade de combinações possíveis com 9 dígitos, onde apenas um deles é conhecido.

Obs:
Teoricamente, 000.000.017.xx seria um número válido.


3. Re: Gerar CPF com base no último dígito antes dos verificadores

Raphael Monteiro
rmonteiraum

(usa CentOS)

Enviado em 03/02/2013 - 17:16h

Falae Sergio, blz?

Não estou me importando muito com o "tamanho" da listagem.
Tenho a ferramenta que está sendo paga há meses e está sub-utilizada.
Tenho 10.000 (DEZ MIL) consultas diárias e não utilizo nem 200.

Entende o porque da minha pergunta?

Hoje, minha aplicação realiza a consulta no serviço PAGO e retorna os dados via api com curl e outras gambiarras.

Essa "gambiarra", faz com que a resposta seja lenta... quase 2 segundos, às vezes até mais (5, 7 segundos).

Quando eu já tenho os dados no meu banco, esta consulta é instantânea, entende?



Teixeira escreveu:

Eu sugiro a você desistir desse caminho, pois a listagem gerada seria imensa.
É mais rápido, fácil e prático calcular os dígitos verificadores na hora como todo mundo faz.
Imagine a quantidade de combinações possíveis com 9 dígitos, onde apenas um deles é conhecido.

Obs:
Teoricamente, 000.000.017.xx seria um número válido.





4. Re: Gerar CPF com base no último dígito antes dos verificadores

Sergio Teixeira - Linux User # 499126
Teixeira

(usa Linux Mint)

Enviado em 07/02/2013 - 15:40h

Estive sem internet durante vários dias (modem pifado).

Veja como é feito o cálculo do CPF em

http://www.gerardocumentos.com.br/entenda-a-formula-do-cpf

Sugiro que você, com base nos dados acima, faça um loop que vá de zero até 999.999.99x onde x seja sempre igual a 7, calcule os dígitos corretos e guarde esses valores em uma tabela.

Mas eu acho que essa consulta pode durar esses mesmos 2 segundos que você está reclamando.
Apenas que, uma vez tendo uma tabela confiável, não irá mais precisar pagar pelo serviço.
Boa sorte!


5. Re: Gerar CPF com base no último dígito antes dos verificadores

Raphael Monteiro
rmonteiraum

(usa CentOS)

Enviado em 07/02/2013 - 21:04h

Vou tentar alguma coisa em cima do que você sugeriu.

Quanto ao tempo da pesquisa, o que vai ocorrer é que vou pesquisar durante a madrugada e salvar no banco os resultados.

Durante o dia, deixo o aistema disponível para as consultas "reais".

Então, se vai demorar 2 segundos ou dois minutos por consulta na madrugada, é indiferente.



Teixeira escreveu:

Estive sem internet durante vários dias (modem pifado).

Veja como é feito o cálculo do CPF em

http://www.gerardocumentos.com.br/entenda-a-formula-do-cpf

Sugiro que você, com base nos dados acima, faça um loop que vá de zero até 999.999.99x onde x seja sempre igual a 7, calcule os dígitos corretos e guarde esses valores em uma tabela.

Mas eu acho que essa consulta pode durar esses mesmos 2 segundos que você está reclamando.
Apenas que, uma vez tendo uma tabela confiável, não irá mais precisar pagar pelo serviço.
Boa sorte!









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts