Probleminha com IReport

3 respostas
viniceranogueira

Fala aew galeraaa!!!

to com o seguinte problema aqui.
preciso fazer o seguinte, preciso somar o valor do campo Vlr_Renda_Per_Capta a uma variavel OESTEI quando o código da regiao for = 1.

então eu fiz este codigo na variável de expressão da variável OESTEI:

$F{Cod_Regiao} == new java.lang.Long(1) ? new java.lang.Float( ($V{OESTEI}.floatValue()) +($F{Vlr_Renda_Per_Capta}.floatValue()) ) : $V{OESTEI}

Só que ele ta caindo toda hora na condição do else.
Tem como alguem dar uma maozinha pra mim???

valeu msm galeraaaa!!!

3 Respostas

fnandos

Seus campos são Float e cod_regiao é um Long?

$F{Cod_Regiao} == 1 ? ($V{OESTEI}.floatValue() + $F{Vlr_Renda_Per_Capta}.floatValue()) : $V{OESTEI}

tenta dessa forma.

viniceranogueira

Eh isso msm!!!
a minha variável e o campo Vlr_Renda_Per_Capta são float e o Cod_Regiao eh Long

E eu tentei a forma que voce me passou mas da um erro de "Incompatible operand type Long and int.
Mas ai, eu digitei “new java.lang.Long(1)” e resolveu esse problema, mas aí deu um outro erro: “Incompatible conditional operand typesfloat and Float”,
Ai tentei colocar "new java.lang.Float($V{OESTEI}.floatValue() + $F{Vlr_Renda_Per_Capta}.floatValue())
mas aí continua do mesmo jeito.

fnandos

Float é difierente de float, se seu $V{OESTEI} é Float vc não conseguir pegar o floatValue() dele, vc tem que verificar isso, vc pode tentar fazer um cast para new java.lang.Float de $F{Vlr_Renda_Per_Capta} e ai tentar a soma, tirando floatValue() de tras. ou então fazer essa operação numa variável tipo Double, geralmente eu faço isso.

Criado 2 de setembro de 2008
Ultima resposta 3 de set. de 2008
Respostas 3
Participantes 2