我使用 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/