案例二:聚合函数的应用
场景一:流程定义中工作流连接弧条件判断经常需要取分录上的某个字段的值或取合计值,平均值,第一行的值情况,需要使用聚合函数输出。具体位置如图:
场景二:流程定义中如标题中需要用到取分录的变量时,需写脚本来实现。脚本参考如下:
//获取分录的个数,比如说 费用报销单.分录 ,定义一个 整型的 流程变量entrySize entrySize = BizAccountBill.entries.size(); //分录某个 数字字段 求和,比如说 费用报销单.分录.金额: //先在流程属性中定义一个外部数据类型的变量:sumResult //脚本如下 //对 费用报销单.分录.金额 的所有行 求和 var size = BizAccountBill.entries.size(); var temp = 0; for(var i=0;i<size;i++){ temp += BizAccountBill.entries[i].amount; } sumResult = temp; //分录某个 数字字段 的平均值,比如说 费用报销单.分录.金额: //先在流程属性中定义一个外部数据类型的变量:avgResult //脚本如下 //对 费用报销单.分录.金额 的所有行 求平均值 var size = BizAccountBill.entries.size(); var temp = 0; for(var i=0;i<size;i++){ temp += BizAccountBill.entries[i].amount; } avgResult = temp/size; //分录某个 数字字段 求最大值, 比如说 费用报销单.分录.金额: //先在流程属性中定义一个外部数据类型的变量:maxResult var size = BizAccountBill.entries.size(); var _tempArray_ = []; for(var i=0;i<size;i++){ _tempArray_.add(BizAccountBill.entries[i].amount); } maxResult = java.util.Collections.max(_tempArray_); //分录某个 数字字段 求最小值, 比如说 费用报销单.分录.金额: //先在流程属性中定义一个外部数据类型的变量:minResult var size = BizAccountBill.entries.size(); var _tempArray_ = []; for(var i=0;i<size;i++){ _tempArray_.add(BizAccountBill.entries[i].amount); } minResult = java.util.Collections.min(_tempArray_); //取分录某的一行 数字字段 , 比如说 费用报销单.分录.金额,取第一行: //先在流程属性中定义一个外部数据类型的变量:numResult numResult = BizAccountBill.entries[0].amount; //同理,如果取第n行,就要写成 numResult = BizAccountBill.entries[n-1].amount; //获取费用报销单.分录.金额 的所有行, //先在流程属性中定义一个外部数据类型的变量:numArray, 需要是 数组 var size = BizAccountBill.entries.size(); numArray = new java.lang.Object[SIZE]; for(var i=0;i<size;i++){ numArray[i] = BizAccountBill.entries[i].amount; }
案例二:聚合函数的应用
场景一:流程定义中工作流连接弧条件判断经常需要取分录上的某个字段的值或取合计值,平均值,第一行的值情况,需要使用聚合函数输出。具体...
点击下载文档
本文2024-09-22 20:32:57发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-114349.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章