簡體   English   中英

使用bean數據源和子報表在JasperReports中生成空白報表

[英]Getting blank report generated in JasperReports using bean datasource and subreports

我正在創建JasperReports的報告,其中僅包含子報告。

以下是我目前面臨的情況。

為了簡化問題,讓我們只考慮兩個碧玉報告:mainReport和subReportFile1。

我的主要報告jasper文件如下:

 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Created with Jaspersoft Studio version 5.6.1.final using  JasperReports Library version 5.6.1  -->
 <!-- 2015-01-28T14:21:34 -->
 <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="mainReport" pageWidth="555" pageHeight="802" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="84a1df53-5934-4d37-a3ae-44735dfd5dc3">
  <property name="com.jaspersoft.studio.unit." value="pixel"/>
  <property name="ireport.zoom" value="1.0"/>
  <property name="ireport.x" value="0"/>
  <property name="ireport.y" value="1936"/>
 <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
 <parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
     <defaultValueExpression><![CDATA["/my/file/path/jaspers/"]]></defaultValueExpression>
  </parameter>
  <parameter name="customObjectList" class="java.util.List"/>
  <detail>
    <band height="181" splitType="Stretch">
        <subreport>
            <reportElement x="0" y="3" width="554" height="157" uuid="782c39a9-1617-403c-b997-36f5cb9cdefd"/>
            <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{malwareList})]]></dataSourceExpression>
            <subreportExpression><![CDATA["/my/file/path/jaspers/subreport.jasper"]]></subreportExpression>
        </subreport>
        </band>
    </detail>
 </jasperReport>

子報表具有以下字段,我為其創建了以下定制Bean類,並將其作為參數發送到主報表文件。 我有帶有以下字段的CustomBeanClass:

    String field1;
    String field2;
    private int field3;
    int field4;
    String field5;
    String date;

我正在Java文件中執行以下行,但仍然得到空白的pdf報告文件。

  JasperRunManager.runReportToPdfFile(path, "/home/neeraj/test.pdf",
                parametersMap, new JREmptyDataSource());

參數映射具有我發送到子報表的列表。 這就是我想要做的。 將Bean列表的數據源發送到存在的其他子報表。

我要去哪里錯了?

主報告不包含任何記錄(JREmptyDataSource),因此未處理明細區域。 未執行詳細范圍的子報表。

將子報表移到標題欄。 並設置報告屬性“ When No Data Type” =“ All Sections No Detail”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM