Subreport子報表首先需要知道主子報表之間的關係,根據主表的ID作爲條件來查找出子表中與主表相關的信息,並顯示出來。
難點一:父報表往子報表傳送參數
難點二:父報表接受子報表(subreport)的返回值
下圖爲數據庫中的主表和字表:
新建一個父報表,如下圖所示:
在主報表下放置子報表,如圖所示:
子報表建立好後如下圖所示:
定父報表中的參數:
在父報表中傳參數:
在子報表中接收參數時,需要先在子報表中定義一個同名參數:
編輯子報表中的查詢條件:
在主報表中預覽的結果如下圖所示:
把子報表中聚合的值傳遞到父報表中,創建一個變量returnCnt,計算子報表中的人數總數:
變量returnCnt的屬性設置:
在子報表中放置returnCnt變量:
在主報表中預覽效果:
在主報表中添加一個跟子報表中同名的變量及屬性:
點擊主報表中的子報表,選擇返回參數:
添加完成後將returnCnt放置到主報表中,並設置它的Evaluation Time屬性爲Band,表示根據區域塊來生效該事件,如下圖所示:
預覽效果如圖所示:
這樣我們就實現了Subreport子報表。