Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal,
Estou com um problema para somar alguns valores e depois diminuir a soma de outros, exemplo:
Valores de Entrada
sum(Campo1) + sum(Campo 2) + sum(Campo 3)
-
Valor de Saída
sum(CampoA) + sum(Campo B) + sum(Campo C)
Tentei fazer da segunda forma (Valores de Entrada - Valores de Saída😞
(
sum(Campo1) + sum(Campo 2) + sum(Campo 3)
)
-
(
sum(CampoA) + sum(Campo B) + sum(Campo C)
)
A soma dos valores de entrada deram 42240,9529 e a soma dos valores de saída também deram 42240,9529.
O problema é que se eu fizer como no código acima, o resultado é -2,9103830456734e-011 ao invés de 0.
E se formatar para número, o resultado no objeto de texto fica -0.
Obs: Os campos vem de várias tabelas, por isso não fiz a soma no QVD.
Como posso fazer este cálculo?
Obrigado.
Amigo;
Veja se atende:
round(
sum(Campo1) + sum(Campo 2) + sum(Campo 3)
- sum(CampoA) - sum(Campo B) - sum(Campo C)
,0.01)
Obs.:
round(x [ , passo [ , deslocamento ]])
Arredondamento de x para cima ou para baixo n número de etapas com um deslocamento de offset. O resultado é um número. Se x estiver exatamente no meio de um intervalo, será arredondado para cima. A função está em conformidade com os números de ponto flutuante de 64 bits de padrão IEEE.
Amigo;
Veja se atende:
round(
sum(Campo1) + sum(Campo 2) + sum(Campo 3)
- sum(CampoA) - sum(Campo B) - sum(Campo C)
,0.01)
Obs.:
round(x [ , passo [ , deslocamento ]])
Arredondamento de x para cima ou para baixo n número de etapas com um deslocamento de offset. O resultado é um número. Se x estiver exatamente no meio de um intervalo, será arredondado para cima. A função está em conformidade com os números de ponto flutuante de 64 bits de padrão IEEE.
Obrigado, funcionou.