1

对大量报告使用 4.5.0,每个报告都使用相同的数据字段 SVC_METH_NM。除非该字段是一个组,否则对数据字段 SVC_METH_NM 进行自动换行(使用 Stretch With Overflow)没有问题。当字段是组时,数据将被截断而不是包装。如果我将评估时间设置为现在,这会清除评估组,它会正确换行(但报告无法正确显示)。我尝试删除下面一行中的字段,并尝试使用 Position Type 和 Stretch Type 选项,但无济于事。

<group name="ServiceMethodName">
<groupExpression><![CDATA[$F{SVC_METH_NM}]]></groupExpression>
<groupHeader>
<band height="20">
<textField isStretchWithOverflow="true" evaluationTime="Group" evaluationGroup="ServiceMethodName">
<reportElement x="23" y="0" width="180" height="20" printWhenGroupChanges="ServiceMethodName"/>
<textElement>
<font isBold="true" isItalic="false"/></textElement>
<textFieldExpression><![CDATA[$F{SVC_METH_NM}]]></textFieldExpression>
</textField>

有没有其他人遇到过这个?

4

1 回答 1

3

我现在正在处理这个问题。你找到解决办法了吗?我希望避免它,但认为我必须尝试使用​​子报告解决问题。相当肯定我可以以这种方式适当地显示文本,但我觉得我不应该用子报表使事情过于复杂。

编辑:测试解决方案 - 在您的组标题中放置一个子报告。子报表的查询应该是“select * from dual”,因为您实际上将从主报表中传递所有数据。将字段作为参数传递给子报表,并完全按照您在组标题中的方式显示它们,但在详细信息带中进行。iReport 将处理文本的换行,因为它位于详细信息带中。确保在子报表上设置了“当详细信息溢出时打印”,并在您的子报表字段上设置了“溢出时拉伸”。

于 2013-11-19T00:51:07.677 回答