Formatar variável ainda no GET

Formatar Variável ainda no GET


Coloque os zeros antes do número automaticamente, ainda dentro do GET.

 Para ficar bem claro, será mostrado duas rotinas equânimes a seguir.

Uma rotina normalmente usada seria assim:


WCOD := 0
@ 10,10 SAY "CODIGO:" GET WCOD PICT "999999"
//Outros GETs
READ
WCOD := STRZERO(WCOD,6)


A partir de agora você fará o seguinte*:

@ 10,10 SAY "CODIGO:" GET WCOD PICT "999999" VALID EVAL( { || WCOD := STRZERO(WCOD,6), .T.} )
//Outros GETs
READ


Gostou?!
*Testado no Clipper 5.01 e 5.2e; xHarbour 1.2.1 + Hbmake 1.20.

Total votes: 0

Comentários

Não funciona no Harbour

Comment: 

Esse código não vai funcionar no Harbour devido ao fato de tentar colocar no GET ativo um valor diferente (o campo é numérico e você tenta colocar um campo caracter).

A solução é:

WCOD := SPACE( 6 )

@ 10,10 SAY "CODIGO:" GET WCOD PICT "999999" VALID EVAL( { || WCOD := STRZERO( VAL( WCOD ), 6 ), .T.} )

//Outros GETs

READ

Curta: