关联引用
表单页面上经常会用到各种选择,例如:下拉选择、弹出选择、单选组、多选组。对于非弹出选择,开发者在页面上需要放数据组件获取选项数据,再放选择器、多选组、单选组、树选择等组件。对于弹出选择,开发者需要单独开发页面、返回数据、设置数据映射关系。每个使用的页面都需要设置,包括桌面端和移动端。
从46版本开始,系统提供关联引用,在数据集的列中设置关联引用,页面上只需放输入框组件即可实现各种选择,效果如下面这些图所示
- 下拉单选
- 下拉多选
- 单选组、多选组
- 弹出单选
- 弹出多选
- 下拉树
- 弹出树
设置关联引用
在数据集的列中设置关联引用,如下图所示
属性设置
- 引用:选择一个数据集,如果需要关联查询,可以使用 sql 数据集
- 值属性:选择数据集中的一列,该列的值作为选中的值,会存入数据组件
- 显示属性:选择数据集中的一列,该列的值作为显示的值
- 和“值属性”选择同一列,被认为是“单列”,选中“单列可录入”,支持用户录入数据
- 和“值属性”选择不同的列,这列的值如果需要存储,在“映射”中设置,如果不需要存储,需要设置“输出数据集”,在加载数据时查出对应的值
- 多选:设置多选或单选
- 多选分隔符:默认使用逗号分隔多值
- 默认展示类型
- 下拉选择:使用选择器组件展示
- 弹出选择:使用对话框组件展示
- 嵌入选择:使用单选组或多选组展示
- 显示列:下拉和弹出中支持显示多列数据
- 单列可录入:值属性和显示属性选择同一列时,选中此选项,不仅支持选择,也支持录入
过滤设置
设置数据集的过滤条件,目前不支持动态条件
映射设置
存储“值属性”以外的列,不需要存储则无需设置
不冗余存储场景
不冗余存储,即存储 id,不存储名称,但需要显示名称。在“属性”中,“值属性”选择 id,“显示属性”选择名称,如下图所示
在数据集上添加“输出数据集”,来源选择“关联引用”,“名称”不能和现有列重复,会造成覆盖,如下图所示
在页面上的数据组件中,编辑数据列,选中输出数据集中的名称列,如下图所示
页面加载数据时,从输出数据集中获取名称列的值,实现不冗余存储