5 评论

0 收藏

分享

[功能优化] 【云表格用户请注意】~ 工作流规则变动通知

云表格上线工作流以来一直都得到了伙伴们的广泛关注
为了帮助大家更好的使用工作流
我也写了一些相关教程

这里来栗举一下
通过身份证号自动计算出生日期
【工作流教程】常见问题解析
【老功能新用法】~用工作流实现“任务流程管理”

在这些教程里面
我都有提到过工作流的执行顺序问题
不过近期我们的技术同学
为了优化工作流,提高响应速度
对工作流执行顺序做了小的调整

所以今天我们就来探讨一下
工作流中新的执行顺序

原来的规则:
工作流与工作流之间无顺序
操作与操作之间有顺序
操作中的赋值无顺序

现在的规则:
工作流与工作流之间无顺序
操作与操作之间有顺序
(但有个特殊情况,如果一个工作流中的多个操作,都是修改本表的当前数据,那么将合并处理)
操作中的赋值无顺序

我们可以看出,其实主要调整的地方就是,
操作之间的顺序,这种合并是什么样的
现在用一个非常简单的栗子来帮助大家理解。

A表中有三个字段,a1,a2,a3
B表也有三个字段,b1,b2,b3
现在我们要在B表中建立一个工作流
如果本表数据修改,就触发修改A表
修改的规则是a1字段=(b1+b2+b3)*2
a2字段=(b1-b2+b3)/2
a3字段=(a1+a2)*2

我们可以看出,其a3的计算是用到了a1和a2的新值的
我们正常的思路,肯定是这样的
一个操作
a1:(b1+b2+b3)*2
a2:(b1-b2+b3)/2
a3:( (b1+b2+b3)*2+(b1-b2+b3)/2)*2

我们看出,a3的赋值内容会比较多,
在书写工作流时会非常长,
经常会发生一些写法错误

之前为了避免这种问题
曾经教过大家这样一个办法
就是添加个操作
使用目标数据来代指
修改后的当前数据。

但是,这样的用法也是会有弊端的
这个工作流,会多次触发修改本表
所以如果本表还有其他工作流的话
会造成工作流的重复触发
同时也会造成工作流执行速度降低

这次的调整就是针对了这种用法
把在一个工作流里
多次修改本表当前数据的操作
进行了合并

不过有的时候
如果我们的工作流真的很复杂
直接写异常麻烦的话
我们可以使用找指定条件的数据
并且用数据ID把当前数据再找出来一次的方发来解决

但是要提醒一下伙伴们
这样做会导致多次触发本工作流
降低执行速度哦
所以不到万不得已
千万不要使用!

最后,如果伙伴们有什么相关问题
可以在下方留言
或者申请加入我们的官方qq群:544918293

















回复

举报 使用道具

相关帖子
全部回复 (5)
查看全部
似懂非懂

举报 回复 使用道具

为什么不提工作流修改的数据不能触发本表其他工作流的规则?另外想知道有没有令工作流之间有顺序的方法,有时需要。

举报 回复 支持 反对 使用道具

“我们可以使用找指定条件的数据
并且用数据ID把当前数据再找出来一次的方发来解决”
使用这个设定后,tem语句中,仍会将“目标数据”当成是当前数据

举报 回复 支持 反对 使用道具

工作流最底层的规则据目测是:先新建数据,在根据工作流计算的值修改数据,这样会造成很多公式得重复填写。

举报 回复 支持 反对 使用道具

引用 @张树云(1363335) 发表于 2017-11-22 11:00
工作流最底层的规则据目测是:先新建数据,在根据工作流计算的值修改数据,这样会造成很多公式得重复填写。 ...

我理想中的逻辑是:工作流先计算赋值后再创建数据→操作与操作之间按顺序计算→同操作里的不同字段赋值按顺序计算

举报 回复 支持 反对 使用道具

董雪骄(1357825)
高级会员
主题 17
回复 34
粉丝 2
|网站地图
快速回复 返回顶部 返回列表