表单级联选择配置方法

最近更新时间:2025-03-11 13:22:22

我的收藏

需求说明

在企业管理的表单录入场景中,经常会遇到通过页面中其它组件值、变量参数等来筛选下拉选择组件中的可选项。

实践方案

1. 示例场景:库存管理中的商品出库申请,需要先选择仓库,再选择仓库中的已有库存物料。
2. 创建应用后,在编辑器的数据源模块创建3个数据模型:
2.1 仓库模型,字段:仓库名称(主列字段)。



2.2 库存模型,字段:所属仓库(关联仓库模型)、库存物料名称(主列字段)。



2.3 出库申请模型,字段:仓库(关联关系字段,关联仓库模型)、出库物料(关联关系字段,关联库存模型)。



2.4 为方便测试,在仓库模型和库存模型中录入体验数据。
2.4.1 录入仓库的体验数据。



2.4.2 录入库存的体验数据。



3. 利用表单容器组件生成出库申请模型的表单,会自动生成仓库、出库物料两个字段,并对应成下拉选择组件。



4. 出库物料组件:选项筛选属性,单击打开配置弹窗,设置:所属仓库字段等于表达式:$w.仓库字段的组件id.value



5. 由于通过表单关联关系生成的下拉单选组件,由于筛选条件不支持选择关联字段,需要重新拖入新的下拉单选组件替换上图中的“出库物料”。



6. 新建库存 query 查询,筛选条件使用表达式的模式,进行出库物料筛选。



({
"select": {
"$master": true,
"ssck": {
"ckmc": true
}
},
"filter": {
"where": {
},
"relateWhere": {
"ssck": {
"where": {
"$and": [
{
"ckmc": {
"$eq": $w.select1.selectedLabel
}
}
]
}
}
}
}
})
7. 将出库物料下拉单选组件选项绑定表达式$w.query1.data.records,并配置选项名称和选项值。



8. 总结:按以上步骤配置,即可实现选择仓库后,出库物料仅可选择当前所选仓库中的物料,例如:选择仓库1后,物料仅能选择该仓库中的显示器和电池。