Problemas com if no iReport

Amigo, está na mesma… e agora?

Me parece estar ocorrenso isso por causa da mascara, agora não sei se tem com alterar a mascara dinamicamente…imagino que voce vai conseguir fazer isso so se vc retirar a mascara e incluir na mao essa mascara com concat ou alguma coisa assim…ai essa regra do if vai funcionar…

vixi junior, e tem tutorial disso aqui no fórum? fiz uma busca rápida e não achei

o campo ja vem formatado com virgulas e tudo ou vc usa a mascara para formatar?

Junior, eu não entendi muito bem oque você quis dizer…
Assim ó… no banco de dados os valores estão em decimal (exemplo: 15.99, 0.00) daí no iReport para formata-los em Currency eu clico com o botão direito em cima do field > Field pattern > Currency e pronto.
Alterei o Expression Class do field para java.math.BigDecimal e dentro de Text field expression eu coloquei $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0 ? $F{fn_movim_finan_credito} : null.

se quiser dar uma olhada no meu relatorio aqui está o link : http://www.4shared.com/file/mCfyvESZ/Credito.html?

[quote=kid_mortex]Junior, eu não entendi muito bem oque você quis dizer…
Assim ó… no banco de dados os valores estão em decimal (exemplo: 15.99, 0.00) daí no iReport para formata-los em Currency eu clico com o botão direito em cima do field > Field pattern > Currency e pronto.
Alterei o Expression Class do field para java.math.BigDecimal e dentro de Text field expression eu coloquei $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0 ? $F{fn_movim_finan_credito} : null.

se quiser dar uma olhada no meu relatorio aqui está o link : http://www.4shared.com/file/mCfyvESZ/Credito.html?[/quote]

Vamos fazer diferente então!

Deixa no Text field Expression apenas $F{fn_movim_finan_credito}

E nas propriedades da Field adicionada no relatório você vai encontrar a opção Print When Expression, aí você adiciona a expressão $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0

Teste lá pra ver!

Cara eu fiz o teste aki e deu certo joga essa expressao ai

$F{fn_movim_finan_credito}.toString().equalsIgnoreCase(“0.0”)?null:$F{fn_movim_finan_credito}

Eu acho que vale a pena tentar…

[quote=juniorsml]Cara eu fiz o teste aki e deu certo joga essa expressao ai

$F{fn_movim_finan_credito}.toString().equalsIgnoreCase(“0.0”)?null:$F{fn_movim_finan_credito}

Eu acho que vale a pena tentar…[/quote]

Não deu…
testei o field com java.lang.String e java.lang.BigDecimal.

[quote=laudecir_hasckel][quote=kid_mortex]Junior, eu não entendi muito bem oque você quis dizer…
Assim ó… no banco de dados os valores estão em decimal (exemplo: 15.99, 0.00) daí no iReport para formata-los em Currency eu clico com o botão direito em cima do field > Field pattern > Currency e pronto.
Alterei o Expression Class do field para java.math.BigDecimal e dentro de Text field expression eu coloquei $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0 ? $F{fn_movim_finan_credito} : null.

se quiser dar uma olhada no meu relatorio aqui está o link : http://www.4shared.com/file/mCfyvESZ/Credito.html?[/quote]

Vamos fazer diferente então!

Deixa no Text field Expression apenas $F{fn_movim_finan_credito}

E nas propriedades da Field adicionada no relatório você vai encontrar a opção Print When Expression, aí você adiciona a expressão $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0

Teste lá pra ver![/quote]

Testei e também não deu, agora ele nem imprimiu nada, ficou a tela em branco…

[quote=kid_mortex][quote=laudecir_hasckel][quote=kid_mortex]Junior, eu não entendi muito bem oque você quis dizer…
Assim ó… no banco de dados os valores estão em decimal (exemplo: 15.99, 0.00) daí no iReport para formata-los em Currency eu clico com o botão direito em cima do field > Field pattern > Currency e pronto.
Alterei o Expression Class do field para java.math.BigDecimal e dentro de Text field expression eu coloquei $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0 ? $F{fn_movim_finan_credito} : null.

se quiser dar uma olhada no meu relatorio aqui está o link : http://www.4shared.com/file/mCfyvESZ/Credito.html?[/quote]

Vamos fazer diferente então!

Deixa no Text field Expression apenas $F{fn_movim_finan_credito}

E nas propriedades da Field adicionada no relatório você vai encontrar a opção Print When Expression, aí você adiciona a expressão $F{fn_movim_finan_credito}.compareTo(BigDecimal.ZERO) != 0

Teste lá pra ver![/quote]

Testei e também não deu, agora ele nem imprimiu nada, ficou a tela em branco…[/quote]

O que ficou em branco, o campo Crédito ou a página inteira???

Manda a imagem de como está agora…

Agora não aparece nada mesmo.
http://img202.imageshack.us/img202/4784/64731369.jpg

[quote=kid_mortex]Agora não aparece nada mesmo.
http://img202.imageshack.us/img202/4784/64731369.jpg[/quote]

Me explique onde você alterou porque não era para acontecer isso! :S

Qual a versão do seu iReport???

[quote=laudecir_hasckel][quote=kid_mortex]Agora não aparece nada mesmo.
http://img202.imageshack.us/img202/4784/64731369.jpg[/quote]

Me explique onde você alterou porque não era para acontecer isso! :S

Qual a versão do seu iReport???[/quote]

É o 4.1.3, mudei só oque você explicou.
e a Expression Class está java.math.BigDecimal.

[quote=kid_mortex][quote=laudecir_hasckel][quote=kid_mortex]Agora não aparece nada mesmo.
http://img202.imageshack.us/img202/4784/64731369.jpg[/quote]

Me explique onde você alterou porque não era para acontecer isso! :S

Qual a versão do seu iReport???[/quote]

É o 4.1.3, mudei só oque você explicou.
e a Expression Class está java.math.BigDecimal.[/quote]

Então manda novamente o seu jrxml para mim analisar.

Novo jrxml http://www.4shared.com/file/7dkXAcY0/Credito.html?

É muito estranho estar dando esse problema porque está tudo certo!

Faz um seguinte… passe todas as Expression Class das Fields adicionadas no relatório para o mesmo tipo da Field que você gerou… acredito que não resolva tal problema mas serve como uma dica…

O meu querido, ainda não funcionou…
vou fazer uns testes aqui e qualquer coisa posto a dúvida de novo aqui no fórum.
muito obrigado pela tua dedicação em tentar resolver meu problema. Sucesso!