反饋已提交
網絡繁忙
填報範本中存在多個元件,希望某個元件選擇值後,其他元件的資料字典根據選擇的值動態變化,如下圖所示:
有三種方法可以實現填報聯動效果:
使用資料集sql篩選實現。支援元件擴展場景。
使用 SQL函式 實現。支援元件擴展場景,大數據量下存在效能風險。
使用 VALUE函式 實現。支援元件擴展場景。
1、元件資料字典聯動只支援單向聯動(A聯動B),不支援雙向聯動(A聯動B的同時B聯動A)。
2、不支援三級聯動,即B根據A聯動的情況下,C無法根據B聯動。
3、儲存格元件設定資料字典聯動時,聯動的參數要設定為儲存格,不要設定為儲存格中的元件的元件名稱。
4、觸發資料字典聯動時,會清空被聯動元件的值。比如地區聯動城市,當地區元件選擇資料後,城市元件之前選擇的值就會被清空。
開啟設計器內建範本:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\FreeForm\FreeForm.cpt,表格樣式如下圖所示:
1)新增資料集 ds2,其 SQL 語句為:SELECT 城市 FROM 僱員 where 地區='${C9}',透過 where 條件限制城市的資料為 C9 儲存格(地區)選擇後的值。
2)選中 C9 儲存格(地區),修改地區下拉框元件的元件名和資料字典為ds1,如下圖所示:
3)選中 F9 儲存格(城市),修改城市下拉框元件的資料字典為ds2,如下圖所示:
選中 F9 儲存格,修改城市下拉框元件的資料字典為公式,實際值輸入公式:SQL("FRDemoTW","select 城市 from 僱員 where 地區='"+C9+"'",1),顯示值輸入公式:$$$,如下圖所示:
選中 F9 儲存格,修改城市下拉框元件的資料字典為公式,實際值輸入公式:value("ds1",8,9,C9),顯示值輸入公式:$$$,如下圖所示:
公式說明:
傳回 C9 儲存格中的地區(ds1 中的第 9 列)在資料集 ds1 中對應的城市( ds1 中的第 8 列)。
1)PC 端
儲存報表,點選 [填報預覽],效果如下圖所示:
2)行動端
同時支援 App 端和 H5 端預覽,效果如下圖所示:
已完成範本可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\FreeFrom\填報下拉框聯動.cpt
點選下載範本:填報下拉框聯動.cpt
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙