通常可以使用下拉清單選擇資料,而當資料較多時則適合使用開窗查詢。開窗查詢時,系統會顯示彈出式視窗,使用者可搜尋並選擇資料後自動回填表單。
可以選擇一筆資料回填表單,也可以選擇多筆資料一次新增到明細表。
開窗查詢使用XDataBrowserButton控制項設計,開窗查詢除了可以使用本地資料庫、外部資料庫,也可以使用ESB資料來源。
開窗查詢預覽
如上圖,點擊按鈕,打開供應商查詢介面,選擇一個供應商後,供應商編號、企業名稱、法人代表、營業執照、註冊資金等資訊回填到表單。
開窗查詢設定
屬性設定 |
描述 |
XDataSource |
開窗查詢的資料來源,詳見“使用資料來源” |
DisplayColumns |
定義開窗中的顯示列,可指定顯示哪些列,列名,列寬 |
DataMap |
選擇資料後,哪些欄位資訊回填到表單,回填到表單上的哪些欄位 |
MultiSelect |
開窗表單中的資料是否允許多選 |
配定資料來源
設置XDataSource屬性,完成資料來源配置。
支援所有類型的資料來源、支援使用表單資料動態過濾資料來源。
DisplayColumns
DisplayColumns決定開窗表單中的顯示列、列名、列寬。
當所有列都使用了固定寬度,則最後一列自動調整寬度,映射滿開窗介面,如果中間列需要自動調整寬度,設定列寬為-1。
支持多列自動調整寬度,當多列設置寬度為-1時,代表多列均分剩下寬度。
DataMap
通過設定DataMap,使資料自動回填到表單。
單選vs多選
開窗查詢支援單選與多選,按以下場景選用:
■ 主表使用單選;
■ 明細表中的一行選擇資料使用單選;
■ 一次選擇多項資料入明細表使用多選。
MultiSelect設置為False時為單選、True時為多選。
多選開窗查詢
需要一次選擇多筆資料帶入明細表時,使用多選,多選開窗按鈕不得放置於明細表動態區域內(表身),也既不得放置於行內,而應該放置於明細表外,可位於明細表表頭。
多選效果圖:
AppendMode屬性:
屬性 |
描述 |
Append |
開窗選擇資料全部新增到明細表末尾 |
RemoveEmptyRow |
此為預設值,移除明細表末尾的空行再增加新選擇的資料 |
ClearAndAppend |
移除明細表中的所有行,再增加新選擇的資料,也就是重新選擇 |