Esse � uma exemplo da lista!
-----Mensagem original-----
De: Alessandro Bin [mailto:[EMAIL PROTECTED]]
Enviada em: Ter�a-feira, 3 de Dezembro de 2002 09:01
Para: [EMAIL PROTECTED]
Assunto: [sqlwin] fun��o para validar CPF
Amigos,
Algu�m teria uma fun��o ou script para validar o CPF?
Valeu,
Alessandro
_________________________________________________________________
MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com
==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================
--- Begin Message --- Title: Re: [sqlwin] CNPJ (CGC) - CIC - Como calcular o digitoVEJA ESTE . . .
On SAM_Validate
Set ivstrCPF = MyValue
Set ivnCPF[1] = SalStrToNumber( SalStrMidX( ivstrCPF, 0, 1 ) )
Set ivnCPF[2] = SalStrToNumber( SalStrMidX( ivstrCPF, 1, 1 ) )
Set ivnCPF[3] = SalStrToNumber( SalStrMidX( ivstrCPF, 2, 1 ) )
Set ivnCPF[4] = SalStrToNumber( SalStrMidX( ivstrCPF, 3, 1 ) )
Set ivnCPF[5] = SalStrToNumber( SalStrMidX( ivstrCPF, 4, 1 ) )
Set ivnCPF[6] = SalStrToNumber( SalStrMidX( ivstrCPF, 5, 1 ) )
Set ivnCPF[7] = SalStrToNumber( SalStrMidX( ivstrCPF, 6, 1 ) )
Set ivnCPF[8] = SalStrToNumber( SalStrMidX( ivstrCPF, 7, 1 ) )
Set ivnCPF[9] = SalStrToNumber( SalStrMidX( ivstrCPF, 8, 1 ) )
Set ivnCPF[10] = SalStrToNumber( SalStrMidX( ivstrCPF, 9, 1 ) )
Set ivnCPF[11] = SalStrToNumber( SalStrMidX( ivstrCPF, 10, 1 ) )! --------------------------------------------------------------------------
----------------------------------
! Define o primeiro d�gito, do d�gito verificador! --------------------------------------------------------------------------
----------------------------------
Set ivnAux[1] = 10*ivnCPF[1] + 9*ivnCPF[2] + 8*ivnCPF[3] +
7*ivnCPF[4] + 6*ivnCPF[5] + 5*ivnCPF[6] +
4*ivnCPF[7] + 3*ivnCPF[8] + 2*ivnCPF[9]
Set ivnAux[2] = ivnAux[1]/11
Set ivnAux[3] = EsfNumberInteger( ivnAux[2] )*11
Set ivnResto = ivnAux[1] - ivnAux[3]
Set ivnDigitos[1] = 11 - ivnResto
If ivnDigitos[1]>=10
Set ivnDigitos[1] = 0! --------------------------------------------------------------------------
----------------------------------
! Define o segundo d�gito, do d�gito verificador! --------------------------------------------------------------------------
----------------------------------
Set ivnAux[1] = 11*ivnCPF[1] + 10*ivnCPF[2] + 9*ivnCPF[3] +
8*ivnCPF[4] + 7*ivnCPF[5] + 6*ivnCPF[6] +
5*ivnCPF[7] + 4*ivnCPF[8] + 3*ivnCPF[9] +
2*ivnDigitos[1]
Set ivnAux[2] = ivnAux[1]/11
Set ivnAux[3] = EsfNumberInteger( ivnAux[2] )*11
Set ivnResto = ivnAux[1] - ivnAux[3]
Set ivnDigitos[2] = 11 - ivnResto
If ivnDigitos[2]>=10
Set ivnDigitos[2] = 0
If (ivnDigitos[1]!=ivnCPF[10]) OR (ivnDigitos[2]!=ivnCPF[11])
Call SalMessageBox( 'CPF inv�lido!', 'Aviso', MB_IconExclamation|MB_Ok |
MB_SystemModal )
Return FALSE
Else
Return TRUE
----- Original Message -----
From: Rodrigo Villaverde <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sexta-feira, 16 de Mar�o de 2001 13:43
Subject: Re: [sqlwin] CNPJ (CGC) - CIC - Como calcular o digito
> Julio, espero que seja �til:
>
> CPF
>
> FORMULA DE CALCULO PARA DIGITO VERIFICADOR DO CPF
>
> Multiplique os digitos correspondentes da seguinte forma.
>
> *** PRIMEIRO DIGITO VERIFICADOR DO CPF ******
>
> CPF-----------|
> 123.456.789-99
> ||| ||| |||
> ||| ||| ||2 Exemplo: ( 1 * 10 )
> ||| ||| |3 ( 2 * 9 )
> ||| ||| 4 ( 3 * 8 )
> ||| ||5 ( 4 * 7 )
> ||| |6 ( 5 * 6 )
> ||| 7 ( 6 * 5 )
> ||8 ( 7 * 4 )
> |9 ( 8 * 3 )
> 10 ( 9 * 2 )
>
> Faca Soma1 = Soma dos resultados das multiplicacoes.
> Exemplo: Soma1 = ( 1 * 10 )+( 2 * 9 )+( 3 * 8 )+ETC...
>
> Divida o Resultado de Soma1 por 11
> Exemplo: Divisao1 = Soma1 / 11
>
> Multiplique o Resultado da Divisao por 11
> Exemplo: Multiplica1 = Divisao1 * 11
>
> Faca uma subtracao da Soma1 pela Multiplica1
> Exemplo: Resto = Soma1 - Multiplica1
>
> Se o resultado (RESTO) for igual a 0 ou igual a 1 o primeiro digito
> do CPF devera ser igual a 0.
> Exemplo: Se Resto = 1 entao Dig1 e igual a 0
> Se Resto = 0 entao Dig1 e igual a 0
>
> Se o resultado (RESTO) for maior que 1 entao deve-se subtrair o resultado
> (RESTO) de 11 para conseguir o primeiro digito verificador.
> Exemplo: Se Resto = 8 entao Dig1 igual a ( 11 - 8 ) = 3
> Exemplo: Se Resto = 5 entao Dig1 igual a ( 11 - 5 ) = 6
>
>
>
>
> *** SEGUNDO DIGITO VERIFICADOR DO CPF ******
>
> CPF-----------|
> 123.456.789-99 ( Primeiro Digito Verifador multiplicado por 2 )
> ||| ||| |||
> ||| ||| ||3 Exemplo: ( 1 * 11 )
> ||| ||| |4 ( 2 * 10 )
> ||| ||| 5 ( 3 * 9 )
> ||| ||6 ( 4 * 8 )
> ||| |7 ( 5 * 7 )
> ||| 8 ( 6 * 6 )
> ||9 ( 7 * 5 )
> |10 ( 8 * 4 )
> 11 ( 9 * 3 )
> ( DIG1 * 2 )
>
> Faca Soma2 = Soma dos resultados das multiplicacoes. Nao se esqueca de
> multiplicar e somar o primeiro digito encontrado por 2.
> Exemplo: Soma2 = ( 1 * 10 )+( 2 * 9 )+ETC..., ( DIG1 * 2 )
>
> Divida o Resultado de Soma2 por 11
> Exemplo: Divisao2 = Soma2 / 11
>
> Multiplique o Resultado da Divisao por 11
> Exemplo: Multiplica2 = Divisao2 * 11
>
> Faca uma subtracao da Soma1 pela Multiplica1
> Exemplo: Resto = Soma2 - Multiplica2
>
> Se o resultado (RESTO) for igual a 0 ou igual a 1 o segundo digito
> do CPF devera ser igual a 0.
> Exemplo: Se Resto = 1 entao Dig2 e igual a 0
> Se Resto = 0 entao Dig2 e igual a 0
>
> Se o resultado (RESTO) for maior que 1 entao deve-se subtrair o resultado
> (RESTO) de 11 para conseguir o segundo digito verificador.
> Exemplo: Se Resto = 8 entao Dig2 igual a ( 11 - 8 ) = 3
> Exemplo: Se Resto = 5 entao Dig2 igual a ( 11 - 5 ) = 6
>
>
> ATENCAO: Para que o CPF seja valido os dois digitos verificadores devem
> conferir.
>
>
> CGC
>
>
> FORMULA DE CALCULO PARA DIGITO VERIFICADOR DO CGC
>
> Multiplique os digitos correspondentes da seguinte forma.
>
> *** PRIMEIRO DIGITO VERIFICADOR DO CGC ******
>
> CGC---------------|
> 12.345.678/0001-99
> || ||| ||| |||| ( 1 * 5 )
> || ||| ||| |||2 ( 2 * 4 )
> || ||| ||| ||3 ( 3 * 3 )
> || ||| ||| |4 ( 4 * 2 )
> || ||| ||| 5 ( 5 * 9 )
> || ||| ||6 ( 6 * 8 )
> || ||| |7 ( 7 * 7 )
> || ||| 8 ( 8 * 6 )
> || ||9 ( 9 * 5 )
> || |2 (10 * 4 )
> || 3 (11 * 3 )
> |4 (12 * 2 )
> 5
>
> Faca Soma1 = Soma dos resultados das multiplicacoes.
> Exemplo: Soma1 = ( 1 * 5 )+( 2 * 4 )+( 3 * 3 )+ETC...
>
> Divida o Resultado de Soma1 por 11
> Exemplo: Divisao1 = Soma1 / 11
>
> Multiplique o Resultado da Divisao por 11
> Exemplo: Multiplica1 = Divisao1 * 11
>
> Faca uma subtracao da Soma1 pela Multiplica1
> Exemplo: Resto = Soma1 - Multiplica1
>
> Se o resultado (RESTO) for igual a 0 ou igual a 1 o primeiro digito
> do CGC devera ser igual a 0.
> Exemplo: Se Resto = 1 entao Dig1 igual a 0
> Se Resto = 0 entao Dig1 igual a 0
>
> Se o resultado (RESTO) for maior que 1 entao deve-se subtrair o resultado
> (RESTO) de 11 para conseguir o primeiro digito verificador.
> Exemplo: Se Resto = 8 entao Dig1 igual a ( 11 - 8 ) = 3
> Exemplo: Se Resto = 5 entao Dig1 igual a ( 11 - 5 ) = 6
>
> *** SEGUNDO DIGITO VERIFICADOR DO CGC ******
>
> CGC---------------|
> 12.345.678/0001-99 ( Primeiro Digito Verifador multiplicado por 2 )
> || ||| ||| |||| ( 1 * 6 )
> || ||| ||| |||3 ( 2 * 5 )
> || ||| ||| ||4 ( 3 * 4 )
> || ||| ||| |5 ( 4 * 3 )
> || ||| ||| 6 ( 5 * 2 )
> || ||| ||7 ( 6 * 9 )
> || ||| |8 ( 7 * 8 )
> || ||| 9 ( 8 * 7 )
> || ||2 ( 9 * 6 )
> || |3 (10 * 5 )
> || 4 (11 * 4 )
> |5 (12 * 3 )
> 6 ( Dig1 * 2 )
>
>
> Faca Soma2 = Soma dos resultados das multiplicacoes. Nao se esqueca de
> multiplicar e somar o primeiro digito encontrado por 2.
> Exemplo: Soma2 = ( 1 * 6 )+( 2 * 5 )+ETC..., ( DIG1 * 2 )
>
> Divida o Resultado de Soma2 por 11
> Exemplo: Divisao2 = Soma2 / 11
>
> Multiplique o Resultado da Divisao por 11
> Exemplo: Multiplica2 = Divisao2 * 11
>
> Faca uma subtracao da Soma1 pela Multiplica1
> Exemplo: Resto = Soma2 - Multiplica2
>
> Se o resultado (RESTO) for igual a 0 ou igual a 1 o segundo digito
> do CGC devera ser igual a 0.
> Exemplo: Se Resto = 1 entao Dig2 e igual a 0
> Se Resto = 0 entao Dig2 e igual a 0
>
> Se o resultado (RESTO) for maior que 1 entao deve-se subtrair o resultado
> (RESTO) de 11 para conseguir o segundo digito verificador.
> Exemplo: Se Resto = 8 entao Dig2 igual a ( 11 - 8 ) = 3
> Exemplo: Se Resto = 5 entao Dig2 igual a ( 11 - 5 ) = 6
>
>
> ATENCAO: Para que o CGC seja valido os dois digitos verificadores devem
> conferir.
>
>
> Qualquer d�vida, entre em contato;
> []s
> Rodrigo.
>
> _________________________________________________________________________
> Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
>
> ==============================================
> Lista de Centura SQLWindows
> Administrador : [EMAIL PROTECTED]
> [ http://www.centuraexplorer.com ]
> Para sair desta lista mande mensagem para:
> [EMAIL PROTECTED] sem nada no Subject e
> com o comando a seguir no corpo da msg:
> "unsubscribe sqlwin" (sem as aspas)
> ==============================================
>==============================================
--- End Message ---
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================
