java - Unable to make sub reports with Jasper -


i using jaspersoft studio create reports. having sub report in jasper main report. problem unable make work, because if add sub report detail band of main report, sub report generated number of times, row row, entire sub report repeated in number of pages. can't put in summery band due same reason.

i unable put in column footer band or other footers because displays below error

net.sf.jasperreports.engine.jrexception: net.sf.jasperreports.engine.jrruntimeexception: subreport overflowed on band not support overflow.     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler.fillreport(reportcontroler.java:467)     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler.access$18(reportcontroler.java:442)     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler$4.run(reportcontroler.java:334)     @ org.eclipse.core.internal.jobs.worker.run(worker.java:54) caused by: net.sf.jasperreports.engine.jrruntimeexception: subreport overflowed on band not support overflow.     @ net.sf.jasperreports.engine.fill.fillersubreportparent.addpage(fillersubreportparent.java:113)     @ net.sf.jasperreports.engine.fill.jrbasefiller.addpagetoparent(jrbasefiller.java:1213)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.addpage(jrverticalfiller.java:1836)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillpagebreak(jrverticalfiller.java:1919)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillcolumnbreak(jrverticalfiller.java:1948)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.filldetail(jrverticalfiller.java:730)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillreportstart(jrverticalfiller.java:264)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillreport(jrverticalfiller.java:124)     @ net.sf.jasperreports.engine.fill.jrbasefiller.fill(jrbasefiller.java:540)     @ net.sf.jasperreports.engine.fill.basereportfiller.fill(basereportfiller.java:393)     @ net.sf.jasperreports.engine.fill.jrfillsubreport.fillsubreport(jrfillsubreport.java:704)     @ net.sf.jasperreports.engine.fill.jrsubreportrunnable.run(jrsubreportrunnable.java:59)     @ net.sf.jasperreports.engine.fill.abstractthreadsubreportrunner.run(abstractthreadsubreportrunner.java:203)     @ java.util.concurrent.threadpoolexecutor.runworker(unknown source)     @ java.util.concurrent.threadpoolexecutor$worker.run(unknown source)     @ java.lang.thread.run(unknown source) 

i unable put in page header due below error, or else keep on executing.

net.sf.jasperreports.engine.jrexception: net.sf.jasperreports.engine.jrruntimeexception: infinite loop creating new page due page header overflow.     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler.fillreport(reportcontroler.java:467)     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler.access$18(reportcontroler.java:442)     @ com.jaspersoft.studio.editor.preview.view.control.reportcontroler$4.run(reportcontroler.java:334)     @ org.eclipse.core.internal.jobs.worker.run(worker.java:54) caused by: net.sf.jasperreports.engine.jrruntimeexception: infinite loop creating new page due page header overflow.     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillpageheader(jrverticalfiller.java:415)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillreportstart(jrverticalfiller.java:258)     @ net.sf.jasperreports.engine.fill.jrverticalfiller.fillreport(jrverticalfiller.java:124)     @ net.sf.jasperreports.engine.fill.jrbasefiller.fill(jrbasefiller.java:540)     @ net.sf.jasperreports.engine.fill.basefillhandle$reportfill.run(basefillhandle.java:120)     @ java.lang.thread.run(unknown source) 

below code of main report

<?xml version="1.0" encoding="utf-8"?> <!-- created jaspersoft studio version 6.0.0.final using jasperreports library version 6.0.0  --> <!-- 2014-12-16t11:26:41 --> <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="portfolio_view_report" pagewidth="595" pageheight="842" columnwidth="555" leftmargin="20" rightmargin="20" topmargin="20" bottommargin="20" uuid="961f2f5f-8ed1-422c-9a1a-6b9dcdf1624f">     <property name="com.jaspersoft.studio.data.defaultdataadapter" value="xxx"/>     <parameter name="idportfolio" class="java.lang.integer"/>     <querystring>         <![cdata[select * client]]>     </querystring>     <background>         <band splittype="stretch"/>     </background>     <title>         <band height="119" splittype="stretch">             <property name="local_mesure_unitheight" value="pixel"/>             <property name="com.jaspersoft.studio.unit.height" value="px"/>             <image>                 <reportelement x="210" y="1" width="140" height="76" uuid="f5d606fc-24d8-4536-9c35-56ce81c863c2"/>                 <imageexpression><![cdata["c:/users/xxx/jaspersoftworkspace/xxx/xxx.png"]]></imageexpression>             </image>             <statictext>                 <reportelement x="0" y="80" width="210" height="30" uuid="8c8eb2f8-9d3d-46a0-9d4c-0d049e8c544d"/>                 <textelement>                     <font fontname="times new roman" size="14" isbold="true" isunderline="true"/>                 </textelement>                 <text><![cdata[portfolio view report]]></text>             </statictext>         </band>     </title>     <pageheader>         <band height="159" splittype="stretch">             <statictext>                 <reportelement x="-1" y="0" width="163" height="20" uuid="8ffdf975-7965-4402-b9af-ef7785872f24"/>                 <textelement verticalalignment="middle">                     <font fontname="times new roman"/>                 </textelement>                 <text><![cdata[generated by: xxx]]></text>             </statictext>             <textfield pattern="dd-mm-yyyy">                 <reportelement x="450" y="0" width="100" height="20" uuid="cfd44de8-bc3d-4a2d-9f53-b9fdb969b061"/>                 <textelement verticalalignment="middle"/>                 <textfieldexpression><![cdata[new java.util.date()]]></textfieldexpression>             </textfield>             <subreport runtobottom="true">                 <reportelement stretchtype="relativetotallestobject" x="0" y="55" width="555" height="60" uuid="a99b1643-200b-4d7c-ade2-26e30b4fcc82">                     <property name="local_mesure_unitheight" value="pixel"/>                     <property name="com.jaspersoft.studio.unit.height" value="px"/>                 </reportelement>                 <subreportparameter name="idportfolio">                     <subreportparameterexpression><![cdata[$p{idportfolio}]]></subreportparameterexpression>                 </subreportparameter>                 <connectionexpression><![cdata[$p{report_connection}]]></connectionexpression>                 <subreportexpression><![cdata["transactions_report.jasper"]]></subreportexpression>             </subreport>         </band>     </pageheader>     <detail>         <band height="36" splittype="stretch">             <property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.freelayout"/>         </band>     </detail>     <columnfooter>         <band height="285" splittype="stretch">             <property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.freelayout"/>         </band>     </columnfooter>     <pagefooter>         <band height="120" splittype="stretch"/>     </pagefooter>     <summary>         <band height="100" splittype="stretch"/>     </summary> </jasperreport> 

below code of sub report

<?xml version="1.0" encoding="utf-8"?> <!-- created jaspersoft studio version 6.0.0.final using jasperreports library version 6.0.0  --> <!-- 2014-12-16t11:28:26 --> <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="transactions_report" pagewidth="500" pageheight="842" columnwidth="500" leftmargin="0" rightmargin="0" topmargin="0" bottommargin="0" uuid="4204d16c-e22f-46a2-b4c5-8be93fa35bc4">     <property name="com.jaspersoft.studio.unit." value="pixel"/>     <property name="com.jaspersoft.studio.data.defaultdataadapter" value="xxx"/>     <parameter name="idportfolio" class="java.lang.integer"/>     <querystring language="sql">         <![cdata[select transactions.`idtransactions`, transactions.`transaction_timestamp`, transactions.`idportfolio`, case when transactions.`transaction_amount` <= 0       null       else transaction_amount end encashments, case when transactions.`transaction_amount` > 0       null       else (transactions.`transaction_amount`*-1) end additions, portfolio.activation  transactions  inner join portfolio on transactions.idportfolio = portfolio.idportfolio  transactions.idportfolio= $p{idportfolio}  order `transaction_timestamp` desc]]>     </querystring>     <field name="transaction_timestamp" class="java.sql.date">         <fielddescription><![cdata[]]></fielddescription>     </field>     <field name="additions" class="java.lang.double"/>     <field name="encashments" class="java.lang.double"/>     <background>         <band splittype="stretch"/>     </background>     <title>         <band height="47" splittype="stretch">             <statictext>                 <reportelement x="5" y="10" width="180" height="30" uuid="30e059fd-caed-4e67-a4f6-d06f2897ac59"/>                 <textelement>                     <font fontname="times new roman" size="14" isbold="true" isunderline="true"/>                 </textelement>                 <text><![cdata[transations]]></text>             </statictext>         </band>     </title>     <columnheader>         <band height="44" splittype="stretch">             <statictext>                 <reportelement x="0" y="0" width="160" height="30" uuid="344e0833-c92a-47bf-bece-162b5ac7e52b">                     <property name="local_mesure_unitwidth" value="pixel"/>                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <text><![cdata[date]]></text>             </statictext>             <statictext>                 <reportelement x="166" y="0" width="160" height="30" uuid="9bf82277-53b7-4244-aae9-84cf310e6d94">                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <text><![cdata[additions]]></text>             </statictext>             <rectangle>                 <reportelement x="0" y="30" width="490" height="1" uuid="45244617-f10e-4867-bc84-71aa0c42649b"/>                 <graphicelement>                     <pen linewidth="0.5"/>                 </graphicelement>             </rectangle>             <statictext>                 <reportelement x="330" y="0" width="160" height="30" uuid="68c554b4-0d79-4236-9e3f-db1b5dd19f7f">                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <text><![cdata[encashments]]></text>             </statictext>         </band>     </columnheader>     <detail>         <band height="40" splittype="stretch">             <textfield pattern="dd-mm-yyyy">                 <reportelement x="2" y="10" width="158" height="30" uuid="e2ab3765-dd44-4f8d-aedb-d411cce30384">                     <property name="local_mesure_unitwidth" value="pixel"/>                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <textfieldexpression><![cdata[$f{transaction_timestamp}]]></textfieldexpression>             </textfield>             <textfield isblankwhennull="true">                 <reportelement x="166" y="10" width="160" height="30" uuid="bb3baa95-bf15-4462-bb59-3461b1f4e1c7">                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <textfieldexpression><![cdata[$f{additions}]]></textfieldexpression>             </textfield>             <textfield isblankwhennull="true">                 <reportelement x="330" y="10" width="160" height="30" uuid="c625f008-1390-4245-8035-9bdc98c21d79">                     <property name="com.jaspersoft.studio.unit.width" value="px"/>                 </reportelement>                 <textfieldexpression><![cdata[$f{encashments}]]></textfieldexpression>             </textfield>         </band>     </detail> </jasperreport> 

what wrong this?

i found out situation, best use tables instead of subreports. did.

  1. create tables in detail band.
  2. create , assign separate data sets these tables.
  3. now, eventhough don't need query main report, must provide 1 in order jasper continue. query tricky , problamatic, because if returned more 1 result, items in detail band repeat. so, since need tables in detail band printed "once", must restrict result returned main report's query one. did below.

    select name client idclient=1

  4. now items in detail band act once. since tables in detail band contains own queries, entire table filled expected results.

the same method may work sub reports well.


Comments

Popular posts from this blog

java - Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved -

Round ImageView Android -

How can I utilize Yahoo Weather API in android -