Reporte Agrupado

Trabajaremos con el entity Modelo de la seccion anterior.

Parametros Group:

Atributo

Descripciòn

field

campo a agrupar

staticTextHeader

Texto de la banda Group Header

staticTextFooter

Texto de la banda Group Footer

fieldFooter

Atributo de la banda Footer

operation

se utilizan los valores "Nothing", "Sum", "Variance", "Average", "Lowest", "Count", "Highest", "DistinctCount", "StandardDeviation", "System", "First". Si se coloca Nothing se mostrara el valor del atributo.

Summary

Atributo

Descripciòn

staticText

Texto de la banda summary

field

Atributo de la banda summary

operation

se utilizan los valores "Nothing", "Sum", "Variance", "Average", "Lowest", "Count", "Highest", "DistinctCount", "StandardDeviation", "System", "First"

Deseamos:

  • Agruparlo por grupo, en el Group Header colocar el mensaje Grupo y mostrar el valor del atributo grupo

  • En el Group Footer, mostrar el mensaje Suma y sumar el atributo cantidad mediante la operacion sum

  • En el resumen queremos sumar todas las cantidades y mostrar el texto Total de cantidad

Page {
       size:"A4",
      }
Group {
       field:"grupo",
       staticTextHeader:"Grupo",
       staticTexFooter:"Suma",
       fieldFooter:"cantidad",
       operation:"Sum"
       }
Summary{
        staticText:"Total de cantidad",
        field:"cantidad",
        operation:"Sum"
        }

Observamos el jasper que esta generando

Podemos ver las secciones, que se han definido las variables con las operaciones

<variable name="v_cantidad" class="java.lang.Integer" resetType="Group" resetGroup="group_grupo" calculation="Sum">
          <variableExpression><![CDATA[$F{cantidad}]]></variableExpression>
 </variable>
 <variable name="v_summary_cantidad" class="java.lang.Integer"  calculation="Sum">
       <variableExpression><![CDATA[$F{cantidad}]]></variableExpression>
 </variable>

Grupos

Podemos observar las bandas de grupos

 <group name="group_grupo">
          <groupExpression><![CDATA[$F{grupo}]]></groupExpression>
          <groupHeader>
                   <band height="38">
                        <staticText>
                                   <reportElement x="1" y="10" width="100" height="20" />
                                   <textElement>
                                           <font isBold="true"/>
                                   </textElement>
                                   <text><![CDATA[Grupo]]></text>
                         </staticText>
                         <textField>
                                  <reportElement x="110" y="10" width="100" height="20" />
                                  <textFieldExpression><![CDATA[$F{grupo}]]></textFieldExpression>
                         </textField>
                   </band>
          </groupHeader>

Se muestra los parámetros establecidos en el JSON, y se pueden cambiar el contenido del Header y Footer.

Resumen

Desde la Pantalla de Reportes

Repetimos los pasos para el Reporte Details

Ejecutamos el proyecto

Seleccionamos Modelo All y vemos el reporte agrupado

Si damos clic en Modelo Details

Last updated