Orbeon 2020.1CE中实现重复网格计数并赋值给单元格x的表达式配置
Orbeon 2020.1CE 重复网格计数单元格配置方案
目标单元格x的配置表达式
在x单元格的计算值配置栏,填入符合规则的XPath表达式:if (//first-choice eq false()) then 0 else count(//target-repeated-grid/grid-row)
逻辑匹配说明
- 表达式完全覆盖要求的业务规则:
- 当"First choice"复选框未勾选时,直接输出固定值0,匹配重复网格隐藏场景下的显示要求
- 当"First choice"复选框勾选、重复网格可见时,实时统计网格的实际条目数量:网格默认初始带1条记录时,统计值为1;每新增一条网格记录,统计值自动递增;删除记录时数值同步递减,保证显示值和实际条目数完全对应
- 配置时需要根据实际表单结构替换表达式内的节点路径:
- 将
//first-choice替换为表单中"First choice"复选框绑定的实际实例路径 - 将
//target-repeated-grid/grid-row替换为目标重复网格下每个重复行对应的实际节点路径
- 将
- 该表达式会自动响应节点变更触发重算:无论是复选框的选中状态变化,还是重复网格的条目数量调整,单元格x的数值都会自动更新,不需要额外编写事件联动逻辑
- 不建议硬编码初始值1作为计数基数,使用
count()函数统计的方式可以兼容行删除场景,避免统计值和实际条目数不一致的问题
内容的提问来源于stack exchange,提问作者Dominik Kurowski
相关产品推荐
相关产品推荐

