[firebase-br] SQL Elegante (acho que virou OFF)

Otto Fuchshuber ottofuch em terra.com.br
Sex Jul 21 15:59:41 -03 2006


Em
http://www2.fundao.pro.br/articles.asp?cod=23

. Descrição
No Brasil existe o CPF (Cadastro de Pessoas Físicas) que serve para
identificar cada indivíduo no país. O número do CPF é composto de 11
dígitos, sendo os dois últimos os dígitos de verificação. A fórmula para
verificar a validade do número do CPF é simples e é explicada abaixo:

Vamos tomar como exemplo o número 123.456.789-09

. 1º Dígito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dígitos por 10,
9, 8, ... , 3, 2, respectivamente. Ou seja


Soma = (1*10) + (2*9) + ... + (8*3) + (9*2)

Em seguida, dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos
utilizamos o valor inteiro da divisão).


Valor = (Soma/11) * 11

Por fim, subtraímos Valor de Soma.


Resultado = Soma - Valor

Note que acabamos de realizar o módulo de Soma e 11. As duas operações
anteriores podem ser substituídas por Resultado = Soma módulo 11.

Agora analisamos Resultado:
  a.. Se Resultado for igual à 1 ou à 0, então o 1º dígito verificador é 0;
  b.. Caso contrário, o 1º dígito verificador é o resultado da subtração de
Resultado de 11.
. 2º Dígito Verificador
Primeiro calculamos a soma da multiplicação dos 9 primeiros dígitos por 11,
10, 9, ... , 4, 3, respectivamente e em seguida somamos com (Digito1*2),
sendo que Digito1 é o valor encontrado para o 1º dígito verificador. Ou seja


Soma = (1*11) + (2*10) + ... + (8*4) + (9*3) + (Digito1*2)

O resto é semelhante ao que foi feito anteriormente. Dividimos e
multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da
divisão).


Valor = (Soma/11) * 11

Por fim, subtraímos Valor de Soma.


Resultado = Soma - Valor

Agora analisamos Resultado:
  a.. Se Resultado for igual à 1 ou à 0, então o 2º dígito verificador é 0;
  b.. Caso contrário, o 2º dígito verificador é o resultado da subtração de
Resultado de 11.

No nosso exemplo (123.456.789-09) o número é válido.

. Pegue o código para verificação do CPF

C++ - Programinha com uma classe que testa a válidade do número.
Object Pascal - Feito em Delphi.
Java Script - Para utilizar em páginas web.
Java - Compilado no JDK 1.4.1.

. Verificação do CNPJ

Java - Código Java para validação do CNPJ (Utiliza Expressão Regular - JDK
1.4).

100+
Otto


----- Original Message ----- 
From: "Marcelo Silva" <marcvan em ig.com.br>
To: <renan em safetech.inf.br>; "FireBase" <lista em firebase.com.br>
Sent: Friday, July 21, 2006 10:21 AM
Subject: Re: [firebase-br] SQL Elegante (acho que virou OFF)


Olha que eu saiba o CPF tem que ter 11 digitos acho que falta alguma zero ae
no CPF do teu pai

Quanto ao RG a unica maneira de validar seria vc sabendo as regras de cada
estado brasileiro visto que o RG apesar de ser aceito em todo território
nacional não tem uma estrutura como o CPF que é controlado acho que pela
receita federal

Ou seja, RG é só para titulo de confirmação de cadastro e não deve ser usado
como um reconhecimento de pessoa, visto que até pode ter outros iguais a
cada estado, pois isso a sigla SSP e outras deve acompanha-lo

Exemplo 234.456.223-0 SSP/SP

Aí vc sabe que é um RG de São Paulo


Claro que não sei tudo sobre o assunto então queles que conhecem o tema a
fundo, pronunciem-se :)

Se o Administrador da lista não cortar nóis né :)

----------------------
Marcelo Silva
(11) 9693-4251
(11) 6723-3106 - LESTCRED
MSN: marcvan em ig.com.br


----- Original Message ----- 
From: "Renan de Oliveira" <renan em safetech.inf.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, July 21, 2006 9:56 AM
Subject: Re: [firebase-br] SQL Elegante


Eu pessoalmente nao trabalho com Delphi, mas a solucao desse caso seria:
a validacao do cfp é feita atravez de um cálculo, o problema acaba sendo na
hora de colocar a máscara mesmo, eu particularmente, nao sei se faço certo,
porem na hora em q o usuario digita, criei uma funcao em javascript, pois
uso php, entao qndo é tirado o foco do campo, coloco um 0 no lugar do numero
que faltou (?), e gravo no banco sem as mascaras é claro.


Renan de Oliveira
Safetech Informática
(51) 3529-3870
----- Original Message ----- 
From: "Magnun Oliveira" <magnun_magnun em hotmail.com>
To: <lista em firebase.com.br>
Sent: Friday, July 21, 2006 9:45 AM
Subject: Re: [firebase-br] SQL Elegante


voltando ao cpf, este segue um padrao de numeros? olha o que aconteceu
comigo:

o meu cpf tem a mascara 999.999.999-99, ou seja 11 numeros. ok tu blz.
mas o cpf do meu pai      : 99.999.999-99, ou seja 10 numeros. e ai? como
fazer a validação? alguem jah pegou um cpf assim?

te a msm coisa com o rg:

meu rg: 99.999.999-9, ou seja 9 numeros.
um rg que vi e nao me lembro de quem: 999.999.999-9. esse tem 10. mesmas
perguntas do cpf.

e aqueles benditos RG com o -X no final o X equivale a qual numero ? 0?

por enquanto são essas duvidas q lembrei.

ps: viram q o q nosso amigo postou rendeu ...

_________________________________________________________________
MSN Messenger: converse com os seus amigos online.
http://messenger.msn.com.br


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.394 / Virus Database: 268.10.1/390 - Release Date: 17/07/2006



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

Esta mensagem foi verificada pelo E-mail Protegido Terra.
Scan engine: McAfee VirusScan / Atualizado em 20/07/2006 / Versão:
4.4.00/4811
Proteja o seu e-mail Terra: http://mail.terra.com.br/








Mais detalhes sobre a lista de discussão lista