8

我有一个包含数据集的报告。每当数据集中的查询返回 0 条记录(空数据集)时,我都想打印 No Data Band。

我已将“无数据时”设置为“无数据部分”。但这似乎不起作用。

有什么建议么?

4

3 回答 3

12

为了在数据集中的查询返回 0 条记录(空数据集)时打印无数据带,请执行以下步骤:-

  1. 转到报告检查器并在报告中添加无数据
  2. 放置静态文本,例如No Data Found
  3. 右键单击报表以打开报表属性部分
  4. 无数据时属性设置为无数据部分

每当查询返回 0 记录时添加无数据带后,“无数据”带将显示静态文本。

于 2013-12-18T04:52:43.937 回答
1

对于像我这样不使用 JasperSoft 或更旧的 iReport 并直接使用 XML 的人,请执行以下操作:

<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"
              whenNoDataType="NoDataSection"
              name="freport" pageWidth="595" pageHeight="842" 
              columnWidth="555" leftMargin="20" rightMargin="20"
              topMargin="20" bottomMargin="20">

添加whenNoDataType="NoDataSection"<jasperReport>元素。

<noData>
    <band height="15">
        <staticText>
            <reportElement x="0" y="0" width="200" height="15"/>
            <box>
                <bottomPen lineWidth="1.0" lineColor="#CCCCCC"/>
            </box>
            <textElement />
            <text><![CDATA[The report has no data]]> </text>
        </staticText>
    </band>
</noData>

<noData>在详细信息带下方添加元素。

于 2017-03-27T13:25:59.080 回答
0

当我尝试了@Sharad 提出的解决方案时,我找到了另一种方法,在我的方法中不需要添加No Data带:

  1. 右键单击报表以打开报表属性部分
  2. 将无数据时属性设置为所有部分,无详细信息

最终结果将是相同的报告,没有详细信息。就我而言,它完美地满足了我的需求。

PS:我用的是 iReport 4.0.2

于 2018-04-01T08:52:34.567 回答