2009-03-30 7 views
0

Есть ли опрятный способ доступа к наборам данных отчета BIRT для добавления/изменения некоторых фильтров. Я знаю, что могу просто изменить файл XML (rptdesign), но я надеюсь на метод Java или что-то в этом роде. Кстати, я получаю доступ к нему через PHP-Java Bridge, потому что мой front-end находится на PHP.Динамические фильтры BIRT во время выполнения

ответ

0

Я не уверен, что вы имеете в виду под «фильтрами», но вы можете создавать отчеты BIR, которые принимают параметры отчета, которые вы можете передать. , например. передать имя пользователя (xxx), чтобы показать отчет с запросом, настроенным на указанного пользователя (так же, как пользователь SQL WHERE == xxx)

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); 
Смежные вопросы