简单多源报表
目錄:
- 1. 描述
- 2. 示例
- 3. 多數據源報表優勢
1. 描述編輯
多數據源,就是在同一張報表當中,顯示的數據來自于多個不同的表或不同的庫。 如下圖一張簡單的多數據源報表,左側藍色部分來自于銷量表,右側黃色部分來自銷售總額表,即數據來自于兩張不同的數據庫表:
2. 示例編輯
2.1?打開單個數據源報表 打開報表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\CrossReport\交叉報表—數據橫向擴展.cpt。 2.2 新增數據源 再新增一個數據集ds2,其SQL語句為SELECT * FROM 銷售總額。ds2數據集與ds1數據集都有一個銷售員字段。 2.3?綁定數據列 如下圖,將ds2中銷售總額數據列拖拽到單元格中,并設置父格為銷售員所在單元格,使銷售總額跟隨銷售員而擴展:2.4?設置過濾 此時設計器預覽,效果如下: 可以看到,擴展出來的每一個銷售員下,都重復顯示銷售總額字段的所有數據。 雖然銷售總額的父格為銷售員數據列,由于他們來自于不同的數據集,因此銷售總額不會將父格銷售員作為條件進行篩選,即不存在附屬關系。 我們需要銷售總額與銷售員一一對應,就需要設置過濾條件,將這兩個數據集的數據通過銷售員關聯起來。 選中銷售總額所在單元格,雙擊單元格,選擇過濾標簽,添加過濾條件:銷售員 等于 'C4',取出與C4單元格中銷售員匹配的數據,如下圖:
2.5?保存并預覽 保存模板,預覽報表,即可看到如上的效果。模板效果在線查看請點擊簡單多源報表.cpt 已完成的模板,可參見%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Multidatasource\簡單多源報表.cpt
3. 多數據源報表優勢編輯
多數據源報表傳統的做法,是通過拼SQL將多源整合為單源。如上例中將銷量表與銷售總額表整合起來:SELECT * FROM 銷量,銷售總額 WHERE 銷量.銷售員 = 銷售總額.銷售員。若數據庫表比較復雜,且使用的表個數不止2張而是更多時,可以想象,最終的SQL查詢語句將會非常復雜。 FineReport天然支持多數據源的報表,一張報表中可以添加任意多個數據集,每個數據集使用最簡單的SQL語句查詢出需要的表數據,在報表中只需要使用過濾就可以將來自不同表的數據相互關聯起來。使得多數據源報表制作更加簡單。 多源報表在線視頻請查看【多源報表】總結
- 上一篇: ABAP取域的固定值
- 下一篇: 复杂多源报表