是否有一种简洁的方法来访问BIRT报告的数据集以添加/修改某些过滤器。我知道我可以更改XML(rptdesign)文件,但我希望有一个java方法或其他东西。顺便说一句,我将通过PHP-Java Bridge访问它,因为我的前端是在PHP上。
答案 0 :(得分:1)
好的,我只是不希望这个没有答案。
解决方案是访问设计元素,然后访问数据集,然后从那里添加过滤条件。
$report = $birtReportEngine->openReportDesign("${here}/myreport.rptdesign");
$filter = new java("org.eclipse.birt.report.model.api.elements.structures.FilterCondition"); // create a new filter condition object
$filter->setExpr("row['id']");
$filter->setOperator("in");
$filter->setValue1('["32","679","333","233"]');
$report->getDesignHandle()->findDataSet("Employees")->addFilter($filter);
答案 1 :(得分:0)
我不确定你对“过滤器”的意思,但是你可以创建BIR报告来获取你可以传递的报告参数。 例如传递用户(xxx)名称以显示具有针对指定用户定制的查询的报告(也称为SQL WHERE user == xxx)