converter valor, perdendo pra linguagem???

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

pena
Usuário Nível 3
Usuário Nível 3
Mensagens: 331
Registrado em: 06 Jul 2004 18:08
Localização: CACHOEIRA DO SUL-RS

converter valor, perdendo pra linguagem???

Mensagem por pena »

Boa tarde pessoal, alguem por favor me da uma luz, não sei o que estou fazendo errado
tenho um label onde

Código: Selecionar todos

a:=Form.valor.value
msgStop(a)                      = 1.722,95
msgStop(val(a))               = 1.722000 
a:=STRTRAN(Form.valor.value,',','.')
msgStop(a)                      = 1,722.95
msgStop(val(a))               = 1,722000 
não sei como corrigir isto, desaprendi
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7135
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

converter valor, perdendo pra linguagem???

Mensagem por sygecom »

Será que você não está usando uma mascara de TEXTO nesse campo, ou iniciando como carácter ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Nascimento
Usuário Nível 4
Usuário Nível 4
Mensagens: 765
Registrado em: 19 Jul 2008 12:11
Localização: OLINDA-PE

converter valor, perdendo pra linguagem???

Mensagem por Nascimento »

tem como vc melhorar um pouco o exemplo , explicando melhor ficou meio vago no que vc realmente quer amigo
se possivel um pequeno exemplo compilavel , para melhor entendimento
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
pena
Usuário Nível 3
Usuário Nível 3
Mensagens: 331
Registrado em: 06 Jul 2004 18:08
Localização: CACHOEIRA DO SUL-RS

converter valor, perdendo pra linguagem???

Mensagem por pena »

a situação é a seguinte, eu importo dados de xml

Código: Selecionar todos

Form.valor.value              :=transform(val(PegaDadosXML(tVrNfe,"vNF"))    ,"@E@Z 999,999,999.99")
depois tenho que converter o campo para numerico



eu preciso transformar esse valor em numérico e simplesmente não consigo, so que estranhamente, valores de 5 digitos funcionam 555,55 mas se tiver 6666,66 e corta depois da virgula
pena
Usuário Nível 3
Usuário Nível 3
Mensagens: 331
Registrado em: 06 Jul 2004 18:08
Localização: CACHOEIRA DO SUL-RS

converter valor, perdendo pra linguagem???

Mensagem por pena »

consegui fazer, não sei pq, mas passei pra uma variavel que criei antes, ae funcionou

Código: Selecionar todos

local a:=0
a:=STRTTRAN(Form.valor.value,',','.')
MOVNF->TOTAL = val(a)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20416
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

converter valor, perdendo pra linguagem???

Mensagem por JoséQuintas »

Internamente os números sempre são com ponto decimal e não vírgula.
Esse foi o problema.
Quanto à picture @E@Z...... pode usar a picture do zé..... @ZE
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder