Foros del Web » Programación para mayores de 30 ;) » Java »

Variables en ireport

Estas en el tema de Variables en ireport en el foro de Java en Foros del Web. Hola! Necesito trabajar con una variable en ireport: Cuando el valor de un campo es igual a 100, entonces cuente el numero de ocurrencias. Lo ...
  #1 (permalink)  
Antiguo 09/02/2007, 10:17
 
Fecha de Ingreso: febrero-2007
Mensajes: 2
Antigüedad: 17 años, 2 meses
Puntos: 0
Variables en ireport

Hola!

Necesito trabajar con una variable en ireport: Cuando el valor de un campo es igual a 100, entonces cuente el numero de ocurrencias. Lo estoy haciendo de la siguiente forma y me saca error:

Defini una variable tipo entero, y en "Calculation Type" le coloque "count".

En variable Expression:
if($F{Codproducto}.equals("100"))

Sale el siguiente error: Syntax*error*on*token*"if",*delete*this*token ****************value*=*(java.lang.Integer)(if(((j ava.lang.Integer)field_Codproducto.getValue()).equ als("100")));

Gracias
  #2 (permalink)  
Antiguo 09/02/2007, 10:47
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Variables en ireport

Por lo que parece, en expression le tienes que poner algo que se pueda asignar a una variable, y no un trozo de codigo. Si mueves el trozo de codigo a una funcion que te devuelva un valor segun los parametros, quizá te funcione.

Pero como no hago esas cosas con el iReport, hablo de intuiciones.
  #3 (permalink)  
Antiguo 09/02/2007, 12:44
 
Fecha de Ingreso: febrero-2007
Mensajes: 2
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Variables en ireport

Cambie la expresion por:

$F{Codproducto}.equals("100")?0:new Integer($V{SUMA}+ $F{Total})

Lo que necesito es: Que si el codigo del producto=100, entonces a la variable $V{SUMA} sumele el campo $F{Total}.

pero me arroja el siguiente error:

1.*Incompatible*conditional*operand*types*int*and* Integer ****************value*=*(java.lang.Object)(((java. lang.Integer)field_Codproducto.getValue()).equals( "100")?0:new*Integer(((java.lang.Integer)variable_ SUM_100.getValue())+*((java.lang.Integer)field_Tot al.getValue()))); ******************************************<----------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 2.*The*operator*+*is*undefined*for*the*argument*ty pe(s)*java.lang.Integer,*java.lang.Integer ****************value*=*(java.lang.Object)(((java. lang.Integer)field_Codproducto.getValue()).equals( "100")?0:new*Integer(((java.lang.Integer)variable_ SUM_100.getValue())+*((java.lang.Integer)field_Tot al.getValue()))); *************************************************

Gracias a quien pueda ayudarme ....
  #4 (permalink)  
Antiguo 11/02/2007, 15:43
 
Fecha de Ingreso: octubre-2006
Mensajes: 8
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Variables en ireport

hola, prueba esto:
define una variable $V{suma} ... en ella colocas


$F{Codproducto}==new java.lang.Integer(100)?"escribe lo que quieras sumar, sin las comillas" : "escribe lo que desees en caso q no sea 100, sin las comillas"


----
  #5 (permalink)  
Antiguo 06/12/2010, 10:41
 
Fecha de Ingreso: noviembre-2010
Mensajes: 4
Antigüedad: 13 años, 5 meses
Puntos: 0
Exclamación Respuesta: Variables en ireport

hola no se si puedas ayudarme con esto por q la verdad ya le he hecho de varias maneras diferentes...quiero hacer algo parecido una expresion q me haga por ejemplo tengo un campoy en algunos campos tengo datos pero otros son nulos quiero q cuandos ea nulo me ponga cero si no q me ponga lo q hay en ese campo..pero no se donde ponerlo y como hacerle y los datos son de tipo decimal...algunos son doubles y otros son bigdecimal...serias tan amable de ayudarme un poquito gracias y de especificarme donde poner la expresion por favor..saludos
  #6 (permalink)  
Antiguo 15/12/2010, 08:45
 
Fecha de Ingreso: septiembre-2007
Mensajes: 27
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Variables en ireport

Cita:
Iniciado por yolivaldez Ver Mensaje
hola no se si puedas ayudarme con esto por q la verdad ya le he hecho de varias maneras diferentes...quiero hacer algo parecido una expresion q me haga por ejemplo tengo un campoy en algunos campos tengo datos pero otros son nulos quiero q cuandos ea nulo me ponga cero si no q me ponga lo q hay en ese campo..pero no se donde ponerlo y como hacerle y los datos son de tipo decimal...algunos son doubles y otros son bigdecimal...serias tan amable de ayudarme un poquito gracias y de especificarme donde poner la expresion por favor..saludos
Eso hacelo en la clase java, valida que si es null le asignas el 0, de lo contrario le pasas el valor que recibe o lo otro si es un parameters cuando lo defines hay una opcion que dice "Default value expression" ahi coloca "0" y si viene nulo el valor te lo tomara como 0, pero ojo que solo si es parameters si es un Field mejor la validacion desde Java.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:04.