1. 概述
1.1 問題描述
在決策報表中,設定一個參數,使用一個元件作為參數輸入值,在其他元件、報表塊、圖表塊中使用 value 函式 獲取參數值,當輸入參數值改變時,獲取值不會隨之改變,即無聯動效果。範例如下:
1)建立決策報表,建立資料庫查詢,SQL 語句為:select ${para1} as para1,para1 為資料集參數,預設值為 1 。如下圖所示:
2)設計決策報表樣式
在決策報表 body 中新增兩個「標籤元件」,元件值分別為「para1」、「para2」。
新增兩個「正文元件」對應「para1」、「para2」,para1 為資料集參數,作為輸入值;para2 輸入公式:value('ds1',1)+1,傳回獲取的 para1 值加 1 後的值。
新增一個「報表塊」,在儲存格中插入公式:value('ds1',1) 。
決策報表樣式如下圖所示:
3)儲存報表,點選「PC端預覽」,效果如下圖所示:
1.2 原因分析
value 函式在決策報表 body 中直接使用於元件、報表塊和圖表塊之間時,不會觸發聯動效果。
注:FVS 視覺化看板中使用 value 函式同理。
2. 解決方案
方案一:可以透過給 body 新增參數介面,在參數頁面新增元件作為輸入值,輸入不同值後點選查詢,各獲取值會隨之改變。
方案二:使用公式 $para1 取值可觸發聯動。
3. 範例:方案一
3.1 新增參數介面
新增參數介面,將 para1 新增到參數介面(建立參數介面並將para1,拖入面板即可),para2 及報表塊中取值公式不變,如下圖所示:
注:FVS可使用 查詢面板 實現。
3.2 效果預覽
3.2.1 PC 端
儲存報表,點選「PC端預覽」,效果如下圖所示:
3.2.2 行動端
App 與 HTML5 端效果相同,如下圖所示: