早班时间范围  7:00-7:30    15:30-16:00    上下班范围30分钟
中班时间范围  15:00-15:30    23:30-00:00    上下班范围30分钟
夜班时间范围  23:00-23:30    07:30--8:00    上下班范围30分钟考虑采用倒班自动识别, 根据刷卡时间来识别哪个班次, 上边这样,员工有可能随时进行倒班,或者替班,会出现班次重叠现象,无法识别到底是哪个班,请问大家 有什么好的建议呢。。?谢谢

解决方案 »

  1.   

    1.考勤时间表
    kqbc       sjleft   sjfw       sjright  ( 上班刷卡有效时间,时间范围,下班刷卡有效时间) 
    车间早班   030030  07301530    030030
    车间中班   030030  15302330    030030
    车间夜班   030030  23300730    030030上班刷卡有效时间 
      例车间早班:
      0730 前后30分可以刷卡,小于0730-030 或大于0730+030为无效刷卡,大于0730,至0800范围内刷卡为迟到,根据规则扣罚。  1530 前后30分可以刷卡,小于1530-030 或大于1530+030为无效刷卡,小于1530,至1500 范围内刷卡为早退,根据规则扣罚。
    2.员工排班表员工编号(fnumber) 考勤班次(kqbc)4763               车间早班
    4763               车间中班
    4763               车间夜班
    4765               车管中班
    4765               车管夜班
    4766               厂内巡逻中班
    4766               厂内巡逻夜班
    -------------------------------
    以上员工,当月可能的班次。 
    更改原则,员工班次发生变化,那调整排班表,无变化,则延续使用。3.员工表employee编号bh    卡号kh   考勤班次kqbc  自动倒班iszddb
    4763       17556   倒班              1
    4700       15521   行管正常          04.原始考勤表编号bh  卡号kh   日期rq         时间sj   
     4763    17556   2008-04-01     23:31:00
     4763    17556   2008-04-02     07:31:005.处理思路
    对于自动倒班员工,依据班次自动识别法识别考勤循环员工表 select * from employee where iszddb=1
       循环当前员工考勤日期范围(2008-04-01 至2008-04-30)  
          循环当前员工当前日期原始考勤  例4-1日  查找范围在 2008-03-30至2008-04-2 内考勤,即前后共三天。
             循环当前员工排班表
               查找当前班次内是否有刷卡记录:上下班同时满足条件,有,再进一步处理迟到早退。--------------------------------------------------------------------------------------
    存在问题,如下刷卡时:
    2008-4-1   15:31:00
    2008-4-1   23:31:00
    2008-4-2   07:12:00
    2008-4-2   15:31:00会识别为   4.1    (车间中班,车间夜班) 正常,正常,迟到,早退。同时4.2日会有考勤,这样就凭空多了一个班次。考虑把已经处理过的刷卡记录置标志1,循环其余班次时不再考虑标志为1,这样也不可以,因为实际同时连上两个班时,有可能员工只刷一次卡。这样,标志又失效了难道只能修改考勤时间范围这条出路了吗?
                
      

  2.   


    上班时间同一个人取最大时间
    下班时同一个人取最小时间  三个段一union 
    or 
    join
      

  3.   

    可以用SQL找出来上了那些班次,不过就系统设计来说,肯定也有人共来调整的功能。
      

  4.   

    不用排班表也可以, 通过对同一卡的刷卡数据分析。
    间隔在10小时之内的为一对进出记录。
        [align=center]====  ====
    [/align]