paulas Posted October 9, 2018 Share Posted October 9, 2018 Hi,I'm using JasperSoft Studio 6.6.0. This software is completely new to me. I've been trying to create a simple report book that has a few pages of content + a table of contents in the beginning, but I can't get it right. The best I got was a report with table of contents and content, with a correct number of pages, but filled entirely with nulls. When I try to preview the content alone, it works just fine. I feel like I've seen every post and tutorial on the internet, but I didn't manage to make it work. I'm using a very simple XML data source:<?xml version="1.0" encoding="UTF-8"?><root> <row> <Item_number>134942</Item_number> <Title>Bokstäver Versaler Magnet Quercetti</Title> </row> <row> <Item_number>134943</Item_number> <Title>Siffror Magnet Quercetti</Title> </row> <row> <Item_number>134948</Item_number> <Title>Bokstäver Gemener Magnet Quercetti</Title> </row> <row> <Item_number>136939</Item_number> <Title>Kabel DELTACO USB-C A Ho 1m Svart</Title> </row> <row> <Item_number>137523</Item_number> <Title>Kabel DELTACO USB-C Mini B 2m Svart</Title> </row> <row> <Item_number>143389</Item_number> <Title>Toner LEXMARK 82K2HM0 magenta</Title> </row> <row> <Item_number>146269</Item_number> <Title>Fryspåse PINGVIN ECO 1l 55/RL</Title> </row> <row> <Item_number>146270</Item_number> <Title>Fryspåse PINGVIN ECO 2l 35/RL</Title> </row> <row> <Item_number>146271</Item_number> <Title>Fryspåse PINGVIN ECO 3l 30/RL</Title> </row></root>So, here's my Report (actually I took all of this from the documentation and just modified the data source):<?xml version="1.0" encoding="UTF-8"?><!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 --><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="TableOfContentsReport" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" sectionType="Part" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="30" bottomMargin="30" uuid="e52780b9-8f01-4b16-86fe-712163e5aadc"> <property name="net.sf.jasperreports.print.create.bookmarks" value="true"/> <property name="com.jaspersoft.studio.data.defaultdataadapter" value="emoxml"/> <parameter name="ReportTitle" class="java.lang.String"> <parameterDescription><![CDATA[]]></parameterDescription> <defaultValueExpression><![CDATA["Orders Report"]]></defaultValueExpression> </parameter> <queryString language="XPath"> <![CDATA[/root/row]]> </queryString> <field name="Item_number" class="java.lang.String"> <property name="net.sf.jasperreports.xpath.field.expression" value="Item_number"/> <fieldDescription><![CDATA[item_number]]></fieldDescription> </field> <field name="Title" class="java.lang.String"> <property name="net.sf.jasperreports.xpath.field.expression" value="Title"/> <fieldDescription><![CDATA[Title]]></fieldDescription> </field> <group name="dummy"> <groupExpression><![CDATA[]]></groupExpression> <groupHeader> <part evaluationTime="Report" uuid="1fadcc2f-31c1-49be-bd52-f8b69e38cd83"> <property name="net.sf.jasperreports.bookmarks.data.source.parameter" value="REPORT_DATA_SOURCE"/> <partNameExpression><![CDATA["Table of Contents"]]></partNameExpression> <p:subreportPart xmlns:p="http://jasperreports.sourceforge.net/jasperreports/parts" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/parts http://jasperreports.sourceforge.net/xsd/parts.xsd" usingCache="true"> <subreportParameter name="ReportTitle"> <subreportParameterExpression><![CDATA[$P{ReportTitle}]]></subreportParameterExpression> </subreportParameter> <subreportExpression><![CDATA["TocPart.jasper"]]></subreportExpression> </p:subreportPart> </part> </groupHeader> </group> <detail> <part uuid="3f63c482-39b2-43f1-a623-15fb046605a5"> <partNameExpression><![CDATA["Countries"]]></partNameExpression> <p:subreportPart xmlns:p="http://jasperreports.sourceforge.net/jasperreports/parts" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/parts http://jasperreports.sourceforge.net/xsd/parts.xsd" usingCache="true"> <subreportParameter name="REPORT_CONNECTION"> <subreportParameterExpression><![CDATA[$P{REPORT_CONNECTION}]]></subreportParameterExpression> </subreportParameter> <subreportExpression><![CDATA["TablePart.jasper"]]></subreportExpression> </p:subreportPart> </part> </detail></jasperReport> Here's the TOC part:<?xml version="1.0" encoding="UTF-8"?><!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 --><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="TocPart" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="0" bottomMargin="0" uuid="47d0342f-7687-4167-8741-854ed01cfed5"> <property name="com.jaspersoft.studio.data.defaultdataadapter" value="TocData"/> <style name="Sans_Normal" isDefault="true" fontName="DejaVu Sans" fontSize="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false"/> <style name="Sans_Bold" fontName="DejaVu Sans" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false"/> <style name="Sans_Italic" fontName="DejaVu Sans" fontSize="12" isBold="false" isItalic="true" isUnderline="false" isStrikeThrough="false"/> <parameter name="ReportTitle" class="java.lang.String"/> <field name="level" class="java.lang.Integer"/> <field name="label" class="java.lang.String"/> <field name="pageIndex" class="java.lang.Integer"/> <title> <band height="200" splitType="Stretch"> <property name="local_mesure_unitheight" value="pixel"/> <property name="com.jaspersoft.studio.unit.height" value="px"/> <line> <reportElement x="0" y="0" width="555" height="1" uuid="300c799d-e09f-44f7-8be8-5422c73f87a7"> <property name="local_mesure_unitwidth" value="pixel"/> <property name="com.jaspersoft.studio.unit.width" value="px"/> </reportElement> </line> <textField isBlankWhenNull="true"> <reportElement style="Sans_Normal" x="50" y="10" width="455" height="60" uuid="00a87b84-1ab0-4558-9780-c6bf32fb8889"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <property name="local_mesure_unitwidth" value="pixel"/> <property name="com.jaspersoft.studio.unit.width" value="px"/> </reportElement> <textElement textAlignment="Center" verticalAlignment="Bottom"> <font size="22"/> </textElement> <textFieldExpression><![CDATA["Hello"]]></textFieldExpression> </textField> <staticText> <reportElement positionType="Float" x="50" y="100" width="455" height="60" isRemoveLineWhenBlank="true" uuid="b8d09c84-640c-4033-9e32-272a25d00715"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <property name="local_mesure_unitwidth" value="pixel"/> <property name="com.jaspersoft.studio.unit.width" value="px"/> </reportElement> <textElement textAlignment="Justified"/> <text><![CDATA[Here is a simple example that shows how to create a table of contents for your report, using JasperReports parts and bookmarked elements in the report.]]></text> </staticText> </band> </title> <pageHeader> <band height="40" splitType="Stretch"> <staticText> <reportElement style="Sans_Normal" positionType="Float" x="50" y="10" width="455" height="20" isRemoveLineWhenBlank="true" uuid="2d14bb6a-c6a1-448e-83df-d3ea629a9d32"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <property name="local_mesure_unitwidth" value="pixel"/> <property name="com.jaspersoft.studio.unit.width" value="px"/> </reportElement> <textElement textAlignment="Center"> <font size="16"/> </textElement> <text><![CDATA[Table of Contents]]></text> </staticText> </band> </pageHeader> <detail> <band height="32" splitType="Stretch"> <textField isStretchWithOverflow="true" hyperlinkType="LocalAnchor"> <reportElement style="Sans_Bold" positionType="Float" x="50" y="0" width="100" height="15" isRemoveLineWhenBlank="true" uuid="db8b68c6-4430-4199-8967-3ab5c077cb56"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <printWhenExpression><![CDATA[$F{level} == 1]]></printWhenExpression> </reportElement> <textFieldExpression><![CDATA[$F{label}]]></textFieldExpression> <hyperlinkAnchorExpression><![CDATA[$F{label}]]></hyperlinkAnchorExpression> </textField> <staticText> <reportElement style="Sans_Bold" positionType="Float" x="150" y="0" width="325" height="15" isRemoveLineWhenBlank="true" uuid="c1b5050c-266f-4e13-a402-a15b50548116"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <property name="local_mesure_unitwidth" value="pixel"/> <property name="com.jaspersoft.studio.unit.width" value="px"/> <printWhenExpression><![CDATA[$F{level} == 1]]></printWhenExpression> </reportElement> <textElement textAlignment="Center"/> <text><![CDATA[___________________________________________________]]></text> </staticText> <textField isStretchWithOverflow="true" evaluationTime="Auto" hyperlinkType="LocalAnchor"> <reportElement style="Sans_Bold" positionType="Float" x="475" y="0" width="30" height="15" isRemoveLineWhenBlank="true" uuid="012b7361-f06b-4539-b299-5a3f0bcbb7b5"> <property name="local_mesure_unitx" value="pixel"/> <property name="com.jaspersoft.studio.unit.x" value="px"/> <printWhenExpression><![CDATA[$F{level} == 1]]></printWhenExpression> </reportElement> <textElement textAlignment="Right"/> <textFieldExpression><![CDATA[$V{PAGE_NUMBER} + $F{pageIndex} + 1]]></textFieldExpression> <hyperlinkAnchorExpression><![CDATA[$F{label}]]></hyperlinkAnchorExpression> </textField> <textField isStretchWithOverflow="true" hyperlinkType="LocalAnchor"> <reportElement positionType="Float" x="75" y="16" width="100" height="15" isRemoveLineWhenBlank="true" uuid="effe6dfe-dbc8-4451-bf44-a96565a20564"> <printWhenExpression><![CDATA[$F{level} == 2]]></printWhenExpression> </reportElement> <textFieldExpression><![CDATA[$F{label}]]></textFieldExpression> <hyperlinkAnchorExpression><![CDATA[$F{label}]]></hyperlinkAnchorExpression> <hyperlinkTooltipExpression><![CDATA["View orders from " + $F{label}]]></hyperlinkTooltipExpression> </textField> <staticText> <reportElement positionType="Float" x="175" y="16" width="260" height="15" isRemoveLineWhenBlank="true" uuid="c6cf49ba-d7d0-42fa-9b2c-36ba110e91f4"> <printWhenExpression><![CDATA[$F{level} == 2]]></printWhenExpression> </reportElement> <textElement textAlignment="Center"/> <text><![CDATA[. . . . . . . . . . . . . . . . . . .]]></text> </staticText> <textField isStretchWithOverflow="true" evaluationTime="Auto" hyperlinkType="LocalAnchor"> <reportElement positionType="Float" x="435" y="16" width="30" height="15" isRemoveLineWhenBlank="true" uuid="3c835858-cc27-41b1-b820-94b8d9ec0acf"> <printWhenExpression><![CDATA[$F{level} == 2]]></printWhenExpression> </reportElement> <textElement textAlignment="Right"/> <textFieldExpression><![CDATA[$V{PAGE_NUMBER} + $F{pageIndex} + 1]]></textFieldExpression> <hyperlinkAnchorExpression><![CDATA[$F{label}]]></hyperlinkAnchorExpression> </textField> </band> </detail></jasperReport> And the content part:<?xml version="1.0" encoding="UTF-8"?><!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 --><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="TablePart" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="515" leftMargin="40" rightMargin="40" topMargin="50" bottomMargin="50" isSummaryNewPage="true" uuid="5c559f3e-b23b-4cd4-a579-7ed7c0d2b615"> <property name="com.jaspersoft.studio.data.defaultdataadapter" value="emoxml"/> <style name="Sans_Normal" isDefault="true" fontName="DejaVu Sans" fontSize="12" isBold="false" isItalic="false" isUnderline="false" isStrikeThrough="false"/> <style name="Sans_Bold" fontName="DejaVu Sans" fontSize="12" isBold="true" isItalic="false" isUnderline="false" isStrikeThrough="false"/> <style name="Sans_Italic" fontName="DejaVu Sans" fontSize="12" isBold="false" isItalic="true" isUnderline="false" isStrikeThrough="false"/> <parameter name="ReportTitle" class="java.lang.String"/> <queryString language="XPath"> <![CDATA[/root/row]]> </queryString> <field name="Item_number" class="java.lang.String"> <property name="net.sf.jasperreports.xpath.field.expression" value="Item_number"/> <fieldDescription><![CDATA[item_number]]></fieldDescription> </field> <field name="Title" class="java.lang.String"> <property name="net.sf.jasperreports.xpath.field.expression" value="Title"/> <fieldDescription><![CDATA[Title]]></fieldDescription> </field> <group name="item"> <groupExpression><![CDATA[$F{Item_number}]]></groupExpression> <groupFooter> <band height="11"> <break> <reportElement x="0" y="5" width="99" height="1" uuid="18d8a74b-9361-4f33-b2f2-fd11833a531c"/> </break> </band> </groupFooter> </group> <pageHeader> <band height="30"> <textField bookmarkLevel="1"> <reportElement x="0" y="0" width="100" height="30" uuid="1552f3cb-df1f-4d4d-af18-df25ed7dc926"/> <textFieldExpression><![CDATA[$F{Item_number}]]></textFieldExpression> <anchorNameExpression><![CDATA[$F{Item_number}]]></anchorNameExpression> </textField> </band> </pageHeader> <detail> <band height="40"> <textField> <reportElement x="100" y="10" width="100" height="30" uuid="d731f972-bc2f-4bbf-8701-ba1eb03a5e8b"/> <textFieldExpression><![CDATA[$F{Title}]]></textFieldExpression> </textField> </band> </detail></jasperReport> Please let me know if I should provide any other information. I'll be really grateful for any help! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now