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

下拉框和圖表聯動

1. 概述

1.1 問題描述

某些填報場景下,希望下拉框選擇參數後,圖表可以跟随該參數聯動。

例如:下拉框選擇不同的銷售員後,圖表自動聯動出該銷售員的數據折線圖。效果如下圖所示:

222

1.2 實現思路

以超級鏈接中圖表聯動爲依據,通過下拉框編輯後事件控制單元格值,可以通過設置一個單元格的超鏈接來聯動圖表,再模拟點擊此超鏈接,即可實現聯動,

需要用到函數contentPane.setValue(),jQuery 中對象點擊事件,以及填報中動态設置值與獲取值的一個小技巧。

2. 示例

2.1 準備數據

1)新建普通報表,添加數據集 ds1,SQL 語句爲:select distinct 銷售員 from 銷量

1.png

2)添加數據集 ds2,SQL 語句爲:SELECT * FROM 銷量 where 銷售員='${銷售員}'

注:銷售員參數要設置一個默認值,否則在填報預覽時不會呈現出效果預覽的圖示,示例中設置銷售員默認值爲張珊。

2.png

2.2 設計表格

1)B1 單元格寫入文本信息銷售員,C1 單元格添加下拉框控件,合并一片單元格,插入折線圖,如下圖所示:

222

2.3 設置填報頁面

菜單欄選擇模板>模板 Web 屬性>填報頁面設置,勾選直接顯示控件,使填報預覽時直接顯示控件類型:

222

2.4 設置數據字典

選中 C1 單元格,右邊屬性面板選擇控件設置>屬性,下拉框數據字典的實際值顯示值都綁定爲銷售員,如下圖所示:

1591598556703390.png

2.5 添加編輯後事件

選中 C1 單元格,右邊屬性面板選擇控件設置>事件,添加編輯後事件,如下圖所示:

1591598754786887.png

JavaScript 代碼如下:

//将當前選擇的銷售員設置進D1單元格
contentPane.setCellValue('D1',null,this.getValue());
//點擊D1單元格中的超鏈接
$('td[id^=D1] .linkspan').click();

2.6 設計折線圖

1)選中折線圖所在 B3 單元格,如下圖綁定圖表數據:

222  

2)将折線圖的标題設置爲:銷量情況統計表。

222

2.7 設置聯動

1)選中 D1 單元格,添加一個聯動單元格類型的超級鏈接,設置聯動的單元格爲折線圖所在的 B3 單元格,新增一個參數銷售員,值爲 D1 單元格,如下圖所示:

1591599887669703.png

注:此處聯動的銷售員必須是單元格号,不能用公式=$$$,否則取不到用 JS 動态設置到此單元格的值。

2)爲了前端展示時隐藏 D1 單元格的值,選中 D1 單元格,右邊屬性面板選擇單元格屬性>形态,設置公式形态爲公式'',如下圖所示:

Snag_1e5cf590.png

2.8 效果預覽

保存模板,點擊填報預覽,效果如下:

222

注:不支持移動端。

3.模板下載

已完成模板參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\下拉框和圖表聯動.cpt

點擊下載模板:下拉框和圖表聯動.cpt

附件列表


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

文 檔回 饋

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

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

不再提示

9s後關閉

反饋已提交

網絡繁忙