【问题标题】:PHP variable passed to JasperReports Server for reports传递给 JasperReports 服务器的 PHP 变量用于报告
【发布时间】:2016-07-26 22:46:38
【问题描述】:

是否可以将变量从 php 传递到 JasperReports Server 中的报告?例如,在我的 php 应用程序中,我将 department_id 保存在会话变量中。我想将 department_id 传递给我在 JasperReports 服务器上运行的报告,并显示适合该部门的信息。在 iReport 中我有一个类似的查询:SELECT * FROM employees WHERE department_id = $P{dept_id_from_php},但我必须构建一个下拉选择列表来传递 dept_id 参数。

最终结果是我希望用户登录到我的 PHP 应用程序以查看与登录用户所属部门相关的员工信息。我不想使用查询字符串传递它,因为用户可以只更改查询字符串中的 id 并可以访问其他部门的信息。理想情况下,我只想传递该参数一次,然后在所有报告中重复使用它,就像全局变量一样。

这可能吗?

【问题讨论】:

  • 你好Ronedog,我和你的问题一模一样,你找到解决办法了吗?或有一些线索?提前谢谢。
  • 我希望...现在试试 OpenReports 看看它能做什么来帮助我
  • 我发现自己正在寻找完全相同的功能。我很好奇你最终是怎么解决的?
  • 查看这个问题以获得对该主题的反思:stackoverflow.com/questions/8795932/…

标签: jasper-reports jasperserver


【解决方案1】:

这里有一个很棒的(小)php SOAP 接口https://github.com/adlermedrado/PHP-JasperServer-Integration 用于此目的。它应该可以节省一些时间!

//example
//construct report object
$report    =    array("_REPORT_PARAMETER"=>$php_variable);

//valid output PDF, JRPRINT, HTML, XLS, XML, CSV and RTF
$jasper->run('/path/_Standard_Report','PDF',$report,false);

需要注意的是,我在 XLS 导出方面没有取得很大的成功,但其他格式似乎效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 2021-04-01
    相关资源
    最近更新 更多