非同步下拉樹使用要求及實際操作
問題:
引數模板中當資料量大時會出現下拉樹載入慢的情況,對此潤乾 5.0 提出了非同步下拉樹編輯風格針對這個情況進行最佳化。
最佳化原理:
使用非同步下拉樹,初始時只載入首層節點的資料,當展開某子節點時,再載入它的子節點資料,不展現的就不載入。
特別注意:產品提供的非同步下拉樹 對資料表結構要求很嚴格,不是任何一個資料表建立的資料集都可以直接用的
具體介紹:
以潤乾報表中的訂單表為例來說明,如果使用下拉樹編輯風格 那麼只需要指定的每層節點的取值 及除首層外的過濾表示式。
但是,如要使用非同步下拉樹需要滿足如下表結構: select 真實值欄位 , 顯示值欄位 from …
而訂單表中地區 城市都是一個獨立的欄位不符合上述表結構 如果要用非同步下拉樹最佳化 那就需要把地區 城市整理成一個欄位 每個值對應一個唯一的編碼 然後再增加一個 father 欄位 fathet 欄位中 地區對應值為空 城市 對應值為所在地區的編號
最終整理後的資料表結構圖如下:
為滿足此表結構可以選擇直接新建一個資料表,或者透過其他工具實現,比如潤乾的集算器
滿足如上需求後 報表引數模板關於非同步下拉樹部分設定如下:
註釋:
1. 首層節點 SQL select ID,NAME from YBXLS where FATHER is null order by ID –透過為空的 father 值 查出首層節點值
2. 子層節點 SQL select ID,NAME from YBXLS where FATHER =’$1’order by ID –$1 符號代表上層節點值
其他關於引數模板的設定可以參考潤乾自帶初級教程進行設定。
特別注意:非同步下拉樹的單元格不能使用自動換行屬性,否則會導致下拉屬性不可用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2671096/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PHP非同步操作原理及實現PHP非同步
- tornado原理介紹及非同步非阻塞實現方式非同步
- 使用Task實現非阻塞式的I/O操作
- 【安卓筆記】下拉重新整理元件的使用及實現安卓筆記元件
- 同步非同步,阻塞非阻塞非同步
- 非同步、同步、阻塞、非阻塞非同步
- 同步、非同步、阻塞、非阻塞非同步
- C#實現的下拉多選框,下拉多選樹,多級節點C#
- excel 避免下拉操作Excel
- PHP基於非遞迴演算法實現先序、中序及後序遍歷二叉樹操作示例PHP遞迴演算法二叉樹
- 使用GoldenGate 實現Oracle for Oracle 單向資料同步(實現表的DML操作同步)GoOracle
- 二叉排序樹BST及CRUD操作排序
- 同步非同步 與 阻塞非阻塞非同步
- 理解阻塞、非阻塞、同步、非同步非同步
- 同步、非同步,阻塞、非阻塞理解非同步
- 同步、非同步、阻塞與非阻塞非同步
- 同步、非同步、阻塞和非阻塞非同步
- Git操作及使用Git
- ulimit操作及使用MIT
- WPF實現樹形下拉選單框(TreeComboBox)
- python實現非平衡二叉樹Python二叉樹
- python中非同步非阻塞如何實現Python非同步
- [轉]阻塞/非阻塞與同步/非同步非同步
- 同步與非同步 阻塞與非阻塞非同步
- 二叉樹建立及遍歷演算法(遞迴及非遞迴)二叉樹演算法遞迴
- flink sql 實時同步及離線同步SQL
- java同步非阻塞IOJava
- 非同步和非阻塞非同步
- Java 樹結構實際應用 四(平衡二叉樹/AVL樹)Java二叉樹
- 同步、非同步、阻塞、非阻塞的區別非同步
- OpenStack入門之實際操作
- checkbox及css實現點選下拉選單CSS
- layui 下拉框搜尋及程式碼實現UI
- 使用promis序列化非同步操作非同步
- 給定陣列按要求生成樹陣列
- 徹底搞懂同步非同步與阻塞非阻塞非同步
- IO - 同步 非同步 阻塞 非阻塞的區別非同步
- 同步、非同步、阻塞、非阻塞的簡單理解非同步