反饋已提交
網絡繁忙
使用超連結傳參查看子範本相關內容時,如果子範本沒有對應的資料,則主範本直接彈出提示對話框,不跳轉到子範本頁面。如下圖所示:
獲取主範本中需要傳給子範本的參數,然後 JS 中呼叫參數執行子範本的 SQL 查詢,如果傳回空值,彈出對話框且不跳轉,否則跳轉到子範本頁面。
1)建立普通報表,建立資料集 ds1 ,SQL 語句為:SELECT * FROM Sales
2)如下圖設計表格,將資料集中欄位拖到對應儲存格中。
3)雙擊 A2 儲存格,新增一個過濾條件,讓 ID 列等於參數$P,點選增加按鈕。這裏相當於給這個子範本設定了一個參數,超連結傳參會用到。
4)儲存範本,將範本重命名為:超連結前判斷子表.cpt,並分頁預覽下,記下預覽時的 URL 。
1)建立內建資料集 ds1 ,表設計如下圖所示,為了營造差異,這個內建資料集比上面子表那個資料集多了一個 ID ,也就是 ID 為 6 的這行資料。
這樣預覽時,點選 6 這個 ID 後,因為查不到資料,所以會彈出對話框。
2)如下圖設計表格,將資料集中欄位拖到對應儲存格。
開啟主範本,選中 A2 儲存格,新增一個 JavaScript 型別的超連結,設定參數P,其值為公式=$$$,下方輸入 JS 代碼,如下圖所示:
JavaScript 代碼如下:
var sql = "SQL(\"FRDemo\",\"Select ID from sales where ID='"+P+"'\",1)";var value=FR.remoteEvaluate(sql);if(value.length!=0){window.location.href='http://localhost:8075/webroot/decision/view/report?viewlet=doc/SpecialSubject/HyplinkReport/超連結前判斷子表.cpt&P='+P; }else{ FR.Msg.alert('警告','資料為空,無法跳轉'); }
注:代碼裏面有個子範本路徑,那個就是子範本的預覽 URL ,在設計子範本時已經提到了。
需要關閉安全防護中的「腳本呼叫公式限制」按鈕。如下圖所示:
儲存主範本,分頁預覽後,效果如 1.1應用場景 中所示。
不支援 App 端和 HTML5 端預覽。
已完成範本參見:
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超連結前判斷主表.cpt
%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超連結前判斷子表.cpt
點選下載範本:
超链前判断主表.cpt
超链前判断子表.cpt
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉