René Nyffenegger's collection of things on the web | |
René Nyffenegger on Oracle - Most wanted - Feedback
- Follow @renenyffenegger
|
Jasper - Variables | ||
This example demonstrates the use of variables in order to display sub totals on group levels. Look out for the variable
named $V{VAL_1}.
<?xml version="1.0" encoding="UTF-8"?> <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name = "Variables" pageWidth = "595" pageHeight = "845" columnWidth = "595" leftMargin = "0" rightMargin = "0" topMargin = "0" bottomMargin = "0" > <queryString> <![CDATA[ --------------- select color, taste, val from ( select 'green' color, 'sweet' taste, 2 val from dual union all select 'green' color, 'sweet' taste, 3 val from dual union all select 'green' color, 'sweet' taste, 4 val from dual union all select 'green' color, 'salty' taste, 7 val from dual union all select 'green' color, 'salty' taste, 9 val from dual union all select 'red' color, 'sweet' taste, 1 val from dual union all select 'red' color, 'bitter' taste, 2 val from dual union all select 'red' color, 'bitter' taste, 5 val from dual union all select 'blue' color, 'greasy' taste, 6 val from dual ) order by color, taste --------------- ]]> </queryString> <field name="COLOR" class="java.lang.String"> <fieldDescription><![CDATA[]]></fieldDescription> </field> <field name="TASTE" class="java.lang.String"> <fieldDescription><![CDATA[]]></fieldDescription> </field> <field name="VAL" class="java.math.BigDecimal"> <fieldDescription><![CDATA[]]></fieldDescription> </field> <variable name="VAL_1" class="java.math.BigDecimal" resetType="Group" resetGroup="TASTE" calculation="Sum"> <variableExpression><![CDATA[$F{VAL}]]></variableExpression> </variable> <group name="COLOR"> <groupExpression><![CDATA[$F{COLOR}]]></groupExpression> <groupHeader> <band height="13" splitType="Stretch"> <staticText> <reportElement x="30" y="0" width="40" height="13"/> <text><![CDATA[Color:]]></text> </staticText> <textField> <reportElement x="72" y="0" width="40" height="13" /> <textFieldExpression class="java.lang.String"><![CDATA[$F{COLOR}]]></textFieldExpression> </textField> </band> </groupHeader> <groupFooter> <band/> </groupFooter> </group> <group name="TASTE"> <groupExpression><![CDATA[$F{TASTE}]]></groupExpression> <groupHeader> <band height="13"> <staticText> <reportElement x="60" y="0" width="40" height="13"/> <text><![CDATA[Taste:]]></text> </staticText> <textField> <reportElement mode="Opaque" x="105" y="0" width="60" height="13" /> <textFieldExpression class="java.lang.String"><![CDATA[$F{TASTE}]]></textFieldExpression> </textField> </band> </groupHeader> <groupFooter> <band height="13" splitType="Stretch"> <staticText> <reportElement x="120" y="0" width="130" height="13"/> <text><![CDATA[Total for Color and taste:]]></text> </staticText> <textField> <reportElement x="250" y="0" width="100" height="13"/> <textElement/> <textFieldExpression class="java.math.BigDecimal"><![CDATA[$V{VAL_1}]]></textFieldExpression> </textField> </band> </groupFooter> </group> <title> <band/> </title> <pageHeader> <band/> </pageHeader> <columnHeader> <band/> </columnHeader> <detail> <band height="13" splitType="Stretch"> <staticText> <reportElement x="150" y="0" width="100" height="13"/> <text><![CDATA[Value:]]></text> </staticText> <textField> <reportElement x="250" y="0" width="100" height="13"/> <textFieldExpression class="java.math.BigDecimal"><![CDATA[$F{VAL}]]></textFieldExpression> </textField> </band> </detail> <columnFooter> <band/> </columnFooter> <pageFooter> <band/> </pageFooter> <summary> <band/> </summary> </jasperReport>
See also other Jasper examples.
|