Página 1 de 1

Formatacao de numero

Enviado: 21 Jul 2004 16:24
por negrao
Pessoal, é o seguinte:
Estou tentando fazer uma funcao que uma variavel tenha multiplas funcoes na sua leitura.

Se eu tenho um campo N,10,3 => gostaria que minha mascara fosse 999,999.999

Se eu tenho um campo N,6,3 => gostaria que minha mascara fosse 999.999

Se eu tenho um campo N,4,0 => gostaria que minha mascara fosse 9999
Com relacao a esse ultimo , nao teria algum comando que informado o tamanho do campo ele preenchesse com 9

Obrigado

EIS A FUNCAO

Enviado: 21 Jul 2004 17:52
por tonyx
function num_str(valor,tnum,tdeci)
string=´´
if valor > 0.000
stru:= ´@E 999,999´
* ou
stru:= ´@E ´
p:= 0
for i = 1 to tnum
stru:= stru + ´9´
p:= p + 1
if p = 3
p = 0
stru: stru + ´,´
endif
next
*---------
val_int:= int(valor)
p1:= alltrim(transform(stru,val_int))
p2:= ´´
if deci > 0
val_deci:= valor - int(valor)
p2:= strzero(val_deci,tdeci)
endif
string = p1+ p2f
return(string


*------------ valeu --------