BOS判断条件的问题
金蝶云社区-天冥异
天冥异
8人赞赏了该文章 1,163次浏览 未经作者许可,禁止转载编辑于2018年07月27日 11:00:42

常见问题一:

工作流连线,设置了非常复杂的条件,导致系统当掉
1. 任务处理界面打不开
2. 任务提交后,把工作流引擎卡死,其他所有流程都停止,不能正常处理。

引起上述问题的连线条件,对往来单位名称,使用 Or 拼接了非常多的单位,类似于
往来单位.名称 = '单位1' or 往来单位.名称 = '单位2' or 往来单位.名称 = '单位3' 

建议通过 in 语句进行简化:
往来单位.名称 in ['单位1', '单位2', '单位3']


常见问题二:

单据转换规则,如何对单据体多个字段进行运算,然后求和

背景说明
假设,单据头字段为FTotal
单据体字段有F1, F2, F3,需要对单据体行进行 (F1 + F2) / F3,然后把此结果求和,设置到单据头FTotal字段中


配置公式
FTotal = sum(map(lambda x : (x.F1 + x.F2 ) / x.F3, FEntity))


公式说明
1. lambda x: (x.F1 + x.F2) / x.F3 
这相当于定义一个函数,传入x,返回(x.F1 + x.F2) / x.F3

2. map(fun, FEntity)
相当于对FEntity集合,进行循环,逐行经过fun函数的处理,返回结果构成一个新集合

3. sum(arrays)
对新产生的集合,进行合计

等效于
FTotal = sum((x.F1 + x.F2) / x.F3 for x in FEntity)



图标赞 8
8人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!