我使用 iReport 工具设计了一份报告并将其上传到 JasperReports Server 到我的本地服务器电脑。在 iReport 和 JasperReports Server 中,报告工作正常,但是当我从 Yii 1 调用报告时,它不起作用。
它返回空白页而不是数据。我无法找出问题所在。

这是我的 yii 1 代码(在 Yii 中使用 YiiJasper 扩展):

       $re = new JasperReport('/entsol/Reports/AcAccounts',
            JasperReport::FORMAT_PDF, array(
                'pAccountTile' => $pAccountTile,
                'pBranch' => $pBranch,
                'pFromDate' => $pFromDate,
                'pToDate'=>$pToDate,
            )
            );
        $re->exec();
        echo $re->reportToPDF(); //All pages

通过使用上面的代码,我得到了空白页而不是数据。

我如何得到我的问题?

最佳答案

要使用 yii-jasper extension,您需要 JasperServer = 5.4.9 和 Yii >= 1.14

确保具有所有报告参数:(报告和 Yii 调用)中的相同数字、正确/相同顺序、正确值。对于值,请注意 IReports( Integer, BigInteger, Character, String, Date 等)中的 Java datatypes 及其与 PHP 值的等效性。此外,参数名称必须在两者上相同(确切名称,大写和小写)。

JasperServer 日志文件可以为您提供有关运行报告的现有问题的一些反馈。在 JasperServer 安装目录 ( /your-jasperserver-install-path/apache-tomcat/webapps/jasperserver/WEB-INF/logs ) 中找到它。

如果仍然存在,请尝试直接在 jasperserver 中创建数据源,然后使用选项“data source from repository”而不是任何其他类型的数据源再次上传报告。要在存储库中创建数据源,请登录 JasperServer,找到 Data sources 文件夹,右键单击并创建数据源。

关于php - JasperServer 报告在 Yii 1 中返回空白页,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36116311/

10-16 21:17