我有几个 Birt 报告,我正在尝试设置它们以在每天早上通过电子邮件发送报告的 pdf 的 cron 作业上运行。就生成和电子邮件而言,一切正常;我唯一遇到的问题是:如果没有要报告的内容,则会生成仅包含报告标题的 pdf 并通过电子邮件发送(基本上是空白报告)。我想完全停止生成此报告,因此如果 pdf 文件不存在,我可以跳过电子邮件。
我已经在谷歌上呆了两天了,我能找到的最接近的是:http: //www.eclipse.org/forums/index.php/t/458779/其中有人试图解决类似的问题并收到了朝着正确方向的推动,但不是一个完整的解决方案。
似乎这可以在beforerender
脚本期间完成......但是如何?我知道我需要:
oncreate
如果确实有要报告的数据,请在其中设置一个持久性全局变量。获取
beforerender
脚本中的持久全局变量。发送魔法
don't generate report
命令。
我正在从 php 脚本而不是 Java 生成和发送电子邮件,所以我不能发送类似的命令 IEngineTask.cancel()
(或者我可以吗???)
是的,我知道我可以在报告中写下“没有要报告的数据”,但这不是我的用户想要的。
是的,我可以在报告之外查询数据库以确定是否有有效数据要报告,但我不希望这样做。
也许我什至可以打开并阅读pdf,以编程方式查看是否有任何内容,但这听起来比它的价值更麻烦......
那么,我该怎么做呢?
谢谢。