1. 概述
1.1 版本
FineBI 版本 | 功能變動 |
---|---|
5.1 | - |
5.1.5 | 取消「實時資料」按鈕,FineBI 提供「實時資料」和「抽取資料」兩種計算模式的 BI 工程,避免實時資料和抽取資料混用帶來的問題。 |
5.1.6 | 當 URL 傳參和過濾組件 SQL 參數同時存在時,使用者重新整理儀表板時 URL 參數優先生效,比如跳轉,或者瀏覽器直接重新整理,直接複製連結開啟等 後續在跳轉的儀表板介面操作改變參數後,過濾組件參數生效 |
1.2 問題描述
在整合環境下,使用者需要想要在開啟門店相關儀表板 URL 的時候,直接新增相關參數,如http://xxxxxxxx&店性质=管理店(5.1.11之前的版本);http://xxxxxxxx?店性质=管理店(5.1.11 以及之後的版本)過濾出店性質為「管理店」的資料。
1.3 實現思路
在SQL資料集中新增參數
在前端儀表板中直接增加參數條件,實現資料過濾功能。
若需要透過過濾組件傳遞參數,詳情參見:過濾組件作為參數參與計算、跳轉過濾組件傳遞參數 。
2. 傳遞一個參數
2.1 新增 SQL 資料集
若同時擁有「實時資料」和「抽取資料」功能,則需要在資料列表中切換為「實時資料」,然後點選進入分組下業務包,如下圖所示:
在業務包中建立帶參數的 SQL 資料集,如下圖所示:
注:只有 資料處理使用者 可以建立 SQL 資料集。
輸入 SQL 語句:select * from new_dian where 店性質 in ('${店性質}')。${店性質}就是設定的參數變數,點選「重新整理」,設定參數的預設值為「自有店」,設定參數型別為正文型別,點選「預覽」,並確定儲存資料集,如下圖所示:
2.2 建立儀表板
建立一張儀表板,選擇建立的帶參數的 SQL 資料表「門店」,拖入「店性質」和「記錄數」欄位,選擇「分組表」,如下圖所示:
2.3 傳遞參數
連結型別 | 傳遞一個值寫法 | 傳遞多個值寫法 |
---|---|---|
5.1.11 版本之前的公共連結 | &參數名稱=參數值 | &參數名稱=參數值1','參數值2 |
5.1.11 版本之前的公共連結 | ?參數名稱=參數值 | ?參數名稱=參數值1','參數值2 |
預覽連結 | ?參數名稱=參數值 | ?參數名稱=參數值1','參數值2 |
2.3.1 公共連結傳遞參數
若要實現在 URL 中的參數傳遞過濾,首先需要獲取該儀表板的 URL 。進入儀表板節點,對建立的儀表板選擇「建立公共連結」,開啓公共連結並「複製連結」,如下圖所示:
在獲取的URL後新增「&參數名稱=參數值」
5.1.11 版本之前,比如獲取的連結為:http://localhost:37799/webroot/decision/v5/design/report/share/085cfd6b620c441eae930b9ad709e717?link=eyJhbGciOiJIUzI1NiJ9.eyJyZXBvcnRJZCI6IjA4NWNmZDZiNjIwYzQ0MWVhZTkzMGI5YWQ3MDllNzE3IiwidXNlcklkIjoiYjVmMGMyZWUtNjQwZi00MDM5LWE0ZDQtOTE4YjU1MzU0ODk4IiwianRpIjoiand0In0.19qCbrS1Mlpr9unY30Sk02p4Y1PbS1fv2xIAu3VfMBk
在最後新增「&店性質=管理店」:
http://localhost:37799/webroot/decision/v5/design/report/share/085cfd6b620c441eae930b9ad709e717?link=eyJhbGciOiJIUzI1NiJ9.eyJyZXBvcnRJZCI6IjA4NWNmZDZiNjIwYzQ0MWVhZTkzMGI5YWQ3MDllNzE3IiwidXNlcklkIjoiYjVmMGMyZWUtNjQwZi00MDM5LWE0ZDQtOTE4YjU1MzU0ODk4IiwianRpIjoiand0In0.19qCbrS1Mlpr9unY30Sk02p4Y1PbS1fv2xIAu3VfMBk&店性質=管理店
在位址欄輸入新增參數後的 URL,可以看到透過 URL 中的參數傳遞,實現「管理店」的過濾,如下圖所示:
注:若瀏覽器不支援中文參數,即該參數傳遞過濾不生效,就需要把 json 型別的 url 參數值先進行編碼 encodeURIComponent()。比如 edge 瀏覽器。
5.1.11 版本之後,比如獲取的連結為:http://localhost:37799/webroot/decision/link/3Oth
在最後新增「?店性質=管理店」:http://localhost:37799/webroot/decision/link/3Oth?店性質=管理店
在位址欄輸入新增參數後的 URL,可以看到透過 URL 中的參數傳遞,實現「管理店」的過濾。
2.3.2 預覽連結傳遞參數
儀表板預覽的 URL 加上「?參數名稱=參數值」,也可以進行參數的傳遞。
例如點選「預覽儀表板」後可以獲取預覽的 URL ,如下圖所示:
在預覽的 URL 後加入「?店性質=管理店」,可以看到下方的分組表中過濾出了管理店的資料,實現參數的傳遞功能,如下圖所示:
3. 傳遞多個參數
在有多個參數的時候,URL 同樣可以透過新增參數來實現多個條件過濾的效果。
3.1 新增有多個參數的 SQL 資料集
新增 SQL 資料集,輸入帶包含多個參數的 SQL 語句:select * from new_dian where 店性質 in ('${店性質}' ) and 店風格 in ('${店風格}' )
点击「刷新」,设置默认值为「时尚馆」和「自有店」,并保存数据集,如下图所示:
3.2 建立儀表板
使用該資料表的欄位建立組件,包含「店性質」、「店風格」、「記錄數」欄位,組件中顯示欄位值均為參數預設值。如下圖所示:
3.3 傳遞參數
參考 2.3 節獲取該儀表板的連結,在獲取的 URL 之後加上多個參數及值:
連結型別 | 傳參寫法 |
---|---|
5.1.11 版本之前的公共連結 | &參數名稱1=參數值1&參數名稱2=參數值2 |
5.1.11 版本之前的公共連結 | ?參數名稱1=參數值1&參數名稱2=參數值2 |
預覽連結 | ?參數名稱1=參數值1& 參數名稱2=參數值2 |
例如獲取的預覽 URL 為:
http://localhost:37799/webroot/decision/v5/design/report/085cfd6b620c441eae930b9ad709e717/view
為其加上參數「?店性質=管理店&店風格=生活館」,新增參數後的 URL 為:
http://localhost:37799/webroot/decision/v5/design/report/085cfd6b620c441eae930b9ad709e717/view?店性质=管理店&店风格=生活馆
新增參數後儀表板可以直接過濾出對應的參數值,如下圖所示: