我有以下问题:在我的主报告中,在详细信息部分,我有三个子报告。我将它们的位置类型设置为浮动,并将伸展类型设置为相对于波段高度,但结果不是预期的。报告长达500页,只是打印了第一个子报告的内容。可能出了什么问题?
<?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="Relatorio_Ivan_Master" language="groovy" 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="96"/>
<parameter name="ID_FUNCIONARIO" class="java.lang.Integer">
<defaultValueExpression><![CDATA[1]]></defaultValueExpression>
</parameter>
<parameter name="DTA_INICIO" class="java.util.Date"/>
<parameter name="DTA_TERMINO" class="java.util.Date"/>
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["/Users/marcosnatanpacheco/Desktop/"]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[SELECT idt_funcionario, nme_funcionario, dta_alocacao_local, dta_alocacao_recurso, dta_alocacao_servico FROM tb_funcionario AS t1
INNER JOIN ta_alocacao_local AS t2 ON t2.cod_funcionario = t1.idt_funcionario
INNER JOIN ta_alocacao_recurso AS t3 ON t3.cod_funcionario = t1.idt_funcionario
INNER JOIN ta_alocacao_servico AS t4 ON t4.cod_funcionario = t1.idt_funcionario
WHERE idt_funcionario = $P{ID_FUNCIONARIO};]]>
</queryString>
<field name="idt_funcionario" class="java.lang.Integer"/>
<field name="nme_funcionario" class="java.lang.String"/>
<field name="dta_alocacao_local" class="java.sql.Timestamp"/>
<field name="dta_alocacao_recurso" class="java.sql.Timestamp"/>
<field name="dta_alocacao_servico" class="java.sql.Timestamp"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch"/>
</title>
<pageHeader>
<band height="35" splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="37" splitType="Stretch">
<staticText>
<reportElement x="0" y="12" width="100" height="20"/>
<textElement>
<font size="14" isBold="true"/>
</textElement>
<text><![CDATA[Funcionário:]]></text>
</staticText>
<textField>
<reportElement x="100" y="12" width="440" height="20"/>
<textElement>
<font size="14"/>
</textElement>
<textFieldExpression><![CDATA[$F{nme_funcionario}]]></textFieldExpression>
</textField>
</band>
</columnHeader>
<detail>
<band height="312" splitType="Stretch">
<subreport>
<reportElement positionType="Float" stretchType="RelativeToBandHeight" x="0" y="0" width="555" height="100"/>
<subreportParameter name="ID_FUNCIONARIO">
<subreportParameterExpression><![CDATA[$P{ID_FUNCIONARIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_INICIO">
<subreportParameterExpression><![CDATA[$P{DTA_INICIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_TERMINO">
<subreportParameterExpression><![CDATA[$P{DTA_TERMINO}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "Relatorio_Ivan_Detail_Local.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="Float" stretchType="RelativeToBandHeight" x="0" y="104" width="555" height="100"/>
<subreportParameter name="ID_FUNCIONARIO">
<subreportParameterExpression><![CDATA[$P{ID_FUNCIONARIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_INICIO">
<subreportParameterExpression><![CDATA[$P{DTA_INICIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_TERMINO">
<subreportParameterExpression><![CDATA[$P{DTA_TERMINO}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "Relatorio_Ivan_Detail_Recurso.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement positionType="Float" stretchType="RelativeToBandHeight" x="0" y="209" width="555" height="100"/>
<subreportParameter name="ID_FUNCIONARIO">
<subreportParameterExpression><![CDATA[$P{ID_FUNCIONARIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_INICIO">
<subreportParameterExpression><![CDATA[$P{DTA_INICIO}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="DTA_TERMINO">
<subreportParameterExpression><![CDATA[$P{DTA_TERMINO}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "Relatorio_Ivan_Detail_Servico.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
<pageFooter>
<band height="54" splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
我已经找到解决办法了。我创建了3个细节带,并把每个细节带一个子报告!效果很好!
我可以为我的Java项目的一个报告提供多个子报告吗? 我有一个生成主报表的类,根据用户选择的报表,子报表将在主报表中生成。但是我在Java类上这样做,在iReport上我只放参数。因此,我只有一个主报表和许多子报表,这些报表将根据用户的选择而插入。这可能吗?
为什么我的子报表没有显示?看,JRXML代码非常简单。当我按下iReport中的查看按钮时,仅显示主报告。不显示这两个子报表。欢迎任何帮助。 report1_subreport1.jrxml:仅包含标题栏中的静态文本 report1.jrxml :包含一个静态文本和两个子报表,与之前定义的相同。
子报告有两个细节带,第一个是“标题”,第二个是另一个子报告。这些乐队在两页纸上彼此分开。 我尝试了许多属性,但没有结果,如“忽略分页”和“允许拆分” 我的问题是:如何强制ireport不将子报表拆分到两页上?
我在主报告中使用了100多个子报告和一些细节带
我正在使用 iReport 4.0.2 创建一个包含一个子报表的主报表。我尝试在子报表的页眉带和页脚带中添加一些静态文本,我希望页眉带和页脚带中的文本将重复,但如果子报表本身有多个页面,则这些文本仅显示在子报表的第一页(但不显示在其余页面上)。 实际上,我想做的是在子报表中放置一个“第 x 页,共 n 页”变量,以便子报表可以有自己的一组页码。 这是我当前报告的布局:(对不起,我没有权限在这里上传