Página 1 de 1
Formatar variavel ainda no Get com StrZero()
Enviado: 03 Out 2005 19:01
por Grings
Como posso fazer para formatar uma variável quando ainda estiver no Get ? Exemplo: digitando 5 quero que apareça 005.
Grato!
Grings
Enviado: 03 Out 2005 19:06
por Augusto
Pode ser que eu me engane...
Mais vc só vai conseguir isso depois do READ através do "@ say" com a variável já transformada pelo STRZERO()..
Vamos ver o q os outros colegas do Fórum vão dizer...
Enviado: 03 Out 2005 19:11
por Visitante
Com certeza....
Só se valida o conteúdo da mesma após a saída do Get.
Um Clip Abraço
Enviado: 03 Out 2005 19:24
por Grings
O exemplo dessa rotina consta aquí no fórum, porém não consigo encontrar. Perdí o programa fonte que fazia isso, tem como fazer, talvez tenha me expressado mal, quando digito 5 e teclo ENTER o campo auto-completa 005.
Enviado: 03 Out 2005 19:54
por Augusto
Bem... insisto em dizer que, antes do READ... nada feito...
Enviado: 03 Out 2005 21:04
por Poka
Prezado colega, será que seria isto.
cls
vcodigo:=space(05)
@ 10,10 say "Codigo: " get vcodigo pict"@k9";
valid funger()
read
retu nil
/////////////
stat func funger
if readvar()="VCODIGO"
vcodigo:=strzero( val(vcodigo),len(vcodigo))
endif
retu .t.
Obs. em todos os cadastros do meu sistema eu uso a funcao FUNGER(),
assim voce pode testar os campos que quiser.
espero que seja isto
um abraço
Poka
Enviado: 03 Out 2005 21:55
por janio
Olá,
Outra opção seria:
Código: Selecionar todos
LOCAL nCodItem:=0
@ 02, 02 SAY "CODIGO ITEM :" GET nCodItem PICTURE "99999" ;
VALID EVAL( { || nCodItem:= STRZERO(nCodItem, 5), .T. } )
Read
Um abraço,
Janio
É isso mesmo Jânio!
Enviado: 04 Out 2005 09:51
por Grings
Valeu Jânio, tinha certeza que tem como fazer... Poka, obrigado também mas a solução do Jânio é mais prática.
Enviado: 04 Out 2005 19:26
por Paulao
Eu Faço assim
m->NUMPED:=SPAC(5)
@ 21,02 say "Num pedido: "get m->numped pict"@!K"valid completa("m->numped",5)
function completa(campo,qtd)
&campo=padl(alltrim(&campo),qtd,"0")
return .t.
Formatar variavel ainda no Get com StrZero()
Enviado: 29 Ago 2018 11:17
por JoséQuintas
Dependendo do caso, uso função própria.
Código: Selecionar todos
... GET cItem VALID FillZeros( @cItem )
... GET cItem VALID OkItem( @cItem )
Uma validação específica para o cadastro, ou uma genérica de preencher.
Código: Selecionar todos
FUNCTION FilllZeros( cVar )
cVar := StrZero( Val( cVar ), Len( cVar ) )
RETURN .T.