1

我在JasperReports 服务器上有一个自定义数据源,我需要在填充报告之前将一些参数传递给它。

我实现了一个ReportDataSourceService但我无法获得如何将参数传递给它,在我的应用程序中我需要传递两个日期来过滤值

import java.util.Map;

import net.sf.jasperreports.engine.JRParameter;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;

import com.jaspersoft.jasperserver.api.metadata.jasperreports.service.ReportDataSourceService;

public class ReportGeneratorService implements ReportDataSourceService {

   public void closeConnection() {
   }

   @SuppressWarnings({ "rawtypes", "unchecked" })
   public void setReportParameterValues(Map parameters) {
       System.out.println(parameters);
       parameters.put(JRParameter.REPORT_DATA_SOURCE, 
       new JRBeanCollectionDataSource(ReportGenerator.collectionGenerator()));
   }
}

我想将选定的日期传递给ReportGenerator.collectionGenerator()

如果无法将参数传递给自定义数据源,那么创建自己的查询执行器是否可行?

4

0 回答 0