Ajuda com Expressão de Soma - iReport

8 respostas
AlencarCanton

E ae galera,beleza?

Seguinte,tenho 5 parâmetros que são somados dentro de um campo no relatório,a expressão tá assim:

tá funcionando certinho quando tem esses 5 valores pra somar,mas nem sempre vai ter os 5…e quando não tem,o campo da soma aparece ‘null’,
como faço pra só somar os parametros que tiverem algum valor?(se essa for a melhor forma de fazer isso)

vlw pela atenção aí!

8 Respostas

fabiocsilva

Ou você coloca os parâmetros com valor padrão 0 ou utiliza o operador ternário como segue:

leoramos

Infelizmente o Jasper não aceita ifs; portanto, apele pra um operador ternário em cada uma das parcelas. Pra evitar erros, manda somar com zero.
Exemplo:

$P{ValorTotal}.floatValue() + ($P{ValorTotal} != null ? $P{ValorTotal}.floatValue() : 0)

Não testei a expressão aqui, mas é isso aí…
Abraço!

AlencarCanton

ae,

testei com operadores ternarios aqui e a expressao ficou assim:

mas não funcionou…continua mostrando null,a expressão tá errada?

vlwww

AlencarCanton

up

Gerva

Então faça oque o fabiocsilva te sugeriu, nas propriedades do Parâmetro, existe a opção “Default Value Expression”, coloque 0 ali e quando você não passar nenhum, valor o parâmetro ira receber 0 por padrão :wink:

AlencarCanton

e ae!
po cara,
eu uso o iReport 4.0.2 e não to achando essa opção nas propriedades do parâmetro…
ja olhei tudo várias vzes e nao tem nada relacionado a default value
=\

AlencarCanton

da pra fazer Try Catch no campo onde eu digito a expressao pra somar os parametros?
me falaram isso mas n sei como fazer

Gerva

Po mano a minha também é a versão 4.0.2 e tem sim Oo

As propriedades são:
Name
Parametes Class
Use as a prompt
"Default Value Expression"
Description
Properties

Lembrando que isso fica nas propriedades do Parametro em questão e não “dos” parametros em geral

Qualquer coisa é só perguntar xD

Criado 13 de junho de 2011
Ultima resposta 16 de jun. de 2011
Respostas 8
Participantes 4