【问题标题】:Add combobox parameter to iReport's report将组合框参数添加到 iReport 的报告中
【发布时间】:2012-12-13 14:56:11
【问题描述】:

iReport 4.8.0中,我想让用户能够从组合框/列表/下拉/集合中选择一个参数值(无论您选择什么),并且他选择的值将被插入进入查询。

我已经创建了一个字符串参数,当我预览报表并将字符串插入到查询中时会提示。效果很好,但现在我需要定义一个组合框。

我需要提供城市名称,所以我的查询是:

SELECT
  COUNT(leads.`status`) AS Number_Of_Status,
  leads.`status` AS leads_status,
  leads.`primary_address_city` AS leads_primary_address_city,
  leads.id AS lead_id
FROM
      `leads` leads
 WHERE
      leads.`primary_address_city` = $P{city_combobox}
 GROUP BY
      leads.`status`

我尝试将city_combobox 参数设为java.util.List,但出现Parameter type not supported 错误,而且我也不知道将字符串加载到哪里。

我对 JasperReports Server 一无所知,我没有安装它,只安装了 iReport 并且知道我用它做了所有事情。 p>

所以我正在寻找一种仅在 iReport 中执行此操作的方法,而无需 JR Server 的输入控件。对我来说,只需为报表提供手动插入的值到组合框中就足够了,它甚至不必是查询。例如,将“NY”、“Miami”、“Washington”插入到列表参数中,但我应该如何以及在何处执行此操作?

【问题讨论】:

  • 这不是可以内置到 JasperReports/iReport 中的功能。如果您通过 JasperReports Server 部署报表,则在此处完成。如果您通过自己的应用程序部署它,则必须在应用程序中自己进行。我不使用 JasperReports Server,所以很遗憾,我无法为您提供有关在其中添加输入控件的任何说明。
  • @Rodniko iReport 只是一个用于创建报告模板的 GUI 设计器。它不是最终用户用于运行报告并以某些支持的格式获取结果的应用程序。您可以使用 JR 服务器 来部署和运行报告(以某种格式获取),或者您可以创建自己的应用程序,例如在 Java 上构建报告(通过设置报告的参数)
  • 谢谢,我想我必须安装 Jasperreport 服务器并学习它...我想避免这样做,因为文档太差了...但感谢您清除出去。我在 Ireport 中制作的其他报告,包括带有字符串参数的报告,在 zuckerreport 上效果很好。我现在只需要一份带有下拉菜单的报告...

标签: parameters jasper-reports ireport jasperserver


【解决方案1】:

我解决了这个问题。原来 zuckerreport 是基于 jasperreport 服务器的,因此也可以添加输入控件。

解决方案是将“city_combobox”参数创建为字符串参数并保持查询不变,就像我上面给出的示例一样。 IReport 就是这样。

在zuckerreport中,添加一个参数,其“默认参数名称”命名为city_combobox。

对于下拉参数,选择“用户定义的查询”类型的参数,并用一个查询填充“参数设置”和“用户定义的查询”字段,该查询将用值列表填充下拉列表,例如:

选择不同的 线索.primary_address_city AS 线索_primary_address_city 从 线索线索

如果你看不到“参数设置”和“用户定义的查询”字段(在新版本的zuckerreport中它们是隐藏的),那么

此代码需要在zuckerreport的editview代码中手动添加。 在 modules/zr2_ReportParameter/metadata/editviewdefs.php 中添加此代码:

5 => 大批 ( 0 => 'range_options', ),

现在重建,然后你会看到隐藏的字段。

使用菜单上的“jasperReports Template”新建一个模板,该模板实际上就是报表:

一个。为模板选择一个名称并选择报告的 jrxml 文件。 湾。选择 PDF、Excel 和 HTML。 C。保存

在报表和参数之间创建一个新的参数绑定: 一种。按“创建” 湾。参数名称必须是 IReport 中的确切参数名称。 C。选择报表和参数,无需选择“绑定到模块”

将报告的 .jasper 文件复制到 SugarCRM 中的 custom/zuckerreports2/resources 中。 转到“按需报告”,选择报告和应该显示的参数。

给你! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-20
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 2011-05-05
    • 1970-01-01
    相关资源
    最近更新 更多