2011-11-02 8 views
6

làm cách nào để tạo báo cáo sẽ lặp qua phần danh sách mảng trong phần chi tiết được chuyển thành tham số trong báo cáo Jasper?Báo cáo Jasper lặp lại qua danh sách mảng

Điều đó có thể thực hiện được không? Tôi tìm kiếm và tôi tìm thấy soloution rằng bạn phải thêm ArrayList làm nguồn dữ liệu. Làm thế nào để làm điều đó?

Trân

+0

cách gì làm bạn thích để đạt được kết quả: iReport sử dụng hoặc viết mã bằng API (JasperReports hoặc DynamicReports)? –

+0

có thể trùng lặp: http://stackoverflow.com/questions/3624562/how-to-pass-arraylist-to-jasper-reports –

+0

xem thêm: http://www.coderanch.com/t/512677/open-source/passing-collection-as-datasource-jasper –

Trả lời

4

Bạn có thể tạo một subreport một vượt qua ArrayList như DataSourceExpression:

 <subreport> 
      ... 
      <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{arrayList})]]></dataSourceExpression> 
      <subreportExpression><![CDATA["subreport.jasper"]]></subreportExpression> 
     </subreport> 

Javadoc:

http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/data/JRBeanCollectionDataSource.html

+0

Tnx để trả lời! – Sobis