Página 1 de 1

PICTURE

Enviado: 28 Nov 2024 09:59
por paiva
BOM dia

xtot_cotas = 2.123
msgstop("="+TRANSFORM(xtot_cotas,[@E 99,999,999.99999999])) >> = 2,12300000

com um startran ou ALLTRIM posso tirar os espaços da frente
e quanto os 0 (zeros) da direita ?

existe uma PICTURE que faça as 2 coisa ?

OU é desejar demais ?

ou alguem teria uma função ?

desde já agradeço

Paiva

PICTURE

Enviado: 28 Nov 2024 10:06
por Mario Mesquita
Bom dia.

Acho que terá que usar um SUBSTR() ou ALLTRIM() ali. Ou já formata o número com duas casas. O risco é causar arredondamento. Mas se isso não for importante, acho qeu dá.

Saudações,
Mario.

PICTURE

Enviado: 28 Nov 2024 10:19
por Itamar M. Lins Jr.
Olá!
msgstop("="+TRANSFORM(hb_ntos(xtot_cotas),[@E 99,999,999.99999999])) >> = 2,12300000

Não testei.

Saudações,
Itamar M. Lins Jr.

PICTURE

Enviado: 28 Nov 2024 10:24
por paiva
Itamar

resultado =2.23

acho que vou ter que fazer na unha, tirar os zeros da direita

PAiva

PICTURE

Enviado: 28 Nov 2024 10:28
por Itamar M. Lins Jr.
Olá!
O problema é que não é fixo(ponto flutuante), os campos atras da virgula.
Precisa transforma em string antes do transform() e fazer o processo antes.

Saudações,
Itamar M. Lins Jr.

PICTURE

Enviado: 28 Nov 2024 10:34
por Itamar M. Lins Jr.
Olá!
msgstop("="+TRANSFORM(val(hb_ntos(xtot_cotas)),[@E 99,999,999.99999999]))

Não testei. hb_ntos() -> retorna string, ai transform(picture()) comeu o 1

Saudações,
Itamar M. Lins Jr.

PICTURE

Enviado: 28 Nov 2024 13:45
por Kapiaba