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: 7131
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: 763
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: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

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, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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