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


Frega

Frega

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:

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

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar