反饋已提交
網絡繁忙
JS實現決策報表定時重新整理 文檔中,是重新整理的整個決策報表,但有的時候我們不想重新整理整個決策報表,而只想重新整理報表裡的報表塊。
那麼報表裡的報表塊如何實現局部重新整理以及傳參呢?
如下圖所示:
點選「跳轉到第2頁」按鈕,報表塊跳轉到第 2 頁,並且報表中透過公式 =$month正常獲取到了參數值。
透過 JS 獲取報表塊,再使用 gotoPage() 接口來實現局部重新整理和傳參。
_g().getWidgetByName("report0").gotoPage(pn, para, noCache)
參數
說明
pn
頁序號,序號從 1 開始
para
選填
跳轉報表塊頁面時攜帶的參數
noCache
1)不寫
說明:報表塊重新整理的資料從快取裡面取,不重新計算
範例:gotoPage(2,"{month:12, name:'FR'}")
2)true
說明:報表塊重新整理的資料不使用快取,重新計算所有報表塊
範例:gotoPage(2,"{month:12, name:'FR'}",true)
3)"lazy"
說明:報表塊重新整理的資料不使用快取,重新計算單個報表塊
範例:gotoPage(2,"{month:12, name:'FR'}","lazy")
注:若範本內容非常多,範本計算量大,不推薦使用true,會導致工程計算量激增。如需重新獲取資料,推薦使用"lazy"。
1)點選設計器左上角「檔案>建立決策報表」,建立空白範本。將 body 屬性中的佈局方式改為「絕對佈局」。
2)向 body 中拖入一個按鈕元件和一個報表塊。
雙擊報表塊,進入編輯介面,表格樣式設計如下:
1)表格中的資料可隨意輸入文本內容,本例中表達的是 1-12 月的月份,B5 儲存格插入公式 =$month,用於接收「按鈕元件」傳來的參數。
2)選擇 B4 和 B8 儲存格,點選「儲存格屬性>其他」,設定「列後分頁」。如下圖所示:
3)設定完成後點選左下方「表單」回到 body 介面。選中 report0 ,點選「屬性」,開啟「報表塊工具列」。如下圖所示:
選中 button0 按鈕,在屬性中將「按鈕名字」設定為「跳轉到第2頁」,再點選「事件」,新增一個「點擊」事件,輸入 JavaScript 代碼:
_g().getWidgetByName("report0").gotoPage(2, "{month:5}", true);//report0跳轉到第2頁,並將month等於5傳參給report0
保存範本,點選「PC端預覽」,效果如 1.1 節效果圖所示。
App 端和 HTML5 端均支援,效果如下圖所示:
點選下載範本:JS實現決策報表內報表塊翻頁.frm
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙