Olá!
Utilizo o Delphi 2009+Firebird 2.1.2+DBExpress+driver(dbxFirebird).
Estou recebendo uma mensagem de erro 'ebcdexception with message 'BCD 
overflow', ao retornar o resultado de um select da multiplicação de 2 campos 
decimal(15,3) usando o componente ClientDataSet.
O select é esse:
select (quantidade * vlunitario) as Total from VendasItens

O estranho que o erro ocorre somente em tempo de execução para a operação de 
multiplicação (as demais operações não ocorrem problemas), em tempo de projeto 
quando dou um active=true no componente ClientDataSet não ocorre erro algum.
Outra coisa, se eu faço um cast (ex: select cast((quantidade * vlunitario) as 
decimal(15,3)) as Total from VendasItens ), não ocorre erro algum.
Qualquer ajuda será bem vinda.

Obrigado!

[As partes desta mensagem que não continham texto foram removidas]

Responder a