Ir para conteúdo

POWERED BY:

Arquivado

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

Touche

Problema ao inserir numeros com ,

Recommended Posts

Como faço para inserir valores como 9,50 no banco? esta dando problema pq ele ta considerando a virgula como uma nova variavel... Como faço para resolver isso, sendo que preciso que seja cadastrado com as casas decimais corretas:O banco eh SqlServerSintaxe:UPDATE nfis001 set baseicms="& baseicms &",vlr_icms="& vlr_icms &",baseicmsret="& baseicmsret &", vlr_icmsret="&vlr_icmsret&", vlr_merc="&vlr_merc&" ... e por ai vai

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço para inserir valores como 9,50 no banco? esta dando problema pq ele ta considerando a virgula como uma nova variavel... Como faço para resolver isso, sendo que preciso que seja cadastrado com as casas decimais corretas:O banco eh SqlServerSintaxe:UPDATE nfis001 set baseicms="& baseicms &",vlr_icms="& vlr_icms &",baseicmsret="& baseicmsret &", vlr_icmsret="&vlr_icmsret&", vlr_merc="&vlr_merc&" ... e por ai vai

Para incluir no banco você deve substituir a vírgula por ponto.valor = Replace(valor, ",", ".")Para recuperar, não precisa fazer nada... já vai vir com a vírgula corretamente.Até maisCassiano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cassiano, funcionou em alguns casos porem quando o numero ultrapassa a casa dos 1000 fica dando erro no ultima casa decimalex: 1.780,10 o SQL passa como 1.780.10 e da erro justamente nesse .10alguma sugestão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cassiano, funcionou em alguns casos porem quando o numero ultrapassa a casa dos 1000 fica dando erro no ultima casa decimalex: 1.780,10 o SQL passa como 1.780.10 e da erro justamente nesse .10alguma sugestão?

Sim.. é que eu não sabia que você estava utilizando pontos na formatação do número.Mas nesse caso é só você substituir os pontos por vazio, antes de substituir a vírgula por ponto.Assim:
valor = Replace(valor, ".", "")valor = Replace(valor, ",", ".)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Provavelmente esse número está vindo como string.Converta-o para DOUBLE (é <%cdbl(valor)%> se não me engano) e depois substitua as virgulas como o amigo aí em cima já disse.

Compartilhar este post


Link para o post
Compartilhar em outros sites

voce pode excluir todos os pontos antes com replace e depois substituir a virgula por ponto

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.