1. 概述
當填報透過子報表實現時,希望子報表填報成功後,資料能馬上在主報表中顯示出來,通常採用的方法是重新整理主報表,要如何設定才能實現子報表填報成功後重新整理主報表呢?
效果如下圖所示:
1.2 實現思路
在子範本中新增「填報成功」事件,事件內容為重新載入主範本。
2. 範例
2.1 準備範本
主範本:內建範本 %FR_HOME%\\webapps\webroot\WEB-INF\reportlets\doctw\SpecialSubject\HyplinkReport\Hyperlink5.cpt
子範本:內建範本%FR_HOME%\\webapps\webroot\WEB-INF\reportlets\doctw\SpecialSubject\HyplinkReport\Hyperlink6.cpt
或者直接點選此處下載範本:
主範本報表樣式如下圖所示:
子範本報表樣式如下圖所示:
範例主範本中 A1 儲存格已新增了超連結到子範本,使用者參考時超連結可按實際應用新增,注意超連結需傳遞填報預覽參數op=write給子範本,如下圖所示:
2.2 子範本新增事件
開啟子範本 Hyperlink6.cpt ,點選功能表列「範本>範本Web屬性」,選擇「填報頁面設定>為該範本單獨設定」,為子範本新增一個「填報成功」事件,如下圖所示:
JavaScript 代碼如下:
window.parent傳回的是父視窗物件,等同于在父視窗執行相關方法。比如想要給父窗口參數面板上的元件A賦值,則JS為window.parent._g().parameterEl.getWidgetByName("A").setValue()
如果希望重新整理父視窗時,保留參數面板所選的元件值,則需要使用以下JavaScript 代碼:
2.3 效果預覽
開啟主範本 Hyperlink5.cpt,點選「分頁預覽」,在主報表中點選訂單ID,在彈出的對話方塊子報表中修改資料,點選提交後,主報表即可自動重新整理,效果如 1.1 節所示。
注:不支援行動端。