2010-12-30 53 views
7

Tôi đang cố tạo báo cáo chứa bảng. Đây là những phần quan trọng từ jrxml:Thành phần bảng Jasper

<jasperReport 
    <subDataset name="Table Dataset 1"> 
     <field name="field1" class="java.lang.String"/> 
    </subDataset> 
    <summary> 
     <jr:table> 
      <datasetRun subDataset="Table Dataset 1"> 
      <dataSourceExpression> 
         <![CDATA[$P{REPORT_DATA_SOURCE}]]> 
       </dataSourceExpression> 
      </datasetRun> 
      <jr:column width="90"> 
       <jr:columnHeader>...</jr:columnHeader> 
       <jr:detailCell height="20"> 
       <textField> 
       <textFieldExpression class="java.lang.String"> 
          <![CDATA[$F{territory}]]> 
         </textFieldExpression> 
       </textField> 
      </jr:detailCell> 
      </jr:column> 
     <jr:table> 
    </summary> 
</jasperReport> 

Các loại nguồn dữ liệu tôi đi qua để báo cáo là một JRBeanArrayDataSource, mà có vẻ là ok, vì dữ liệu xuất hiện trong báo cáo (nếu tôi đang sử dụng $ F {field1} trong tổng thể - bên ngoài bảng).

Bạn có thấy điều gì sai trong cách tôi đang sử dụng thành phần bảng không? Tôi không thấy bất kỳ lỗi nào ... nhưng bảng không được hiển thị ... chỉ có một đường ngang thay vì bảng.

+0

Không rõ nguồn dữ liệu nào, BeanArray giống với REPORT_DATA_SOURCE? – medopal

Trả lời

6

tôi đã cùng một vấn đề và tìm ra giải pháp ở đây https://web.archive.org/web/20111130110022/http://thilosdevblog.wordpress.com/2011/03/27/beans-in-jasperreports4/

nguồn dữ liệu bảng phải là như thế này:

<datasetRun subDataset="TableDataset"> 
    <datasetParameter name="REPORT_DATA_SOURCE"> 
     <datasetParameterExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></datasetParameterExpression> 
    </datasetParameter> 
</datasetRun> 

Wonder tại sao loại này như thế nào những thứ không nằm trong jasper/iReport FAQ !

+0

Tôi đã không có cơ hội để kiểm tra giải pháp của bạn, nhưng điều này làm việc cho tôi: 1) Bọc JRBeanArrayDataSource vào một JRMapArrayDataSource 2) Tôi dereferenced nó như là một lĩnh vực: 3) Được sử dụng như sau: . Giải pháp của bạn cảm thấy đúng so với điều này, nhưng tiếc là tôi không thể xác nhận giải pháp đó để làm việc trong trường hợp cụ thể của tôi. Tôi mô tả cách giải quyết của tôi như là phương sách cuối cùng cho bất kỳ ai gặp khó khăn về vấn đề này. – teo

Các vấn đề liên quan