Fórum duvidas, Float para String // calcular descontos #357588
24/04/2008
0
ola para todos :D
estou com algumas duvidas, nao sao aquelas frequentes, nao achei as respostas nos FAQ´s :lol:
vamos la...
a 1ª uso banco Postgres, fiz uma tabela com os produtos (referencia descricao, preço, etc) o problema esta no preço botei ele como MONEY no banco de dados, configurei um DBGrid para exibir estas coisas, mas quando vou compilar aparece o seguinte erro:
Type mismatch for field ´preco´, expecting: String actual: Float´.
o que faço para tirar esse erro?
2ª pergunta :P
no cadastro de produtos tenho o Preço, e o Preço de tabela
gostaria de calcular o Maximo de desconto para nao tomar prejuiso, exemplo
Preço venda: 100
Preço tabela (compra): 70
maximo de desconto: 30¬
consegui fazer essa formula no OnChange do preço de tabela, conforme o usuario digitava o preço, o maximo de desconto ia sendo calculado... e depois era gravado no banco de dados junto com o cadastro
o problema é quando vou editar, recebo um erro, acho que é porque o OnChange tenta editar, mas o banco ja puxa o valor automaticamente sem precisar calcular denovo...
ha alguma possibilidade de fazer esse calculo no Query? ou como posso fazer?
end; //end biblia
Agradeço a todos que leram minha biblia e ajudaram =)
att
Thiago Felipe
estou com algumas duvidas, nao sao aquelas frequentes, nao achei as respostas nos FAQ´s :lol:
vamos la...
a 1ª uso banco Postgres, fiz uma tabela com os produtos (referencia descricao, preço, etc) o problema esta no preço botei ele como MONEY no banco de dados, configurei um DBGrid para exibir estas coisas, mas quando vou compilar aparece o seguinte erro:
Type mismatch for field ´preco´, expecting: String actual: Float´.
o que faço para tirar esse erro?
2ª pergunta :P
no cadastro de produtos tenho o Preço, e o Preço de tabela
gostaria de calcular o Maximo de desconto para nao tomar prejuiso, exemplo
Preço venda: 100
Preço tabela (compra): 70
maximo de desconto: 30¬
consegui fazer essa formula no OnChange do preço de tabela, conforme o usuario digitava o preço, o maximo de desconto ia sendo calculado... e depois era gravado no banco de dados junto com o cadastro
o problema é quando vou editar, recebo um erro, acho que é porque o OnChange tenta editar, mas o banco ja puxa o valor automaticamente sem precisar calcular denovo...
ha alguma possibilidade de fazer esse calculo no Query? ou como posso fazer?
end; //end biblia
Agradeço a todos que leram minha biblia e ajudaram =)
att
Thiago Felipe
Frega
Curtir tópico
+ 0
Responder
Posts
29/04/2008
Webjoel
Olá!
Para o problema 1:
O banco está esperando uma String e você está enviando um campo Float, tente usar isso:
Sendo que preço esteja defini do como String.
Problema 2:
Trabalhar com eventos como OnChance, OnExit é muito perigoso, eu aconselho você usar algo como OnCalcFields, ou tratar isso antes do usuário gravar a modificação ou inserção.
Para o problema 1:
O banco está esperando uma String e você está enviando um campo Float, tente usar isso:
PRECO := FormatFloat(´#,0.00´,PRECO)
Sendo que preço esteja defini do como String.
Problema 2:
Trabalhar com eventos como OnChance, OnExit é muito perigoso, eu aconselho você usar algo como OnCalcFields, ou tratar isso antes do usuário gravar a modificação ou inserção.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)