Java軟件報(bào)表軟件技術(shù)博客

          java報(bào)表軟件技術(shù)匯總 java報(bào)表軟件制作 報(bào)表軟件新聞
          posts - 355, comments - 100, trackbacks - 0, articles - 3
             :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

          一. 橫表&縱表:

          數(shù)據(jù)庫表按照存儲的數(shù)據(jù)結(jié)構(gòu)不同區(qū)分為橫表與縱表,通過如下數(shù)據(jù)的存儲我們分別對橫表與縱表進(jìn)行簡單介紹:

          橫表:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb1.jpg

          縱表:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb2.jpg

          由圖1,2可以看出,若我們要將每種產(chǎn)品的信息羅列在報(bào)表中展示,使用橫表將會非常方便,直接將各字段拖進(jìn)設(shè)計(jì)器對應(yīng)標(biāo)題的單元格即可,字段間不需要考慮任何邏輯關(guān)(默認(rèn)有擴(kuò)展關(guān)系)如下圖:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb3.jpg

          預(yù)覽如下:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb4.jpg

          二. Java報(bào)表軟件FineReport實(shí)現(xiàn)縱表轉(zhuǎn)為橫表顯示:

          使用縱表時(shí),想達(dá)到如圖4的效果,也很簡單:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb5.jpg

          其中:

          單元格      列名        設(shè)置屬性

          A2      字段編號       默認(rèn)

          B1      名稱           設(shè)置為從左向右擴(kuò)展,其余默認(rèn)

          B2      屬性           不擴(kuò)展,其余默認(rèn)

          只需要設(shè)置名稱字段為橫向擴(kuò)展,邏輯關(guān)系使用默認(rèn)的,在展示數(shù)據(jù)時(shí),就會對應(yīng)選擇出字段編號為A2,名稱為B1的屬性值,如下圖所示:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb6.jpg

          便達(dá)到了數(shù)據(jù)庫表為縱表時(shí)轉(zhuǎn)變?yōu)闄M表顯示。

           

           

          三. 潤乾實(shí)現(xiàn)縱表轉(zhuǎn)為橫表顯示:

          潤乾報(bào)表在該問題有兩種解決方案:

          一.      參考潤乾官網(wǎng)--à知識庫中---à數(shù)據(jù)庫為縱表時(shí)轉(zhuǎn)為橫表展現(xiàn)的設(shè)計(jì)方法:

          定義了兩個(gè)數(shù)據(jù)集ds1,ds2,都取用數(shù)據(jù)庫中的那個(gè)縱表:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb7.jpg

          B2=ds1.dselect(字段編號)  //相當(dāng)于select distinct ……,取所有不重復(fù)的字段編號值,或者用=ds1.group(字段編號)用字段編號分組

          C1=ds1.dselect(名稱)    //取所有不重復(fù)的名稱

          C2=ds2.select(屬性,,ds2.字段編號==B2&&ds2.名稱==C1)   //用橫軸字段編號,縱軸名稱作為篩選條件,把唯一的屬性值取出來 。

          結(jié)果預(yù)覽如下:

          http://www.finereport.com/forumimages/zjkbwzbszbwhb8.jpg

          四. 總結(jié):

          由上可以看出,Java報(bào)表軟件FineReport與潤乾都可以使用簡單的交叉報(bào)表來實(shí)現(xiàn)數(shù)據(jù)庫表為縱表時(shí)轉(zhuǎn)變?yōu)闄M表來顯示:

          l  操作都很簡單,步驟也基本類似

          l  潤乾使用數(shù)據(jù)表字段時(shí)默認(rèn)為列表型,而Java報(bào)表軟件FineReport默認(rèn)為分組,后者更貼近用戶的需求,大部分用戶制作的是復(fù)雜的自由報(bào)表,所以通常需要合并相同項(xiàng)
          文章轉(zhuǎn)自:http://blog.vsharing.com/fanfanzheng/A1449895.html



          主站蜘蛛池模板: 灵武市| 沅江市| 扶绥县| 桃园市| 上虞市| 隆安县| 临高县| 岐山县| 扎鲁特旗| 且末县| 定襄县| 淅川县| 武城县| 定结县| 元江| 聂荣县| 保山市| 广水市| 宁陵县| 霍邱县| 晋州市| 文昌市| 毕节市| 德兴市| 梅河口市| 航空| 从化市| 晋中市| 西充县| 靖宇县| 上蔡县| 湘西| 宜黄县| 广南县| 巴楚县| 阳信县| 株洲市| 勐海县| 遵义市| 东莞市| 水富县|