Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marciolvs

[Resolvido] formatação de numeros

Recommended Posts

tenho o código

 

datacompra = request("txtdatacompra")
cliente = request("txtcliente")
valortotal = request("txtvalortotal")
valorentrada = request("txtvalorentrada")
parcelas = request("txtparcelas")
formapagamento = request("txtpagamento")

parcela1 = request("txtvalorparcela1")
parcela2 = request("txtvalorparcela2")
parcela3 = request("txtvalorparcela3")
parcela4 = request("txtvalorparcela4")
parcela5 = request("txtvalorparcela5")
parcela6 = request("txtvalorparcela6")

RESPONSE.Write(VALORTOTAL&"<BR>")
RESPONSE.Write(VALORENTRADA&"<BR>")
valorparcela = (valortotal - valorentrada) / parcelas
Valorparcela = formatnumber((valorparcela),2)
RESPONSE.Write(VALORPARCELA&"<BR>")

 

 

retorno

 

500,00

100,00

20,000.00

 

 

pq o 200,00 virou 20,000.00 ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

aqui tá normal

 

ex:

 

<%
valorparcela=200
x = formatnumber((valorparcela),2)
response.write(x)
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloquei o codigo que me passou, já digitando o valor 200, ai dá certo..

mas eu tenho obrigatoriamente que subtrair os valores.

 

usando: "valorparcela = (valortotal - valorentrada)"

 

ai me dá : 40,000.00

 

estranho não ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

converte ele antes, use o CInt

Compartilhar este post


Link para o post
Compartilhar em outros sites

converte ele antes, use o CInt

 

 

me de um exemplo ai pq o que fiz não resolveu..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, você pode estar com problemas no valor com vírgulas.

 

Se o valor possuir vírgulas no banco de dados você terá que fazer um replace antes da operação matemática.

 

Pra isso use o replace. Acho que o cint não vai funcionar em caso de valores quebrados que não sejam inteiros.

 

Assim use:

 

valortotal = replace(valortotal, ",", ".")
valorentrada = replace(valorentrada, ",", ".")

valorparcela = (replace(valortotal, ",", ".") - replace(valorentrada, ",", ".")

 

 

Agora se for somar só números inteiros aí você pode usar o cint que dá certinho.

 

valortotal = cint(valortotal)
valorentrada = cint(valorentrada)

 

 

Mas você também pode estar com problemas só na visualização do numero na hora do response.write, então tente somente isso:

 

valorparcela = replace(valorparcela, ",", ".")

valorparcela_formatado = formatnumber((valorparcela),2)

 

 

Agora em caso de valores quebrados que estejam com vírgula no BD, ex: "123,23". Ao invés de Cint também pode usar "CDBL"

 

valorparcela = cdbl(valorparcela)
valorentrada = cdbl(valorentrada)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.