动态工龄/年龄计算
1. 简介
1.1 案例简介
在 人事管理 系统的建设中,通常会涉及到员工工龄、年龄等计算,但是这些都是动态变化的,通过表单函数录入无法自动更新。
1.2 设计思路
1)基础表单数据录入(含日期时间数据);
2)数据工厂计算字段计算日期与当前时间的差值;
3)数据流定时更新数据,保证每天可以看到最新动态差值:INT(DATEDIF(入职日期,TODAY(),"y"));
4)将计算好的数据通过仪表盘进行展示,供成员或管理员每天查看。
1.3 预期效果
通过出生日期、入职日期等动态计算年龄、工龄。
2. 设置步骤
在学习之前请先安装 人事OA管理 应用模板 ,本文将按照模板中的示例数据进行讲解。
2.1 表单数据
表单数据选择模板中的「员工档案」表单,表单中已经预设了一些示例数据,您也可以继续「添加」更多数据体验实现效果。
2.2 数据工厂设置
2.2.1 新建数据流
在管理后台处新建一个数据流,如下图所示:
2.2.2 数据流重命名
对数据流进行重命名:
2.2.3 设置数据源
点击输入节点,选择需要计算的数据源,并添加需要参与展示或计算的字段,比如员工姓名、出生日期、入职日期等。如下图所示:
如果不知道需要哪些字段,也可以根据模板中已有的数据流进行操作:
2.2.4 添加计算字段
在数据流中添加一个「字段设置」节点,字段设置节点可以用来计算动态工龄、年龄等。如下图所示:
2.2.5 动态日期计算
在「字段设置」节点中,点击「添加计算字段」进行计算。如年龄计算,公式如下:
INT(DATEDIF(出生日期,TODAY(),"y"))
公式中的变量需要从「可用变量」中选择,不可以直接输入文本:
注:年龄的动态计算公式同工龄计算,继续添加一个计算字段。只需要将公式中的变量换成出生日期即可。此处不再赘述。
2.2.6 员工段位计算
根据工龄的长短,我们还可以对员工进行个性化标记。继续添加计算字段,这里字段类型选择文本。公式如下:
IFS(工龄<=1,"🥉青铜",工龄==2,"🥈铂金",工龄==3,"🥇黄金",工龄==4,"💎钻石",工龄==5,"🏅星耀",工龄>5,"🏆王者")
2.2.7 数据预览
点击数据预览可以查看数据效果:
2.2.8 保存
全部设置完毕后,将字段设置节点连向输出节点,对输出节点重命名后「保存」整个数据流设置:
2.3 仪表盘展示
经数据流计算的数据可以通过仪表盘展示给其他成员查看。
2.3.1 新建仪表盘
在应用中新建一个仪表盘:
2.3.2 添加明细表
对仪表盘重命名,然后添加一个明细表用于展示数据流输出表中的数据:
对明细表进行简单设置:
2.4 效果演示
1)电脑端
2)手机端
4. 数据更新与导出
得到的明细数据也可以通过仪表盘导出 EXCEL或者直接打印,同时如果数据工厂未及时更新数据可以手动点击实现立即更新。
动态函数 TODAY 不仅能用于人事场景,还能用于如下场景:
- 仓库管理中,动态计算出商品的库龄、保鲜期
- 设备租赁管理,实时动态掌握设备租期情况
- 固定资产的折旧费用计算
- 订单账期管理,动态计算账期,超期账单提醒
您可以根据自己的实际需要,来进行动态时间计算。