Jasper reports 如何拉伸jasperreports子报表以适应父级高度
是否可以使用jasperrepors textfiled实现类似rowSpan的功能 我有两个报告:主报告和子报告 在主要细节栏中,我有文本字段和子报告:Jasper reports 如何拉伸jasperreports子报表以适应父级高度,jasper-reports,subreport,stretch,Jasper Reports,Subreport,Stretch,是否可以使用jasperrepors textfiled实现类似rowSpan的功能 我有两个报告:主报告和子报告 在主要细节栏中,我有文本字段和子报告: <band height="15" splitType="Stretch"> <property name="com.jaspersoft.studio.unit.height" value="pixel"/> <textField isStretchWithOverflow="true" isBlankWhen
<band height="15" splitType="Stretch">
<property name="com.jaspersoft.studio.unit.height" value="pixel"/>
<textField isStretchWithOverflow="true" isBlankWhenNull="true">
<reportElement style="cell" stretchType="RelativeToBandHeight"
x="20" y="0" width="200" height="15"
isPrintWhenDetailOverflows="true"/>
<textElement textAlignment="Center" verticalAlignment="Middle">
<font fontName="DejaVu Sans" size="7" isBold="true"/>
<paragraph leftIndent="1" rightIndent="1" spacingBefore="1"
spacingAfter="1"/>
</textElement>
<textFieldExpression><![CDATA[$F{org_name}]]></textFieldExpression>
</textField>
<subreport>
<reportElement stretchType="RelativeToTallestObject" x="220" y="0"
width="582" height="15" isPrintWhenDetailOverflows="true">
<property name="com.jaspersoft.studio.unit.width" value="pixel"/>
</reportElement>
<subreportParameter name="SUBREPORT_DIR">
<subreportParameterExpression>
<![CDATA[$P{SUBREPORT_DIR}]]>
</subreportParameterExpression>
</subreportParameter>
<dataSourceExpression><![CDATA[$F{EDU_LEVEL_DATASOURCE}]]></dataSourceExpression>
<subreportExpression>
<![CDATA[$P{SUBREPORT_DIR}
+ "/reports/scholarship_fund_analysis/sub_education_level.jasper"]]>
</subreportExpression>
</subreport>
子报表的详细信息栏中有一个文本字段
其目的是在主报表中为组织名称textField实现类似rowSpan的功能。当子报表包含大量内容时,它可以正常工作
当组织名称太长,并且子报表的行数很少时,就会出现问题。组织名称文本字段的高度大于子报表的总高度。在主报表的下一行之前,子报表下有空白
结果报告如下所示:
Idea:将包含第一列文本的参数从报表传递到子报表。
在子报表中,以字体颜色FFFFFF白色在背景栏中显示此参数
怎么做
我的报告结构:
第一列在主报告$F{daysLabel}中。子报表中的第二列和第三列
在主报告中创建参数选择子报告1,然后编辑参数2,如下所示
我的声誉不足10分,我可能不会放更多的图片链接,所以没有更多的图片
在打开的窗口中输入参数名,比如toto,然后在expression下输入保存列值的变量,在我的例子中是$F{daysLabel}
在子报表中,您创建了一个参数,该参数的名称与刚才在主报表toto中创建的参数的名称相同,并将其显示在背景栏中。将拉伸溢出条件设置为true。在我的例子中,这是可以的,因为第一列的宽度完全适合我的子报表。也许在你的情况下,你可能需要做一个特殊的调整
将颜色字体设置为白色,您将看到子报表的长度与主报表的第一列一样大。
对于子报表中单元格的边框,请将底部画笔设置为0:
Idea:将包含第一列文本的参数从报表传递到子报表。
在子报表中,以字体颜色FFFFFF白色在背景栏中显示此参数
怎么做
我的报告结构:
第一列在主报告$F{daysLabel}中。子报表中的第二列和第三列
在主报告中创建参数选择子报告1,然后编辑参数2,如下所示
我的声誉不足10分,我可能不会放更多的图片链接,所以没有更多的图片
在打开的窗口中输入参数名,比如toto,然后在expression下输入保存列值的变量,在我的例子中是$F{daysLabel}
在子报表中,您创建了一个参数,该参数的名称与刚才在主报表toto中创建的参数的名称相同,并将其显示在背景栏中。将拉伸溢出条件设置为true。在我的例子中,这是可以的,因为第一列的宽度完全适合我的子报表。也许在你的情况下,你可能需要做一个特殊的调整
将颜色字体设置为白色,您将看到子报表的长度与主报表的第一列一样大。
对于子报表中单元格的边框,请将底部画笔设置为0:
可能的重复项&可能的重复项&