janazi 0 Denunciar post Postado Outubro 26, 2005 Como faço uma multiplicação de valores monetários ? preciso pegar 35,00 * 1,25 por ex... e obter 43,75, da maneira que estou fazendo, me retorna sempre 4375alguma sugestão? Compartilhar este post Link para o post Compartilhar em outros sites
bastard2003 4 Denunciar post Postado Outubro 26, 2005 ja tentou passar o valor em float!? testa ai! Compartilhar este post Link para o post Compartilhar em outros sites
janazi 0 Denunciar post Postado Outubro 26, 2005 tentei fazer, mas ele me dá o resultado sem virgula Compartilhar este post Link para o post Compartilhar em outros sites
bastard2003 4 Denunciar post Postado Outubro 26, 2005 e não poderia ser uma mascara de valor no campo que recebe esse calculo!? se puder coloca isso aqui: ##,###,##0.00 (se eu não me engano é assim a mascara :D ) Compartilhar este post Link para o post Compartilhar em outros sites
Travis 0 Denunciar post Postado Outubro 26, 2005 eu fiz uma vez essa multiplicação no meu caso eu usava um campo edit pra pegar os valorese sempre deu certo... eu fazia ainda calculo de porcentagem,eu pegava os valores do edit transformava em float e fazzia a multiplicação q campo você utiliza pra pegar os valores?? ou os valores vem de uma variavel ??se vier ... transforma a variavel em float, e outra coisa.... aonde você quer salvar ou mostrar o resultado ?? Compartilhar este post Link para o post Compartilhar em outros sites
janazi 0 Denunciar post Postado Outubro 26, 2005 eu estava fazendo assimstrtofloat(strtofloat((margem) * strtofloat(valor)));seria o preço de um produto, margem de lucroeu preciso exibir o valor em um label, os valores eu pego do bd.tentei o que o bastard falou, mas deu erro de novo, fiz issolbValorUnitario.Caption:= (FormatFloat('##,###,##0.00', (strtofloat(margem) * strtofloat(valor)))); Compartilhar este post Link para o post Compartilhar em outros sites
Travis 0 Denunciar post Postado Outubro 26, 2005 eu estava fazendo assimstrtofloat(strtofloat((margem) * strtofloat(valor)));seria o preço de um produto, margem de lucropelo q estou vendo axo q você colocou um parenteses a maisfikaria assimfloattostr(strtofloat(margem)*strtofloat(valor));tenta ai e ve se da certo!! Compartilhar este post Link para o post Compartilhar em outros sites
janazi 0 Denunciar post Postado Outubro 26, 2005 então, mas fazendo desse jeito, eu tenho o resultado sem ',' que eh o que preciso Compartilhar este post Link para o post Compartilhar em outros sites
Travis 0 Denunciar post Postado Outubro 26, 2005 eh estranho isso , os valores das variaveis q você esta usando contem virgulas, ou pontos ??pq quando fiz minha calculadora eu usei exatamente o comando q puis acimasoh q eu convertia os pontos em virgulas e fazia o calculo e saia os valores em real , com as casas depois da virgulamuito estranho issu ... nem eu to conseguindo entender o pq q nao sai os valores com virgula... desculpee!! :( Compartilhar este post Link para o post Compartilhar em outros sites
lenn0n 0 Denunciar post Postado Outubro 26, 2005 eu estava fazendo assimstrtofloat(strtofloat((margem) * strtofloat(valor)));seria o preço de um produto, margem de lucropelo q eu entendi, o problema eh com a conta...veja bem, tem q ver como você esta gravando no campo 'margem'se você estiver gravando assim:margem de 10% -> 10,00 ( no campo )margem de 100% -> 100,00 ( no campo )aí sua conta vai dar errado mesmo...como você esta trabalhando com porcentagem, você deve dividir o valor da margem por 100 antes de mutiplicarex: tente assimvalor := (strtofloat(margem) / 100) * strtofloat(valor);essa conta, para obter o valor somente DO LUCRO, e não o total, no caso do total daí você teria q somarvalor := ((strtofloat(margem) / 100) * strtofloat(valor)) + strtofloat(valor);veja se resolve (espero q sim) http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif []'s Compartilhar este post Link para o post Compartilhar em outros sites
janazi 0 Denunciar post Postado Outubro 26, 2005 realmente o problema estava em um campo que tinha '.' e o que eu tinha feito para trocar . por , tava dando algum problema..mas valeu pela força!!!!! Compartilhar este post Link para o post Compartilhar em outros sites