1.功能描述
以下拉形式展示数据,并选择数据;
可设置固定选项、动态选项;
2.基础配置
2.1固定选项
例:报销申请单中的报销类型:差旅费、办公费、通讯费、其他
配置步骤:
第一步:进入表单设计器页面,将下拉框拖拉到对应的栅格布局中;
第二步:绑定属性;
第三步:添加固定选项;
第四步: 点击“保存”;
预览效果:
2.2动态选项
通过关联查询将查询出来的数据作为选项进行选择
例:选择对应的组织数据
操作步骤:
第一步:添加关联查询,查询组织表的组织信息;
注:关联查询的详细配置说明,请参考【元件管理】-【关联查询】
第二步:在表单中-选择组织字段绑定对应的关联查询;
第三步:保存表单;
预览效果:
2.3下拉框多选、搜索配置
下拉框可设置为多选状态,及可搜索状态;
① 下拉框多选:既可选择多个选项(固定选项、动态选项都支持多选)
配置如下:
预览效果:
② 下拉框可搜索:当选择太多时,可通过搜索来查询需要的选项;
配置如下:
预览效果:
③ 可创建条目:添加新的选项
注:需要设置可搜索,才能设置可创建条目
配置如下:
效果预览:
2.4 绑定关联查询
例:选择组织后,需要自动带出所选组织的组织主负责人
实现思路:创建一个组织与主负责人的关系视图,通过选择组织中回填的组织id,查询出对应组织的组织主负责人
配置如下:
第一步:在【应用中心】->【数据应用】->【创建视图】中,添加组织与主负责人的关系视图
SQL语句:
SELECT UC_ORG.ID_ AS ORGID, UC_ORG.NAME_ AS ORGNAME, UC_USER.ID_ AS USERID, UC_USER.FULLNAME_ AS USERNAME, '-1' AS TENANT_ID_ FROM UC_ORG INNER JOIN UC_ORG_USER ON UC_ORG.ID_ = UC_ORG_USER.ORG_ID_ INNER JOIN UC_USER ON UC_ORG_USER.USER_ID_ = UC_USER.ID_ WHERE UC_ORG_USER.IS_CHARGE_ = 2 |
注:若平台开启了租户模式,SQL中需要加上: '-1' AS TENANT_ID_;查询对应租户下的数据,-1表示平台数据; |
第二步:在【设计中心】->【元件管理】->【关联查询】中添加关联查询;
第三步:在表单中,给对应的下拉框控件绑定关联查询:
预览效果;
3.高级配置
3.1 使用动态选项实现数据级联,如省市区级联
在表单中,某个字段显示省份,另一个字段显示这个属于省份的市,另一个字段显示这个市份下的区/乡镇。
解决思路:
下拉框使用动态选项,选择自定义查询作为下拉框选项的来源,让下拉框使用的自定义查询的条件字段的值来源于表单中的某个字段,这样自定义查询的结果就根据表单中这个字段的值进行了过滤
前提条件:
在数据库中有一个表,表中有三个字段(ID、PARENT_ID、NAME);注:如果是租户模式,需要加上字段“TENANT_ID_”
市通过PARENT_ID和省份关联,区/乡镇也是通过PARENT_ID和省关联。
省份:PARENT_ID存的是0,市级的PARENT_ID存的是对应省份的id,区/乡镇的Pid存的是对应市级的id;
可下载执行文末的sql文件
操作步骤:
第一步:添加关联查询 添加三个关联查询,一个查询省份,一个查询市,一个查询区/乡镇。
① 查询省份: 查询省份的这个关联查询的条件字段使用省份PARENT_ID,注意返回字段一定要有省份的id,因为,查询某个省份的市时需要判断市的PARENT_ID是否等于这个省份的ID,如下所示:
② 查询市: 查询市的这个关联查询的条件字段一定要有PARENT_ID,返回字段一定要有市的ID,如下所示:
③ 查询区/乡镇 的这个自定义查询的条件字段一定要有PARENT_ID,如下所示:
步骤二:
① 在表单设计页面中设置下拉框的级联,下拉框的级联是通过设置动态选项实现的。省份这个字段使用控件下拉框,下拉框使用动态选项,然后选择关联查询:级联选择_查询省。
返回填: “值”是存入数据库中的数据,“标签”是显示在表单中的数据。“值”和“标签”使用的是关联查询的返回值,地区选择-省这个关联查询的返回值有两个,一个是省份ID,一个是省份NAME,这里使用省份id作为下拉框的值,使用省份NAME作为下拉框的标签。
② 市这个字段使用控件下拉框,关联查询选择“级联选择_查询市”,参数绑定中,条件字段PARENT_ID的值来自于省份这个字段,所以绑定省份这个字段。地区选择-市这个关联查询的返回值有两个,一个是市ID,一个是市NAME,这里使用市id作为下拉框的值,使用市NAME作为下拉框的标签。
注意:在上面设置的下拉框级联中,市和省份是通过PARENT_ID关联的,所以省份这个字段的“值”是省份ID,省份这个字段的“值”传给条件字段PARENT_ID在“地区选择-市”这个关联查询中进行查询。
③ 区这个字段使用控件下拉框,关联查询选择“级联选择_查询区”,参数绑定中,条件字段PARENT_ID的值来自于市这个字段,所以绑定市这个字段。地区选择-区这个关联查询的返回值有两个,一个是区ID,一个是区NAME,这里使用区ID作为下拉框的值,使用区NAME作为下拉框的标签。
预览效果: