當前為10.0版本文檔,更多實例內容將在最新幫助文檔中展現,點選跳轉至 最新版幫助文檔

JS使用填報頁面的控件查詢

1. 概述

1.1 預期效果

在設計報表的過程中,有部分需求需要使用填報控件來實現查詢的功能。如下圖所示,下拉框選擇地區後列表自動過濾顯示所選地區的數據。

222

1.2 實現方法

在參數界面添加「下拉框控件」并隐藏,在報表頁面添加同樣的「下拉框控件」,爲其添加編輯後事件将該控件的值賦值給參數界面的控件,并執行查詢。

2. 示例

2.1 新建報表

2.1.1 新建數據集

新建普通報表,新建數據集 ds1 ,SQL 語句爲:SELECT * FROM 銷量 where 1=1 ${if(len(area)==0,"","and 地區='" + area + "'")} 

如下圖所示:

1578559874457566.png

2.1.2 設計模板

将數據集的字段拖入單元格中,并在 C2 單元格添加一個選擇地區的下拉框控件,如下圖所示:

1578561941267217.png

2.1.3 設置控件屬性

1)選中單元格中添加的下拉框控件,點擊控件設置,設置下拉框控件名爲 area,設置控件數據字典爲銷量表中的地區字段,如下圖所示:

1578560980996882.png

2)選擇模板>模板 Web 屬性>填報頁面設置,取消勾選未提交離開提示,并勾選直接顯示控件,如下圖所示:

1578562160218322.png

2.2 設置參數界面

1)編輯參數界面,添加一個下拉框控件,控件名爲 area,設置控件不可見,如下圖所示:

1578561301933160.png

2)點擊參數界面空白處,取消勾選點擊查詢前不顯示報表内容,如下圖所示:

1578561462901400.png

3)選中參數面板後,将鼠标放到參數面板的下邊框,出現雙向箭頭,按住鼠标左鍵拖動至頂端,将參數面板的高度設置爲 0,隐藏參數面板。如下圖所示:

image.png

2.3 添加編輯後事件

選中填報控件,添加編輯後事件,輸入 JavaScript 代碼,如下圖所示:

1578561694472912.png

JavaScript 代碼如下:

/*獲取單元格C2選擇的地區控件的值*/
var area1=this.getValue();
/*獲取參數面板中的下拉框控件*/
var area2 = contentPane.parameterEl.getWidgetByName("area");
/*給參數面板中的下拉框控件賦值*/
area2.setValue(area1);
/*執行查詢*/
_g().parameterCommit();

2.4 預覽效果

2.4.1 PC端

保存模板,選擇填報預覽,PC 端預覽效果如1.1 預期效果所示。

2.4.2 移動端

App 及 HTML5 效果如下圖所示:

2020-12-01_11-29-15.gif

3. 模板下載

已完成的模板,可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填報預覽JS實例\33-JS使用填報頁面的控件查詢.cpt

點擊下載模板:33-JS使用填報頁面的控件查詢.cpt

附件列表


主題: 原簡體文檔
  • 有幫助
  • 沒幫助
  • 只是瀏覽

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

9s後關閉

反饋已提交

網絡繁忙