No ireport como faço para mostrar uma variavél com valor menor que zero ou seja numeros negativos

Java

10/03/2015

Pessoal bom dia.
Possuo um relatório onde existe uma variável soma, porém essa variável ao gerar o relatório me traz valores menores que zero, zero e maiores que zero gostaria que ao gerar o relatório mostrasse apenas os valores menores que zero como trato isso no ireport?
Dagoberto Neto

Dagoberto Neto

Curtidas 0

Respostas

Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Porque você não filtra os dados antes de enviar ao relatório ? É o ideal.
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Porque você não filtra os dados antes de enviar ao relatório ? É o ideal.
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Ronaldo, boa tarde tudo bem.
Então tudo o que tinha que ser feito na query já foi feito antes, porém nessa variável em especifico preciso tratá-la, gostaria de saber se tem como no Ireport eu tratar essa variável para que me mostre ao gerar o relatório apenas os valores negativo dessa variável tem como ?
Obrigado....
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Tem uma propriedade no iReport chamada "Imprimir quando a expressão...". Neste campo você deve colocar a expressão que deve ser satisfeita para que sua variável seja renderizada. Ex:

$F <= 0 ? true : false;
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Tem uma propriedade no iReport chamada "Imprimir quando a expressão...". Neste campo você deve colocar a expressão que deve ser satisfeita para que sua variável seja renderizada. Ex:

$F <= 0 ? true : false;
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Certo, Ronaldo.
No meu caso não estou fazendo com um campo Field $F e sim com uma variável $V, segue o mesmo procedimento conforme abaixo:

$V <= 0 ? true : false;

Pois se for o mesmo procedimento não deu certo deu erro.
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Bom dia a todos
Vou mudar um pouco o meu raciocínio que tive acima, vamos lá eu sei que no Ireport tem um lugar que você flega caso o resultado for em branco ou seja nulo ele exclui aquela linha e não mostra, gostaria de fazer o mesmo porém quando o valor fosse igual ou maior que zero, pois o que interessa para mim é que a variável só retorne o valor negativo o restante não precisa aparecer no relatório.
Me ajudem por favor
Obrigado.
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Certo, Ronaldo.
No meu caso não estou fazendo com um campo Field $F e sim com uma variável $V, segue o mesmo procedimento conforme abaixo:

$V <= 0 ? true : false;

Pois se for o mesmo procedimento não deu certo deu erro.


Mas esse é o correto, qual erro apareceu ? Tentou validar a expressão ? (Há um botão que valida a expressão).
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Fala Ronaldo, tudo bem cara, abaixo o erro que da quando faço a verificação da expressão.

Sourced file: inline evaluation of: ``((java.math.BigDecimal)variable_dif_item.getValue()) <= 0 ? true : false;'' : illegal use of null value or 'null' literal
? true : false ;
Line: 1
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Tente assim::

$V != null ? ($V.intValue() <= 0 ? true : false) : false;


ou

$V.intValue() <= 0 ? true : false;
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Tente assim::

$V != null ? ($V.intValue() <= 0 ? true : false) : false;


ou

$V.intValue() <= 0 ? true : false;
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Ambos a verificação deu certa, mas ao compilar aparece esta mensagem:

Cannot cast from boolean to Boolean
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Então tente assim:

$V.intValue() <= 0 ? Boolean.valueOf(true) : Boolean.valueOf(false);
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Então tente assim:

$V.intValue() <= 0 ? Boolean.valueOf(true) : Boolean.valueOf(false);
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Ronaldo, deu certo e não deu rs.
O que ele fez foi o seguinte os valores menor ou igual a zero aparecem e os maiores que zero ficam apenas em branco mas a linha aparece, eu gostaria que a linha não aparecesse entendeu.
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

10/03/2015

Não tem como eu tratar essa variavel na database(query) tipo lá onde eu monto a query colocar de alguma forma que $V <= '0' ???
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

10/03/2015

Bom, como eu havia dito logo no início, se você quer que a linha toda não seja mostrada (registro), então já deve filtrar no seu SQL. Poste aqui seu SQL e vamos ver o que podemos fazer.
GOSTEI 0
POSTAR