【问题标题】:iReport is saying 'The document has no pages'iReport 说“文档没有页面”
【发布时间】:2017-11-08 13:45:22
【问题描述】:

我只是在写一个报告,我正在使用一个连接成功的数据库。我遇到的问题是,每当我尝试“预览”报告时,我都会收到消息"The document has no pages"。我知道这可能意味着我没有使用空数据库,但我有一个通过“测试”的当前数据库连接。

还有其他帖子提出了与此类似的问题,但我坚信这个问题是不同的,因为与我读过的其他帖子不同——他们试图使用 EmptyDatabases 来做例子等等——我实际上正在使用一个真正的服务器端数据库。

感谢您的帮助!

这是我的 SQL


SELECT
 WO."NUM" AS WO_NUM,
 WO."LOCATIONGROUPID" AS WO_LOCATIONGROUPID,
 WO."ID" AS WO_ID,
 UOM."ID" AS UOM_ID,
 UOM."CODE" AS UOM_CODE,
 PART."ID" AS PART_ID,
 PART."NUM" AS PART_NUM,
 PART."STDCOST" AS PART_STDCOST,
 PART."DESCRIPTION" AS PART_DESCRIPTION,
 PARTCOST."ID" AS PARTCOST_ID,
 PARTCOST."AVGCOST" AS PARTCOST_AVGCOST,
 UOMCONVERSION."ID" AS UOMCONVERSION_ID,
 UOMCONVERSION."DESCRIPTION" AS UOMCONVERSION_DESCRIPTION,
 UOMCONVERSION."FACTOR" AS UOMCONVERSION_FACTOR,
 UOMCONVERSION."FROMUOMID" AS UOMCONVERSION_FROMUOMID,
 UOMCONVERSION."MULTIPLY" AS UOMCONVERSION_MULTIPLY,
 UOMCONVERSION."TOUOMID" AS UOMCONVERSION_TOUOMID,
 COSTLAYER."ID" AS COSTLAYER_ID,
 COSTLAYER."ORGTOTALCOST" AS COSTLAYER_ORGTOTALCOST,
 COSTLAYER."PARTID" AS COSTLAYER_PARTID,
 LOCATIONGROUP."ID" AS LOCATIONGROUP_ID,
 LOCATIONGROUP."NAME" AS LOCATIONGROUP_NAME,
 SO."ID" AS SO_ID,
 SO."DATEISSUED" AS SO_DATEISSUED,
 SO."LOCATIONGROUPID" AS SO_LOCATIONGROUPID,
 SO."NUM" AS SO_NUM,
 SO."PRIORITYID" AS SO_PRIORITYID,
 SOITEM."ID" AS SOITEM_ID,
 SO."BILLTONAME" AS SO_BILLTONAME,
 PRODUCT."ID" AS PRODUCT_ID,
 PRODUCT."DESCRIPTION" AS PRODUCT_DESCRIPTION,
 SOITEM."PRODUCTNUM" AS SOITEM_PRODUCTNUM,
 WO."TYPEID" AS WO_TYPEID,
 WOITEM."ID" AS WOITEM_ID,
 WOITEM."TYPEID" AS WOITEM_TYPEID,
 COMPANY."ID" AS COMPANY_ID,
 COMPANY."NAME" AS COMPANY_NAME
FROM
 "UOM" UOM INNER JOIN "PART" PART ON UOM."ID" = PART."WEIGHTUOMID"
 AND UOM."ID" = PART."SIZEUOMID"
 AND UOM."ID" = PART."UOMID"
 INNER JOIN "PARTCOST" PARTCOST ON PART."ID" = PARTCOST."PARTID"
 INNER JOIN "COSTLAYER" COSTLAYER ON PART."ID" = COSTLAYER."PARTID"
 INNER JOIN "PRODUCT" PRODUCT ON PART."ID" = PRODUCT."PARTID"
 AND PRODUCT."ID" = PART."DEFAULTPRODUCTID"
 INNER JOIN "WOITEM" WOITEM ON PART."ID" = WOITEM."PARTID"
 AND UOM."ID" = WOITEM."UOMID"
 INNER JOIN "WO" WO ON WOITEM."WOID" = WO."ID"
 INNER JOIN "LOCATIONGROUP" LOCATIONGROUP ON WO."LOCATIONGROUPID" = LOCATIONGROUP."ID"
 INNER JOIN "SO" SO ON LOCATIONGROUP."ID" = SO."LOCATIONGROUPID"
 INNER JOIN "SOITEM" SOITEM ON SO."ID" = SOITEM."SOID"
 AND UOM."ID" = SOITEM."UOMID"
 AND PRODUCT."ID" = SOITEM."PRODUCTID"
 AND UOM."ID" = PRODUCT."WEIGHTUOMID"
 AND UOM."ID" = PRODUCT."SIZEUOMID"
 AND UOM."ID" = PRODUCT."UOMID"
 INNER JOIN "UOMCONVERSION" UOMCONVERSION ON UOM."ID" = UOMCONVERSION."TOUOMID"
 AND UOM."ID" = UOMCONVERSION."FROMUOMID",
 "COMPANY" COMPANY

【问题讨论】:

  • 当您在 iReport 之外执行查询时,它是否返回任何数据?如果是这样,您需要检查报告的结构。
  • @ThomCunningham 我使用 iReport 来构建查询连接,所以我不确定它是否返回数据,但它应该返回。编辑:这些表都以某种方式连接。
  • 您使用的是什么 DBMS?第一步是确保您尝试检索的数据存在。然后你需要确保你的查询是正确的。确保在 iReport 之外执行它。
  • 我正在使用带有预先存在的表的 Fishbowl。我的公司在那里有数据,还有很多其他的报告可以处理这些数据。已经有一个预先存在的 WorkOrderAllocation 报告,但我正在尝试制作一个自定义报告;我从头开始。我使用相同的表,我仍然得到错误。我以前编辑过报告并且一直很好,但现在无论出于何种原因 - 它给了我这个错误。

标签: mysql sql jasper-reports


【解决方案1】:

从错误中可以明显看出查询没有返回任何记录。

要打印报告,即使没有没有详细信息带的 NO DATA,请使用以下步骤。

来自报告检查员

  • 右键单击报告名称
  • 点击属性
  • 搜索 “当没有数据” 属性并从下拉列表中选择 “所有部分,无详细信息”

【讨论】:

    【解决方案2】:

    尝试从您的 DBMS 运行查询,看看它是否返回任何结果,因为似乎没有获取任何记录。您也可以更改属性以打印报告,即使详细信息带中没有数据,如mani Deep 所说。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多