Página 1 de 1
Mudar Pict CNPJ CPF
Enviado: 10 Jan 2007 11:14
por Marsenne Negreiros
Tenho a seguinte necessidade:
wTpInsfe="CPF "
wInsFede=SPACE(14)
@ 10,10 SAY "Inscrição Federal (CNPJ/CPF)" GET wTpInsFe PICT "!!!!"
@ 12,10 SAY "Número" GET wInsFede PICT "@R 999.999.999-99"
READ
Como faço para mudar a máscar de CPF (999.999.999-99) para CNPJ (99.999.999/9999-99) sempre que o usuário mudar o tipo de inscrição?
É possível utilizar alguma função no mesmo READ?
Obrigado.
Marsenne Negreiros
Enviado: 10 Jan 2007 11:37
por momente
Amigo Marsenne Negreiros,
Eu faço assim, identifico se é pessoa física ou jurídica ( J/F ) ae abro uma variável e o usuário entra com os números sem pontos/barras, faço a validação do mesmo usando uma função para isto e retorno usando a função TRANSFORM(variavel, picture), Ex:
Se for jurídica ( J )
mNroDoc:=TRANSFORM(gCNPJ, "99.999.999/9999-99")
Se for física ( F )
mNroDoc:=TRANSFORM(gCPF, "999.999.999-99")
Valeu! :)Pos
Enviado: 10 Jan 2007 11:43
por Augusto
Parceiro... eu normalmente uso 2 campos: um que eu chamo de cpf_cnpj (N-14,0) e um outro tipo_pess (C-1)
Antes eu pergunto o Tipo de Pessoa (Física ou Juridica).
Dependendo da resposta eu peço CPF/CNPJ alterando a máscara de acordo. Ex:
Código: Selecionar todos
wCpf_Cnpj = space(18)
wTpPess = space(1)
@ 09,10 SAY "Tipo de Pessoa (F)ísica ou (J)urídica:" GET wTpPess PICT "!" valid wTpPess $ "FJ"
read
If wTpPess="F"
@ 10,10 SAY "Inscrição Federal (CPF):" GET wCpf_Cnpj PICT "@R 99.999.999/9999-99" valid empty(wCpf_Cnpj)=.f.
else
@ 10,10 SAY "Inscrição Federal (CNPJ):" GET wCpf_Cnpj PICT "@R 999.999.999-99" valid empty(wCpf_Cnpj)=.f.
endif
READ
Espero ter ajudado....
Enviado: 10 Jan 2007 12:38
por gvc
Do NG:
Picture (Assignable)
Contains a character value defining the PICTURE string that controls
formatting and editing for the Get object. See the @...GET entry in
this chapter for more information on PICTURE strings.
oGet:Picture := "@R (999)999-9999"
Boa sorte.
Enviado: 10 Jan 2007 12:50
por Toledo
Marsenne, vai ai um exemplo do que você pode fazer:
Código: Selecionar todos
LOCAL GetList := {}
cls
wTpInsfe="CPF "
wInsFede=SPACE(14)
v_pic="999.999.999-99"
@ 10,10 SAY "Inscricao Federal (CNPJ/CPF)" GET wTpInsFe PICT "!!!!"
@ 12,10 SAY "Numero" GET wInsFede PICT (v_pic) WHEN { |oGet| TROCA_PIC(oGet,wTpInsFe) }
READ
RETU
FUNC TROCA_PIC(oGet,v_Tipo)
if v_Tipo = "CNPJ"
oGet:picture :="@R 99.999.999/9999-99"
else
oGet:picture :="@R 999.999.999-99"
endif
retu .T.
Abraços,
Mudar Pict CNPJ CPF
Enviado: 10 Jan 2007 16:18
por Marsenne Negreiros
Fantástico. Funciona muito bem.
Obrigado
Marsenne Negreiros
Enviado: 13 Abr 2007 16:31
por filizola
obrigado a todos que me ajudaram, vou testar segunda feira no cliente e retorno a que melhor me atendeu.
um grande abraço.
Mudar Pict CNPJ CPF
Enviado: 21 Fev 2012 00:55
por clodoaldomonteiro
Muito obrigado, também, ao Toledo por esta maravilhosa dica.