[firebase-br] Duvida com select

Marcelo - MK Softwares marcelo em mksoftwares.com.br
Qui Out 3 09:55:32 -03 2019


Alterei o calculo para:
cast((v.quant * v.precovenda ) - v.desconto + v.acrescimo as decimal(18,5))

mas o erro persiste. Também tentei fazer um cast em cada campo, mas sem 
resultado

Em 03/10/2019 09:48, Gabriel Bonzanini escreveu:
> Sugiro que seja feito um CAST na operação como um todo, para evitar que
> sejam gerados decimais insignificantes (procure por epsilon).
>
> Em qui, 3 de out de 2019 09:36, Marcelo - MK Softwares <
> marcelo em mksoftwares.com.br> escreveu:
>
>> Bom dia
>>
>> Estou criando uma sql que me retorna o total do produto, até ai tudo
>> bem. Mas esta dando um erro na multiplicação. Vou expor a situação:
>>
>> Sql:
>> select
>>       /* outros campos que não vem ao caso*/
>>       ((v.quant * v.precovenda ) - v.desconto + v.acrescimo) totalproduto
>> from vendapdv2 v;
>>
>> Erro retornado:
>> Unsuccessful execution caused by system error that does not preclude
>> successful execution of subsequent statements.
>> Integer overflow.  The result of an integer operation caused the most
>> significant bit of the result to carry.
>>
>> Valores dos campos:
>> v.quant decimal(18,5)= 123323333,000
>> v.precovenda decimal(18,5) = 7,99
>> v.desconto decimal(18,5) = 0
>> v.acrescimo decimal(18,5) = 0
>>
>> Concordo que ninguém irá vender essa quantidade de mercadoria em um PDV
>> de supermercado, mas é um teste de estresse, pra não ocorrer falhas. Mas
>> a dúvida, por que me retorna um erro de integer overflow sendo que os
>> campos são decimal?
>> Se retirar a multiplicação da consulta, os valores são retornados sem
>> erro algum!
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas:
>> http://www.firebase.com.br/pesquisa_lista.html
>>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://www.firebase.com.br/pesquisa_lista.html




Mais detalhes sobre a lista de discussão lista