致远个性化之--获取明细表中相同类型的数据汇总,并赋值对应明细行中

需求

由于在近期的项目中,有预算、费用管控等需求,而且在报销填报时,费用明细项可能会有重复相同的费用类型发生多项,而相同的费用类型是多项时,要求按照汇总后的费用管控。
具体示例图如下:
邮寄费发生了两次,一次122元,一次80元,总计202元。
办公耗材发生了两次,一次210元,一次300元,总计510元。
为了实现相同的科目分别进行管控,需要判断出【相同类型的费用合计】字段在每一行是否超过对应行的【预算可用余额】字段,即根据相同费用类型的费用合计去判断,而不能单纯根据每一行的【费用金额】判断! 实现效果图

实现

直接呈现实现方式。

1、增加中转数组

在主表中,增加【中转数组】字段,设置计算公式为自定义函数,函数代码如下:

def amountList = param[0];
def budgetList = param[1];
def resultStr = "";
if(null != budgetList && null != amountList){
for (i in 0..<budgetList.size()) {
    def budget = budgetList[i];
    def sumAmount = 0.00;
    for (j in 0..<budgetList.size()) {
        if (budget == budgetList[j]){
            sumAmount += amountList[j].toDouble();
        }
    }
    resultStr += sumAmount + "、";
}
    return resultStr;
}

其中参数为明细表中的【费用金额】、【预算科目编码】。
中转数组自定义函数设置

2、设置明细表的【相同类型费用合计】字段计算公式

定义明细表中的【相同类型费用合计】字段自定义函数公式,公式如下:

int i = param[0];
String[] d = param[1].split("、");
if(i-1>=0){return d[i-1]}

其中参数为明细表中的【序号1】、主表中的【中转数组】。
相同类型费用合计自定义函数设置

3、后台审核

完成以上自定义函数后,通过系统管理员在后台进行审核,审核确认后,剩下的事情,就交给致远的零代码能力,表单配置校验等功能实现了!然后就可以看到需求的效果了!

如果各位有兴趣或需求,可沟通交流。
【记录于2024年9月7日】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值