我想在cakephp中使用 JasperReports 。 cakephp和 JasperReports Server 之间的连接有效。它生成一个excel报告的标题。问题:我想在报告中传递数据循环,但我不能,因为我不知道如何将数据列表作为参数以及如何循环。
我不想使用SQL作为数据源,因为我在页面中有一个过滤器,根据我想要只导出页面中许多参数过滤的数据。
这是我用来创建报告的代码:
$c = new Jaspersoft\Client\Client(
"http://localhost:8080/jasperserver",
"jasperadmin",
"jasperadmin"
);
$info = $c->serverInfo();
$controls = array(
'Contract reference' => 'Contract Reference',
'Type' => __('Type'),
'Entity' => 'Subsidiary'
);
$report = $c->reportService()->runReport('/reports/Contrat_User', 'xlsx', null, null,$controls);
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename=contratexport.xlsx');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . strlen($report));
header('Content-Type: application/xml');
echo $report;