考勤中的班次

班次在考勤中占据重要的地位,班次定义,就是员工上下班的标准,就是考勤的标准,其重要性不言而喻。企业中存在着各色各样的班次,而且不同的企业对班次的定义及习惯说法也不一样,理清班次的定义及其相关联的术语含义就非常有意义。下面分几个方面来描述班次及其在企业中的常现表现。

一、基本班次的组成:
    班次定义了员工一天的上下班时间及规则,班次是由多个班段组成的,了解班次之前先了解班段。下面先说明一下相关的术语,这些术语可以辅助我们更好地交流。就类似于我们谈软件的“设计模式”一样。
1、固定班段 指上下班时间固定的班段。例:指定上下班时间为 8:00-12:00.
2、自由班段 是指上下班时间是由员工自由掌握的。例:允许员工 7:00-9:00之间的任一时刻上班,11:00-13:00的任一时刻下班,但要保障上满4小时。这类型的班段可称为自由班段。
3、休息时段 在一个班段内部,允许存在多个休息时段。
4、用餐时段 同休息时段类似。用餐时段可分为两类:固定用餐和自由用餐,举例说:规定中午用餐 11:30-12:30 ,叫固定用餐,允许中午 11:00-13:00之间用餐,但规定用餐时间只能是1个小时,叫自由用餐。如果规定了员工可以自由选择11:00-12:00 11:15-12:15 11:30-12:30之间的一个时段用餐,则可称为浮动用餐。
由上面4个基本元素组合而成的班次,称为基本班次,其中休息时段或用餐时段是从属于某个班段的,这样组成的班次,能够适应大部分的情况。班次除了规定上下班时间规则外,还要定义该班次中,怎样才算迟到早退,怎样才算缺席旷工,还有其它什么异常等等,如含用餐时段的班次,就有用餐超时的异常。(每个班次都定义迟到早退缺席旷工等设定,会比较啰嗦,可做个全局默认值,如果班次中没有设定就使用默认值)
二、特殊班次
1、休息 休息作为一个特殊的班次指明了当天不用上班。注意指定休息并非指定当天是周日或节假日,这由其它地方定义。指定休息仅仅是指定当天不用上班。
2、自由上下班 例:规定员工当天 7:00-19:00可自由上下班(多个班段),只要保障上足8小时即可,或者上了多少小时班算多少。周六周日自由加班就是属于这种情况。
3、互斥班组 将多个互斥的基本班次组合在一起,构成一个互斥班组。所谓互斥的,是指各个班次其上下班时间相互不交叉。计算考勤时由系统自动识别匹配是哪个基本班次。这对于两班倒或三班倒的情况下可以有效地减少排班的工作量。不建议使用互斥班组来进行排班,因为在员工多打卡或少打卡的情况下,同时加班,请假会让班次是的刷卡点改变,这都使得智能匹配过程容易产生错误。明确排班则没有这类错误。考勤应是非常严肃的,哪怕是0.0001%的错误,都会给你的考勤软件蒙上污点。
4、动态班次 这是一种非常特殊的班次。正常情况下,班次的定义是预先定义的,而动态班次的班次定义是由程序动态生成的。好象这不好理解,举例说,学校老师按课程表上下班,上课前30分钟要签到,下课后即可下班,没课可以不来。此时可依据课程表动态生成一个基本班次来参与考勤计算。如果不使用动态班次,则需要预定义很多个基本班次,而且也加大了排班的难度。很明显,这种班次需要二次开发定制才能使用。
 
三、“工作天”在班次中的重要性
   班次解决了员工当天该如何上下班,排班指定了员工当天上哪个班次。这个天并非我们时常说的24小时的一天,而是“工作天”。一个工作天可能不止24小时。班次中定义工作天的起止时间点,加班可能会改变该时间点,从而使得一个工作天实际上不止24小时。
“休息”作为一个特殊的班次,其不用指定工作天起止点。
班次中如果不定义工作天,那么对于跨天加班及连续上班36小时的现象就不好处理。这里说一下员工连续工作36小时的现象(变态吧),
例如:两班倒时,1号上夜班,一直加班到2号,然后接着上白班,2号下班后又加班。好象说,这不可能吧! 我说说我知道的比较合理的解析。一种情况是下班后安排几个员工到医院守护病人,然后第二天继续上班,自然得付给员工加班费了。其实并不是那员工强壮得变态,他们可以睡觉的。另一种情况是,安排员工24小时待命,机器一好就开始生产,自然这也是得给员工加班费的。所以,面对异常现象时,不要盲目下结论,调查分析后更有发言权。
对于该异常,应该将加班时间分配到相应的工作天去,这也需要工作天定义。
定义了工作天,考勤体系更为完整。
四、用面向对象的类来因应企业班次的发展
   以上所说的班次,能对应企业中的普遍情况,但就能适应企业中的全部情况了吗?那肯定是不行的,随着企业的发展与需求的变化,班次也将随着变化,但无论如何变化,总要规定员工是如何上下班的,如何打卡的,怎样才算是异常等等信息,对于考勤计算来说,这个班次又是如何匹配刷卡的,如何匹配工作天的,等等信息总要在班次中定义,排班也一样,无论采用何种排班方法,总得给出当天排的是什么班次。用写SQL过程来计算考勤过程的方法,因为其对模块化及面向对象均不支持,在需求发生变更时,改动代码或看别人的代码都将变得无比艰难。用面向对象的软件方法可以在企业有新的班次类型出现时,轻松面对,而无须对软件大动干戈。用面向对象的方法则需要建立一个正确的考勤模型体系,只要考勤模型不变,变化就尽在掌握中。
//CSDN寫文章不好用,點“發表文章”後,文章就丟失了,害我重寫了兩三次,如果提交再失敗,都不想再寫了。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值