Sub report not getting displayed in the master report

Hello, I am using jasper report where I need to specify State office address based on state the customer belongs to. I have all address in a state wise csv file. I create a report to display the address using a report and passing state as a input parameter. The report work fine as a master report.

 

However when I add the same report as a sub report to a master reprot it is not displaying anything. I have gone thru all the links but of no help. I am pasting the master and child report xml's here.

MASTER.JRXML

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.4.0.final using JasperReports Library version 6.4.1  -->
<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="Master" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="686a1244-29c7-455f-ae26-a6023ec3a686">
 <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
 <parameter name="CIRCLE" class="java.lang.String"/>
 <queryString>
  <![CDATA[]]>
 </queryString>
 <detail>
  <band height="500" splitType="Stretch">
   <property name="com.jaspersoft.studio.unit.height" value="pixel"/>
   <staticText>
    <reportElement x="144" y="35" width="186" height="26" uuid="a19c724d-c030-4b5b-ac74-a4e4a594d84a"/>
    <text><![CDATA[Circle Office Address]]></text>
   </staticText>
   <subreport>
    <reportElement x="3" y="5" width="550" height="20" uuid="4253e5f6-64f5-4247-9836-95c878a0ca4c">
     <property name="com.jaspersoft.studio.unit.height" value="pixel"/>
    </reportElement>
    <subreportParameter name="CIRCLE">
     <subreportParameterExpression><![CDATA[$P{CIRCLE}]]></subreportParameterExpression>
    </subreportParameter>
    <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.JREmptyDataSource()]]></dataSourceExpression>
    <subreportExpression><![CDATA["Circle_address.jasper"]]></subreportExpression>
   </subreport>
  </band>
 </detail>
</jasperReport>

SUBREPORTJRXML

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.4.0.final using JasperReports Library version 6.4.1  -->
<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="Circle_address" pageWidth="595" pageHeight="842" whenNoDataType="NoDataSection" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" isTitleNewPage="true" isSummaryNewPage="true" isSummaryWithPageHeaderAndFooter="true" isFloatColumnFooter="true" isIgnorePagination="true" uuid="dd7fde1b-e0e2-4729-8a32-334ccc4c3679">
 <property name="com.jaspersoft.studio.data.defaultdataadapter" value="Circle_address_1"/>
 <property name="com.jaspersoft.studio.unit." value="pixel"/>
 <property name="com.jaspersoft.studio.unit.pageHeight" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.pageWidth" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.topMargin" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.bottomMargin" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.leftMargin" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.rightMargin" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.columnWidth" value="pixel"/>
 <property name="com.jaspersoft.studio.unit.columnSpacing" value="pixel"/>
 <parameter name="CIRCLE" class="java.lang.String" isForPrompting="false">
  <defaultValueExpression><![CDATA["MH"]]></defaultValueExpression>
 </parameter>
 <queryString>
  <![CDATA[]]>
 </queryString>
 <field name="Circle" class="java.lang.String"/>
 <field name="Office" class="java.lang.String"/>
 <detail>
  <band height="12" splitType="Prevent">
   <property name="com.jaspersoft.studio.unit.height" value="pixel"/>
   <printWhenExpression><![CDATA[EQUALS($F{Circle},$P{CIRCLE})]]></printWhenExpression>
   <textField isBlankWhenNull="true">
    <reportElement isPrintRepeatedValues="false" x="-20" y="-19" width="400" height="12" isRemoveLineWhenBlank="true" uuid="a9d1f5cd-6bb0-4839-b1e3-51c7e822d724">
     <property name="com.jaspersoft.studio.unit.height" value="pixel"/>
     <property name="com.jaspersoft.studio.unit.width" value="pixel"/>
     <property name="com.jaspersoft.studio.unit.x" value="pixel"/>
     <property name="com.jaspersoft.studio.unit.y" value="pixel"/>
    </reportElement>
    <textElement>
     <font fontName="Calibri" size="8"/>
    </textElement>
    <textFieldExpression><![CDATA[$F{Office}]]></textFieldExpression>
   </textField>
  </band>
 </detail>
</jasperReport>
 

 

 

 

 

shrikant_anjarlekar's picture
Joined: Sep 3 2017 - 3:45am
Last seen: 6 years 3 weeks ago

4 Answers:

Have you set up a return value from your sub-report?

perlnecklace's picture
Joined: Mar 8 2017 - 8:07am
Last seen: 5 years 6 months ago

In the master report you used a JREmptyDataSource() as datasource expression for the subreport. The subreport will come with no data, so it is nothing to be displayed. Set an appropriate expression for the subreport datasource.

Another solution: remove the datasource expression from the subreport in the master report. In the subreport set the net.sf.jasperreports.data.adapter property with the appropriate data adapter xml file.

shertage's picture
22298
Joined: Sep 26 2006 - 8:06pm
Last seen: 2 months 3 weeks ago

Hello, perlnecklace, how to set the return value for the sub report. When I click the return values the add button is disabled?

shrikant_anjarlekar's picture
Joined: Sep 3 2017 - 3:45am
Last seen: 6 years 3 weeks ago

Agree with Shertage. 

Return variable is not required since 'Office' field is directly displayed in subreport itself. Remove the data source expression and do as Shertage's suggestion. Also, try $P{REPORT_CONNECTION} parameter in connection expression and connection type by default as 'Use a connection expression', Datasource expression as blank.

Shazia's picture
286
Joined: Aug 2 2017 - 6:08am
Last seen: 4 years 4 months ago
Feedback
randomness