Ver Mensaje Individual
  #13 (permalink)  
Antiguo 26/11/2008, 09:52
Muyerina
 
Fecha de Ingreso: octubre-2006
Mensajes: 18
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: iReport - Subreport

Si solo necesitas mostrar dos decimales (cortando el número sin más) ten en cuenta que los campos del iReport tienen la opción de indicarle el número de decimales que quieres en caso de ser un Double.
Para ello pulsas sobre el campo con el botón dcho, vas a Propiedades y pulsas la pestaña "Campo de texto".
La expresión debe de ser Double y el formato a mi al menos me sale por defecto con dos decimales, pero si le das al botón crear puedes poner los que quieras.

De esta forma si tienes un número 9.9865 te lo dejaría en 9.98


Otra cosa es que estés trabajando con monedas y te interese hacer un redondeo al alza (en el ejemplo que te acabo de poner en vez de 9'98 sería 9'99) igual te vendría bien utilizar la clase NumberFormat.
Cambias el tipo de expresión a String y en la expresión pones:
NumberFormat.getCurrencyInstance().format($V{numer o}.doubleValue())

Siendo $v{numero} el número real a redondear (en mi caso lo probé con un campo variable, pero supongo que será igual de eficaz con un campo obtenido de la base de datos). Esta clase te pone incluso el simbolito del euro al final