帆软-根据层级结构分类计算(动态参数)

举个栗子:

需要根据组织架构(包含部门、产线、车间、班组等等),分别计算每个层级的考勤时长。

最简便的方法就是:

1. 组织架构做一张数据集,

2. 考勤汇总做一张数据集,

3. 然后把二者关联起来(动态参数 + 左父格)

这是我们最终实现的效果

现在我们一步步做

如图所示: 红框上面的代码运行结果就是本次使用的组织架构。红框内是参数设计。

注意:保证sanb编码不为空,能和前面架构一一对应。

讲解一下这个参数,这里需要分别对不同层级进行汇总求和,可以理解为YIB是一级部门,ERB是二级部门,产线编码是三级部门,车间编码是四级部门,班编码是五级部门。所以这张表单一共要对五个层级部门分别进行汇总。

通过参数筛选产线编码,会得到对应产线的所有SANB编码,只要考勤数据跟SANB编码一一对应,就能求和。

现在我们来看SANB编码对应的考勤数据

如图所示:红框上面代码的运行结果就是本次使用的考勤数据。红框内是参数设计。

这里我们筛选了SANB,根据SANB进行汇总求和。(时间参数不看,跟本案例无关)

好了,现在我们有两个数据集了,左手一个组织架构,右手一个考勤数据,接下去就是关联。

先拖拽数据,一级部门的左父格为A9 ,二级部门的左父格为A14

参数动态注入

公式解析:

1. depart数据来源.select(SANB,YIB = A9) 从’depart数据来源‘这个数据集里查询SANB,筛选条件是一级部门名称 = A9(因为我们表单显示的时候,显示的是一级部门名称,不是编码)

2. 重点来了,一级部门对应了多个SANB,那么我们查询到是一堆字符串,字符串之间的关联符号是英文逗号   ,  。但是传参的时候,我们需要用    ','   ,所以这里要使用replace,把字符串之间的关联符号,改成',' 。

怎么理解呢?举个例子,sql语句中where SANB IN ('001','002'),看到吗?两个字符串中间是   ','

同理,二级部门的动态参数公式怎么写嘞

至此,就完工齐活啦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值