我正在尝试使用 iReport 设计器(两者都具有空数据源)从主报告(report1.jrxml)创建一个子报告(report1_subreport3.jrxml)。主报表详细信息带包含静态文本(“主报表”),子报表元素和子报表在其相应的详细信息带中包含静态文本(“子报表”)
但单击主报表的预览选项卡仅显示静态文本“主报表”,而不显示子报表(“子报表”)的静态文本。
我还浏览了http://community . jasper soft . com/questions/524978/empty-subreport-XML-data source-ireport链接,但仍然面临这个问题。
以下是报告1.jrxml
<?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="report1" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="20036b98-ef64-4dea-8345-b89bcd8f2671">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="68"/>
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["D:\\soapReport\\jasperReport\\"]]></defaultValueExpression>
</parameter>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch"/>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<staticText>
<reportElement uuid="d49ee6bf-1a13-41bb-9feb-f0fb2ec414f2" x="71" y="28" width="100" height="20"/>
<textElement/>
<text><![CDATA[Main Report]]></text>
</staticText>
<subreport>
<reportElement uuid="364d3c38-a0a1-4fa5-b0bf-12b22314ac5e" x="311" y="14" width="200" height="100"/>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "report1_subreport3.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
<columnFooter>
<band height="45" splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
下面是report1_subreport3.jrxml
<?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="report1_subreport3" language="groovy" pageWidth="555" pageHeight="802" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="7ca2d973-972c-4c56-8d5e-503b32b4afc6">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch"/>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<staticText>
<reportElement uuid="5f488fe4-f9f7-4f12-9c1e-812661026bd7" x="222" y="50" width="100" height="20"/>
<textElement/>
<text><![CDATA[Sub Report]]></text>
</staticText>
</band>
</detail>
<columnFooter>
<band height="45" splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
提前感谢您的帮助。。。
感谢Gopi的改变,但它仍然在子报表的地方显示空白。以下是主要报告
<?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="report1" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="748f862c-3467-4c8c-89f6-04a571192482">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["D:/soapReport/jasperReport/"]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[]]>
</queryString>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch"/>
</columnHeader>
<detail>
<band height="71" splitType="Stretch">
<staticText>
<reportElement uuid="17f2cfc8-497a-4676-b83a-acf55bccac04" x="33" y="15" width="100" height="20"/>
<textElement/>
<text><![CDATA[Main Report]]></text>
</staticText>
</band>
</detail>
<columnFooter>
<band height="134" splitType="Stretch">
<subreport>
<reportElement uuid="40f53bea-c9eb-46a7-b4fc-3d592da3ef90" x="234" y="17" width="200" height="100"/>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA["D:/soapReport/jasperReport/report1_subreport1.jasper"]]></subreportExpression>
</subreport>
</band>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
下面是子报表
<?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="report1_subreport1" language="groovy" pageWidth="555" pageHeight="802" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="62bf7fb7-8145-4aa6-b963-c98eefac9862">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement uuid="9bf9eafc-c1e0-49fa-8bb8-ed6c496498da" x="213" y="20" width="100" height="20"/>
<textElement/>
<text><![CDATA[Sub Report]]></text>
</staticText>
</band>
</columnHeader>
</jasperReport>
如果我遗漏了什么,请帮助我...
任何对jasper reports studio 6.3.0不显示子报表有问题的人都应该尝试更改子报表中的参数名称,然后更新主报表子报表小部件“edit parameter”选项中的参数连接,以匹配新的参数名称。也可以避免下划线,即“USER_ID”。
以上问题通过使用我在主报告中包含的以下标签得到解决。我们需要使用空数据源(newnet.sf.jasperreports.engine.JREmptyDataSource())
子报告.jrxml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.3.1.final using JasperReports Library version 6.3.1 -->
<!-- 2016-12-15T10:33:58 -->
<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="HYPERLINKS_SUBREPORT" pageWidth="595" pageHeight="842" columnWidth="595" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="ad9606b1-969d-4340-a7eb-61dc30ec8f0d">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
<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"/>
<queryString>
<![CDATA[]]>
</queryString>
<detail>
<band height="82" splitType="Stretch">
<staticText>
<reportElement x="16" y="47" width="100" height="30" uuid="866e60e7-16a0-4fea-b56f-ca4143e98fec"/>
<text><![CDATA[Testing text]]></text>
</staticText>
</band>
</detail>
main_report.jrxml的XML
<subreport>
<reportElement positionType="Float" x="0" y="220" width="200" height="60" uuid="62463158-73b1-4089-b66c-633d3a987649"/>
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.JREmptyDataSource()]]></dataSourceExpression>
<subreportExpression><![CDATA["SUBREPORT.jasper"]]></subreportExpression>
</subreport>
使用Jaspersoft Studio也可以实现这一点。
将您的子报表字段放在除详细信息带之外的任何其他带中,并将whenNoDataType="AllSectionsNoDevail"
添加到您的xml文件中。
将其添加到中的其他报表属性中。
<?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="report1" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="12"/>
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["/home/qualian/Desktop/gopi/prjreport/"]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[]]>
</queryString>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="61" splitType="Stretch"/>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<subreport>
<reportElement x="33" y="56" width="208" height="36"/>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR}+"report3_subreport1.jasper"]]></subreportExpression>
</subreport>
<staticText>
<reportElement x="33" y="15" width="100" height="20"/>
<textElement/>
<text><![CDATA[Main Report]]></text>
</staticText>
</band>
</detail>
<columnFooter>
<band height="45" splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
子报告:
<?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="report1_subreport3" language="groovy" pageWidth="555" pageHeight="802" whenNoDataType="AllSectionsNoDetail" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="40" splitType="Stretch">
<staticText>
<reportElement x="107" y="12" width="100" height="20"/>
<textElement/>
<text><![CDATA[Sub Report]]></text>
</staticText>
</band>
</columnHeader>
这就像一个魅力。希望这有帮助。
为什么我的子报表没有显示?看,JRXML代码非常简单。当我按下iReport中的查看按钮时,仅显示主报告。不显示这两个子报表。欢迎任何帮助。 report1_subreport1.jrxml:仅包含标题栏中的静态文本 report1.jrxml :包含一个静态文本和两个子报表,与之前定义的相同。
我想用subreport创建一个简单的Jasper报表,但我无法使其工作。 选择提供一个结果(数据库是Oracle),但是子报表在从生成的repport中不可见。但报告的结尾是一个全新的空页。 你能告诉我这个例子有什么问题吗?我尝试了很多东西(子报表中的默认值,当No Data=所有节时,子报表标题中的No detaily设置,以及很多东西,我不记得了),但没有任何帮助。
有时会出现以下错误: 需要对子报告进行哪些必要的更改以最小化相同? 有时,当数据溢出时,它不显示子报表,而是在< code>iReport中显示剩余的数据。 属性设置如下: 子报表属性: 子报表中的文本字段: 请建议一些东西..
嗯,我有一个主报告和一个子报告,在主报告中我有两个细节带。在第一个细节区,我放置了“主数据源”(来自fillReport),在第二个细节区,我放置了子报告(来自param的数据源)。 解决方案 经过大量的研究,我发现我对“主报告”和“子报告”的概念是错误的。当我们有一个“主报表”(与主数据源相关联)时,正确的做法是所有“子报表”都直接与此相关联。因此,我创建了3个子报告,并像“param”一样传递
试图制作一个简单的应用程序,从服务器获取JSON数据,并在自定义列表中显示它们,非常简单的事情。 但当我运行应用程序时,它显示的是白色空白屏幕,但没有数据。它也没有显示任何错误,我假设如果有任何错误,它不会在我的手机中运行。但不显示获取的数据。 下面是类 我发现的其他问题与我的问题不匹配,否则不会添加这个问题。
我在Jaspersoft Studio中使用JavaBeans生成基本报告(主/子报告)时遇到问题。 我创建了TestMainReport.jrxml和TestSubreport.jrxml. TestMainReport。jrxml包含两个静态文本字段,在标题栏中标记为“标题”,在摘要栏中标记为“摘要”。 TestSubreport。jrxml包含两个静态文本字段,标题中的“子报告标题”和摘要栏