工时维度的考勤管理(支持小时假)

点击安装场景模板:自定义考勤规则 进行体验,内置工时维度的考勤管理(支持小时假)方案。

1.简介

1.1 场景简介

自定义考勤规则能够使得考勤制度更加灵活、公平和高效,从而适应不同情况,符合不同组织的实际需求,提升员工工作积极性和组织整体效能。

  1. 适应特定的模式:不同组织可能有不同的工作模式,例如弹性工作制、远程办公等。自定义考勤规则可以根据具体情况设定上下班时间、工作时长等,以适应不同的工作模式
  2. 优化员工福利:通过自定义考勤规则,可以设置加班补偿、休假制度等,以保障员工的权益和福利。自定义考勤规则可以提高员工满意度,增强员工对组织的归属感和忠诚度
  3. 提高工作效率:合理的考勤规则可以促使员工按时上下班、准时参加会议等,从而提高整体工作效率。例如,设置迟到早退的惩罚措施可以督促员工按时出勤,避免浪费时间和资源
  4. 管理考勤数据:自定义考勤规则可以帮助企业更好地管理考勤数据,包括请假记录、加班记录等。这些数据可以用于工资计算、绩效评估等,提供依据和参考,减少人为错误和争议
  5. 优化资源利用:通过自定义考勤规则,可以更好地分配和利用人力资源。根据员工的实际工作情况,合理安排人员调度和排班,确保各部门和岗位的工作需求得到满足

1.2 预期效果

1.3 设计思路

  1. 修改「请假申请」与「调休申请」表单内的考勤规则,提供「小时」与「天数」两种请假模式,员工请假时可以根据自身需求自由选择
  2. 新建「员工考勤统计」与「员工考勤明细」数据工厂,将大部分的考勤相关计算放入数据工厂内
  3. 修改考勤确认表单
  4. 删除所有辅助字段
  5. 修改仪表盘

2. 设置步骤

点击安装场景模板:自定义考勤规则 进行体验,内置工时维度的考勤管理(支持小时假)方案。

2.1 初步表单修改

2.1.1 修改「请假申请」模块

修改「请假日期」子表单为「请假详情」,在请假日期前增加单选按钮组「请假模式」,具体设置如下:

新增「请假开始时间」与「请假结束时间」两个时间字段,以供「小时」模式下的请假时间计算使用,具体设置如下:

修改「请假天数小计」为「请假时间小计」,并修改计算公式如下(具体时间点可根据使用实际情况自定义):

IF(请假模式=小时,IF(请假开始时间<当天12:00且请假结束时间>当天17:30,ROUND(DATEDIF(请假开始时间,请假结束时间,"h"),1)-1.5,ROUND(DATEDIF(请假开始时间,请假结束时间,"h"),1)),IF(请假时段=全天,8,4))

添加显隐规则,当「请假模式」选择“天数”时显示「请假日期」、「请假时段」、「请假时间小计」、「考勤归属周期」字段

当「请假模式」选择“小时”时显示「请假日期」、「请假开始时间」、「请假结束时间」、「请假时间小计」、「考勤归属周期」字段

不可见字段赋值设置为“始终重新计算”

2.1.2 修改「调休申请」模块

本质上同「请假申请」模块一致,详情参照2.1.1。

2.2 新建「员工考勤统计」数据流

在数据工厂新建数据流处理所有员工考勤相关数据,也可以自己参照模板中的分析结果。

2.2.1 打卡统计

以「考勤打卡」为数据源,具体设置参考下图:

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

IF(AND(VALUE(TEXT(DATE(打卡时间),"HHmm"))>500,VALUE(TEXT(DATE(打卡时间),"HHmm"))<=830),"正常签到",IF(AND(VALUE(TEXT(DATE(打卡时间),"HHmm"))>830,VALUE(TEXT(DATE(打卡时间),"HHmm"))<=1200),"迟到",IF(AND(VALUE(TEXT(DATE(打卡时间),"HHmm"))>1330,VALUE(TEXT(DATE(打卡时间),"HHmm"))<1800),"早退",IF(AND(VALUE(TEXT(DATE(打卡时间),"HHmm"))<=2359,VALUE(TEXT(DATE(打卡时间),"HHmm"))>=1800),"正常签退","该时间段不能签到哦~"))))

添加「行转列」节点,将数据转为以「打卡状态」为列字段,数据数量以计数统计为值,具体设置参考下图:

添加「字段设置」节点,将行专列之后的表头进行重命名

添加以「外勤打卡」为数据源的输入节点,重复之前的动作,并将两条数据流进行横向链接,具体设置如下:

2.2.2 请假统计

以「请假申请」为数据源,具体设置参考下图:

添加「行转列」节点,将数据转为以「请假类型」为列字段,数据数量以计数统计为值,具体设置参考下图:

将数据流与之前的打卡统计进行横向链接,具体设置如下:

2.2.3 调休统计、加班统计

参考2.2.2,搭建方式相同,将数据源换为「调休申请」与「加班申请」即可,搭建完成后将数据流进行横向链接

2.2.4 补卡统计

以「补卡申请」为数据源,具体设置参考下图:

添加「分组汇总」节点,将补签次数以考勤归属周期、姓名、所在部门为分组字段进行分组,具体设置参考下图:

将分组汇总后的数据流与之前的数据流进行横向链接,具体设置如下:

2.2.5 考勤时间统计

以「考勤打卡」为数据源,具体设置参考下图:

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式参考2.2.1,计算「打卡状态」

字段类型选择数字类型,计算公式如下:

IF(打卡状态="迟到",DATEDIF(上班要求时间,打卡时间,"h"),0)

添加「分组汇总」节点,将迟到时间与早退时间以考勤归属周期、姓名、所在部门为分组字段进行分组,具体设置参考下图:

将分组汇总后的数据流与之前的数据流进行横向链接,具体设置如下:

2.2.6 外勤时间统计

本质上同「考勤时间统计」模块一致,详情参照2.2.5。

2.2.7 加班时间统计

以「加班申请」为数据源,具体设置参考下图:

添加「行转列」节点,将数据转为以「加班类型」为列字段,加班时长以求和统计为值,具体设置参考下图:

将行专列后的数据流与之前的数据流进行横向链接,具体设置参考之前的横向链接

2.2.8 计算「员工考勤统计」其他数据

添加「字段设置」节点,选择公式计算:

字段类型选择数字类型,计算公式如下:

考勤签到次数=考勤正常签退次数+考勤正常签到次数+考勤迟到次数+考勤早退次数

外勤签到次数=外勤正常签退次数+外勤正常签到次数+外勤迟到次数+外勤早退次数

请假/调休总时长=事假时长+病假时长+丧假时长+婚假时长+产假时长+陪产假时长+调休时长

请假总时长=事假时长+病假时长+丧假时长+婚假时长+产假时长+陪产假时长

2.2.9 计算工时

以「考勤打卡」为数据源,具体设置参考下图:

添加「字段设置」节点,选择公式计算:

字段类型选择数字类型,计算公式如下:

IF(TEXT(DATE(打卡时间),"yyyyMMddHHmm")<TEXT(DATE(打卡时间),"yyyyMMdd1200"),1,0)

添加以「外勤打卡」为数据源的输入节点,重复之前的动作,并将两条数据流进行追加合并

添加「数据筛选」节点,筛选出“上午打卡判定=1”的数据

以「考勤打卡」为数据源,具体设置参考下图:

添加「数据筛选」节点,筛选出“审批意见=同意”且“补签时间段=上午签到”的数据

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

CONCATENATE(TEXT(DATE(补签日期),"yyyy-MM-dd")," 08:30")

字段类型选择日期时间类型,计算公式如下:

DATE(日期文本)

与之前的数据流进行追加合并,具体设置如下:

重复上述动作,将时间判断改为下午,具体操作不再赘述

将两条数据流进行横向链接,具体设置如下:

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

CONCATENATE(TEXT(DATE(日期),"yyyy-MM-dd")," 12:00")

字段类型选择日期时间类型,计算公式如下:

CONCATENATE(TEXT(DATE(日期),"yyyy-MM-dd")," 12:00")

字段类型选择数字类型,计算公式如下:

IFS(ISEMPTY(CONCATENATE(TEXT(上午打卡时间),TEXT(下午打卡时间)))==TRUE(),0,ISEMPTY(TEXT(上午打卡时间))==TRUE(),DATEDIF(缺卡辅助日期,下午打卡时间,"h")-1.5,ISEMPTY(TEXT(下午打卡时间))==TRUE(),DATEDIF(上午打卡时间,缺卡辅助日期,"h"),ISEMPTY(TEXT(上午打卡时间))==FALSE(),DATEDIF(上午打卡时间,下午打卡时间,"h")-1.5)

添加「分组汇总」节点,以考勤归属周期、姓名、所在部门/班组为分组字段,对工时进行汇总,具体设置如下:

与2.2.8的数据流进行横向链接,具体设置如下:

链接输出节点,完成数据流配置

2.3 新建「员工考勤明细」数据流

2.3.1 上午考勤状态汇总

以「考勤打卡」为数据源,具体设置参考下图:

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式参考2.2.1,计算「打卡状态」

字段类型选择文本类型,计算公式如下:

IF(OR(打卡状态="正常签到",打卡状态="迟到"),打卡状态,"")

IF(TEXT(DATE(打卡时间),"yyyyMMddHHmm")<TEXT(DATE(打卡时间),"yyyyMMdd1200"),1,0)

添加「数据筛选」节点,筛选出「上午打卡判定」为1的数据

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

TEXT(DATE(签到时间),"yyyy-MM-dd HH:mm:ss")

添加以「外勤打卡」为数据源的输入节点,重复之前的动作,并将两条数据流进行追加合并,具体设置如下:

以「补卡申请」为数据源,具体设置参考下图:

添加「数据筛选」节点,筛选出「审批意见」为“同意”且「补签时间段」为“上午签到”的数据

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

IF(ISEMPTY(补签时间段),"","补签")

与之前的数据流进行追加合并,具体设置如下:

2.3.2 下午考勤状态汇总

本质上同「上午考勤状态汇总」模块一致,详情参照2.3.1,搭建完成后将两条数据流进行横向链接,具体操作如下:

2.3.3 请假/调休状态汇总

以「请假申请」为数据源,具体设置参考下图:

添加「数据筛选」节点,筛选出「上级审批意见」为“同意”的数据

添加「字段设置」节点,选择公式计算:

字段类型选择文本类型,计算公式如下:

IF(请假计算方式="小时",TEXT(DATE(请假开始时间),"yyyy-MM-dd HH:mm"),IFS(OR(请假时段="全天",请假时段="上午"),CONCATENATE(TEXT(DATE(请假日期),"yyyy-MM-dd")," 09:00"),请假时段="下午",CONCATENATE(TEXT(DATE(请假日期),"yyyy-MM-dd")," 13:30\")))

IF(请假计算方式="小时",TEXT(DATE(请假结束时间),"yyyy-MM-dd HH:mm"),IFS(OR(请假时段="全天",请假时段="下午"),CONCATENATE(TEXT(DATE(请假日期),"yyyy-MM-dd")," 17:30"),请假时段="上午",CONCATENATE(TEXT(DATE(请假日期),"yyyy-MM-dd")," 12:00")))

添加以「调休申请」为数据源的输入节点,重复之前的动作,并将两条数据流进行追加合并,具体设置如下:

将追加合并后的数据流与之前的数据流进行横向链接,具体操作如下:

输入2023年工作日历,与之前的数据流进行横向链接,具体操作如下:

链接输出节点,完成数据流配置

2.4 修改「员工可调休天数」聚合表

将聚合表名称改为「员工可调休时长」,将指标名称分别改为「加班时长」、「调休时长」、「可用调休时长」

2.5 修改「考勤确认」表单

「员工考勤、请假信息」模块的信息源改为数据联动「员工考勤统计」数据流

添加「工时」、「调休时长」、「考勤累计迟到时长」、「考勤累计早退时长」、「外勤累计迟到时长」、「外勤累计早退时长」、「工时」、「迟到总时长」、「早退总时长」、「请假/调休时长」、「事假时长」、「病假时长」、「调休时长」等字段,具体设置参考下图:

「考勤明细」子表单关联「员工考勤明细」数据流

「员工加班、出差信息」模块添加「工作日加班时长」、「周末加班时长」、「节假日加班时长」字段,数据联动「员工考勤统计」数据流,具体设置参考上图。

2.7 检查仪表盘

由于字段的修改与「聚合表」、「数据工厂」变动,需要检查仪表盘配置是否正确,修改仪表盘展示维度为小时,并在「考勤报表」仪表盘的考勤月报中添加展示「工时」字段。

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验