Ireport Sum()

3 respostas
C

Gente to precisando fazer um SUM() em um campo no Ireport só que no meio desses campos existem numeros negativos e não quero que ele considere os negativos pois se nao ele vai fazer
20+
10+
5-
o resultado é 25… então quero que ele me dá o resultado 30 sem considerar os negativos na conta, mas quero que apareça os negativos no relatorio…

Aguem pode me ajudar???

tentei fazer
e no calculation SUM
$V{liquido}.doubleValue() > 0

mas não deu

3 Respostas

bombbr

Crie uma variavel com Calculation Type = Sum…
e na Variable Expression coloque a expressão abaixo.

($F{VALOR}.doubleValue() > 0.0) ? $F{VALOR} : new BigDecimal(0.0)

Onde: $F{VALOR} é o campo que vc quer somar.

Neste exemplo estou considerando tudo como java.math.BigDecimal, altere conforme necessidade, java.lang.Double ou java.lang.Integer.

ahhh…para obter o resultado que vc espera coloque esta variável na band Summary…

Falow!

ramilani12

Utilize a metodo abs da classe Math:

Math.abs( $V{liquido}.doubleValue());

Ele retorna o valor absoluto

C

Valeu Gente!!!

Criado 10 de março de 2007
Ultima resposta 10 de mar. de 2007
Respostas 3
Participantes 3