反饋已提交

網絡繁忙

獲取鑽取地圖當前層級API

1. 概述

1.1 版本

報表伺服器版本

功能變動

11.0.2

新增:開放官方介面 chart.getLayerIndex() 、chart.getLayerNames()

1.2 預期效果

使用鑽取地圖時,希望地圖展示全國區域時不顯示明細資料,下鑽到第二層級省市時展示下鑽區域各市的明細資料。預期效果如下圖所示:

2023-09-30_17-13-01.gif

1.3 實現思路

通過圖表「特效>超連結」中的 JavaScript 進行傳參。用到的鑽取地圖介面如下:

  • chart.getLayerIndex()  // 獲取鑽取地圖當前鑽取層級,獲取的層級從0開始:0、1、2 ……

  • chart.getLayerNames()  // 獲取鑽取地圖當前鑽取層級名稱,返回結果為陣列,例如:["中國", "湖南省", "長沙市"]

注:FVS API可參考文檔 FVS圖表API 。本文範例效果在 FVS 中,可直接使用組件聯動事件實現,可參考文檔 地圖鑽取與聯動

2. 範例

2.1 準備資料

點擊設計器左上角「檔案>新建決策報表」,新建空白範本。

新建資料集 ds1,SQL 查詢語句為:SELECT * FROM 地圖1。如下圖所示:

2.2 設計範本

將 body 的佈局方式設定為「絕對佈局」,將鑽取地圖和報表塊分別拖入 body 並調整位置和大小。如下圖所示:

2.2.1 設定鑽取地圖

1)按兩下鑽取地圖,進入編輯狀態,選擇區域地圖,設定地圖邊界和 GIS圖層。如下圖所示:

2)地圖資料選擇「各層級分別指定」,第 1 層綁定 ds1 的 pid 欄位,即省份數據,第 2 層綁定 ds1 的省份欄位,即區市數據。如下圖所示:

2.2.2 設計報表塊

1)按兩下報表塊進入編輯介面,設計表格樣式如下圖所示:

2)按兩下 A2 儲存格,添加過濾條件,條件為 pid 欄位等於參數 $province,province 需手動輸入。這裡設定過濾是為了實現參數篩選效果,$province 的值由地圖傳參得來。

3)給 A1 和 A2 儲存格設定條件屬性,若 A2 值為空,則行高為 0,可實現沒有傳參時表格隱藏的效果。

同時選中 A1 和 A2 儲存格,點擊右側屬性面板「條件屬性>新增條件」,設定滿足公式條件 len(A2)=0 時,行高為 0。如下圖所示:

設定完成後,點擊左下角「表單」返回 body 介面。

2.3 設定超連結

按兩下鑽取地圖,點擊屬性面板「特效>交互屬性」。在鑽取地圖中設定超連結的地方有兩處,分別是「鑽取」和「超連結」。

  • 鑽取:針對鑽取地圖左上角的「鑽取目錄」設定超連結,點擊目錄時即可聯動;若不設定,則點擊目錄無聯動效果。

  • 超連結:針對地圖區域設定超連結,點擊地圖區域時即可聯動。

2.3.1 鑽取目錄處添加超連結

在「鑽取」處添加一個 JavaScript 超連結,輸入 JavaScript 代碼如下:

var chart = FR.Chart.WebUtils.getChart("chart0").getChartWithIndex(0);
var layer = chart.getLayerIndex();   //獲取鑽取層級

//如果當前鑽取層級是第一層,那麼將空參數province傳給報表塊
if (layer == 0) {
 var province = null;
 _g().getWidgetByName("report0").gotoPage(1, "{province:" + province + "}", true);
}

這裡的代碼設定可實現點擊鑽取目錄「中國」返回第一層時,報表塊接收參數為空,表格可隱藏。

步驟如下圖所示:

 

2.3.2 超連結處添加超連結

在下方「超連結」處同樣添加一個 JavaScript 超連結,輸入 JavaScript 代碼如下:

var chart = FR.Chart.WebUtils.getChart("chart0").getChartWithIndex(0);
var names = chart.getLayerNames(); //獲取鑽取目錄層級名
var layer = chart.getLayerIndex(); //獲取鑽取層級
//如果當前鑽取層級是第二層,那麼將參數province傳給報表塊
if (layer==1){
    var province = names[layer];
    _g().getWidgetByName("report0").gotoPage(1,"{province:'"+province+"'}",true); 
}

這裡的代碼設定可實現點擊點擊區域下鑽到第二層時,報表塊接收參數為對應區域的省份名稱,則表格可顯示對應省份。

如下圖所示:

2.4 效果預覽

保存報表,點擊「PC端預覽」,效果如 1.2 節預期效果所示。

注1:gotoPage 傳參不支援普通報表。

注2:介面不支援行動端。

3. 範本下載

附件列表


主題: 圖表應用
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

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

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

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙