wuxiren123

          My Links

          Blog Stats

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          如何利用FineReport制作動態樹報表

          在對數據字段進行分類管理時,利用動態樹折疊數據是一個很好的方法,也就是點擊數據前面的加號才展開對應下面的數據,如下圖。那這樣的效果在制作報表時該如何實現呢? 下面以報表工具FineReport為例介紹。

          思路:

          通過將模版設置為組織樹報表,然后通過設置樹節點按鈕,最好通過數據分析預覽或者form表單預覽即可查看效果。

          步驟:

          1、  初步建立模板

           建立模板就相當于建立一個excel的sheet,只不過是cpt的形式。把相應的字段拖到單元格內。

          2、  增加樹節點按鈕

           通過設置樹節點按鈕來實現折疊樹,分別右擊單元格A1、A2、A3,選擇空間設置>按鈕,按鈕類型選擇“樹節點按鈕”,設置如下:

          1、  保存與預覽

          保存模板,點擊設計器中的數據分析,在網頁上的預覽效果即如上述所示。

          動態效果展示:

          用戶設置了折疊樹按鈕后,預覽報表時沒有動態樹效果,可能是預覽模式錯誤。

          我們是通過按鈕控件實現該功能的,而普通的分頁預覽是不會將控件顯示出來,如下圖所示:

          因此需要在op=view狀態即數據分析下才能預覽顯示出效果。

          折疊樹延伸

          需要在雙向折疊樹中顯示對應的圖表,以便查看,如下圖所示:

          具體步驟如下所示:

          1、建立雙向折疊樹:

          首先建立一個雙向折疊樹,雙向折疊樹需要注意折疊樹數據列不可位于同一行或者同意列

          2、設定節點點擊事件

          為了實現雙向折疊樹與圖標的交互,需要設置樹節點的點擊事件,通過點擊事件將樹節點的值作為參數傳遞給圖表。

          下面以效果圖中食品節點為例來說明控件點擊事件的設置。

          食品節點事件效果圖如下所示

          treenode_lb1()方法作用是傳參,內容是:

          function treenode_lb1(treenode, cv) {
              
          if (treenode.selected()) {
              
          if (!window.fr_lb1_param){
                    window.fr_lb1_param 
          = {};
                 }

                 window.fr_lb1_param[cv] 
          = cv;
              }
           else {
                window.fr_lb1_param[cv] 
          = null;
              }

              postParam();
          }

          demo.js中還有個方法是關聯tree.cpttree_chart.cpt兩個文檔,內容是:

          FR.doHyperlinkByPost('ReportServer?reportlet=demo/analytics/tree/tree_chart.cpt', {diqu:diqu_str,city:city_str,lb1:lb1_str,lb2:lb2_str,lx1:lx1_str,lx2:lx2_str},'iframe');
          }

          3、  圖表模板的引入

          圖表模板通過樹模板中的一個網頁框控件引入,屬性如下,關聯tree_chart.cpt


          上圖中,控件名為空,即默認是iframe,如果設置控件名,則必須與最后一個方法中的名字對應

          4、圖表模版的設置

          圖表模板中,需要設置根據樹節點傳參的條件設置。

          綜上可以看出,動態折疊樹的設計思路是點擊主格時,控制附屬于該組的子項內容展開與折疊,由此到達數據分析的效果。


          posted on 2016-08-24 12:03 喝水居然長肉 閱讀(187) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 安平县| 会泽县| 鄂伦春自治旗| 闽清县| 华池县| 贵港市| 喀什市| 巍山| 安化县| 安多县| 禄丰县| 吴堡县| 怀安县| 台湾省| 沙河市| 黔西| 齐齐哈尔市| 闸北区| 乡宁县| 新和县| 兰考县| 嫩江县| 宁夏| 井研县| 河池市| 行唐县| 上饶市| 罗城| 峡江县| 武威市| 瓮安县| 马鞍山市| 元谋县| 伊吾县| 本溪| 太仆寺旗| 当涂县| 敦化市| 夏津县| 诸城市| 大安市|