Ola turma
Tem alguma funcao para digitar cpf e cnpj para ficar com os pontos no mesmo get, que reconhece se e cpf ou cnpj.
t+
Macara para CPF e CNPJ
Moderador: Moderadores
RESP
1 . voce pergunta se e cpf ou cnpj e depois faz if separando cada estrutura
if id = cpd
stru = ´999.999.999-99
´ else
str = ´99.999.999/9999-99
endif
get stru
2 ou deixa campo vazio ate 18 cahr auq que tiver 11 char sera cpf e o
14 sera cnpj
faz critica do numero
if id = cpd
stru = ´999.999.999-99
´ else
str = ´99.999.999/9999-99
endif
get stru
2 ou deixa campo vazio ate 18 cahr auq que tiver 11 char sera cpf e o
14 sera cnpj
faz critica do numero
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinho
Sinceramente eu não coloco pontos no GET que pega estas informações porque usuario é pregiçoso por natureza.
Faça um GEt com tamanho de 20 char e picture "@!"
Nào importa se seu usuario digitar:
1.234.567/0001-10 ou 01234567/0001-10 ou 01234567000110 sua função se encarregara de fazer a verificacao:
Acho que foi isto que o amiguinho anterior tentou explicar.
@braços :?)
Sinceramente eu não coloco pontos no GET que pega estas informações porque usuario é pregiçoso por natureza.
Faça um GEt com tamanho de 20 char e picture "@!"
Nào importa se seu usuario digitar:
1.234.567/0001-10 ou 01234567/0001-10 ou 01234567000110 sua função se encarregara de fazer a verificacao:
Código: Selecionar todos
@ 10,10 say "CGC:" get cCGC picture "@!" valid QualCGC( cCGC )
...
FUNCTION QualCGC( oque )
...
oque := strtran( oque, ".","" ) // retira os pontos
oque := strtran( oque, "/","" ) // retira a barra
oque := strtran( oque, "-","" ) // retira os traços
...
// verifica o tamanho da string e aciona o teste de codigo
if alltrim(len( oque )) > 11
return TestaCIC( oque ) // Sua funcao de calculo de CIC
else
return TestaCGC( oque ) // Sua funcao de calculo de CGC
endif
...
// Retorna .F. para voce verificar que tipo de valor foi passado em OQUE
return .f.
@braços :?)
