GJZZH 发表于 2021-7-13 11:37:22

多层级数据赋值问题

上个帖子描述的情况比较简单,但实际的情况比这复杂,https://bbs.iyunbiao.com/forum.p ... =5930&fromuid=78896例如

通过填写延期登记表,用状态业务公式将计划表中涉及到的上级计划号要求完成时间都进行修改(红色是执行公式后希望得到的数据)

业务公式

执行结果

如何才能让数据不累加(PS:上个帖子的方法试过了,对这种情况行不通,数据还是会累积)

Prex 发表于 2021-7-13 12:30:29

本帖最后由 liu_lijian1 于 2021-7-13 12:31 编辑

首先分析你重复累加的原因:
801-3,801-4,是同一阶层的,你是数据源又选的是明细,明细中有多少条记录,业务公式就执行几次,所以你801-2的日期会加8天(如果你同一阶层3条记录,就会加12天),801-5这一阶层就1条记录,所以计算801-1的天数应该是正确的。

业务公式你不要写在一条业务公式中,你用情况1,情况2,情况3,这是需要最后一步执行完才有结果出来。
你试试我的思路看看行不行:
第一步:独立一个业务公式,先更新当前明细的对应计划单的完成日期(暂时不要更新上级)

这一步执行完成之后,计划表那里的完工日期就有数据了。
第二步:再新建一个业务公式,(不要在上面公式中增加情况2,直接添加)
在当前表建数据源去更新计划单(不能直接调用本表单明细了),但数据源,你必须保证唯一性,同一阶层你取延期最多天数的那条记录
就是说801-3你延期4天,而801-4延期5天,那么上一阶层肯定也是延期5天的。然后逐步找到上一阶层更新日期。


具体我没有去做数据测试,你可以先试试,如果行不通可以私信开通账号协助处理!
页: [1]
查看完整版本: 多层级数据赋值问题