看过不少考勤系统,发现都有很多用户手动的地方,并没有实现真正的自动化...
是不是因为工厂的上下充满太多变数?就没有一个更完美的解决方案了吗?
通常工厂的上下班都是有一定规律的,不管怎么变,都是上下班...
早班
08:00-12:00
14:00-18:00
晚班
20:00-08:00
等等....

解决方案 »

  1.   

    我看过都会有班次的...
    都要用户去手动排班
    今天一个客户过来说他们的考勤情况:
    一天24小时都有人上班,每个人上班都不是确定,也许这边,也许是那班,并且不可预见,
    如果每次都要调整班次的话,那做人事的小姐都不知道要招多少个呢...
    我的意思是说可不可以不用排班,直接根据实际打卡来判断打卡是属于哪个班次的呢?
    ---
    楼上的大侠,可不可以加我的msn啊...我正有这方面的问题想请教呢...
    MSN: [email protected]
      

  2.   

    随便找家作hr系统的公司 要一个不就的了很简单的 我在benq做过类似的。
      

  3.   

    搜一搜,肯定有!=========================================================
    我的回复,尽可能为你分忧解难
    BLOG:blog.csdn.net/softj      --欢迎光临,有更多信息等着你!
    QQ高级群:5063844专研数据库    --大家进来聊一聊!
    MSN:[email protected]             --这不常用!
    Mail:[email protected]            --有什么问题可以和我来EMAIL!
    =========================================================
      

  4.   

    看来要做能通用的还真是天方夜谈啊...
    --------------------------------------------
    非也,我见过一个考勤系统,所有的计算项全部直接用SQL语句来完成,
    只是用户给出需求,照着填SQL语句,调试好后几乎零维护,要改也只是改改软件
    设置项中的SQL语句,超灵活,可以应付几乎所有的情况(在不修改软件的情况下)
    ,可惜人家当时说我的SQL水平太烂,于了不久就出来啦
      

  5.   

    如果大家打卡都有规律那就好说了...问题是考勤的关键就是要求能够判别是否正常,是否合理...这个理就是客户应用过程中的设定...
    ----
    ReViSion(和尚) :
    如果有什么好方案可否请教一二?讨论一下嘛...谢谢啦...
      

  6.   

    最灵活的方法,就是设定几个不同的班次,每个班次分别设定各自的算法,
    --------------------------------------------------------------------------
    算法包括怎么计算正常的出勤,和对异常的处理,
    排班时,排不同的班时,就对应了不同的算法以一个班次为例A:
    在班次中可以定义刷卡时间段,在时间段内的刷卡才有效,定义迟到早退的时间,定义
    怎么样才算是异常,比如说迟到30分钟算异常,
    还要定义如何算加班,迟到,早退,,现在给员工排定一天的班,A(上午)B(下午)
    那么上午上班时间段的算法就是上面设定的算法,
    不要把AB做为一个整体去处理,分而治之
      

  7.   

    公司130人,
    一个月的考勤,
    0.1秒钟搞定.
    用VB+MSSQL
      

  8.   

    Free_Windy(自由风) :
    我已加了...
    大家可以讨论一下,这考勤为什么不可以做得更加通用一些....
    当然不可能是绝对通用的...不然微软的东西也不会给大家说了...
      

  9.   

    Free_Windy(自由风):
    公司130人,
    一个月的考勤,
    0.1秒钟搞定.
    ------------------------------
    打卡记录Sum()一下也不止0.1秒呀,
    楼主高人
      

  10.   

    marbleqi(花岗岩) 的意思应该是用两个卡钟,上班跟下班使用不同的卡钟...
      

  11.   

    我在ERP中寫過考勤系統,異常數據太難處理了
      

  12.   

    不错,
    上班的工作日历与一个排班表,
    规则定一个上班与下班点的上界
    如:8:30上班,则8:00--8:30打卡有效,只允许一次
    8:31-9:00打卡算迟到,当然迟到也有几个等级
    超过都算无效<旷工>,
    如果有请假,外出,则应的天数则需手动补漏刷卡的吧,
    下面的继续
      

  13.   

    同情搂主ing.....考勤,是个令人头疼的问题!
    本人毕业后第一份工作就有搞考勤的尝试,时间是工作(VB+SQL  开发MRP)半年后开始,
    当时只有我一人做这个工作,上头给4个星期时间完成整个人事考勤工资。天啊,那段日子
    真难过!当时断断续续(还要参加其他模块开发)搞了半年,哈哈,惭愧ing...
    ============================================================================
    如果是一班制(每天上班时间一样)比较好办,
    1:规定每次打卡的正准时间(例如:上午8:00、中午12:00、
    下午14:00、下午18:00);2:规定打卡时间范围(例如:7:30--8:30、12:00-12:30、
    13:30--14:30、18:00--18:30,也可以定义为正准时间的前后30分钟);3:可以再定义打卡宽松时间(例如:迟到2分钟不算迟到),这比较适合迟到早退
    按“次”计算的情况;4:我把打卡状态分为:“正常”、“迟到”、“早退”、“补卡”、“未打卡”;5:规定节假日、班次(就算只有一班),目的是指明某一天某一个时间段该有哪些员工
    打卡;6:如果有加班情况,可以在之前或之后规定某段时间为加班时间,当然也要规定有什么
    员工在这次加班范围中;7:不在打卡时间范围内打卡,则当作没有打卡。这种情况的处理办法如下:
       A:补卡:考勤器坏了、停电、忘记打卡、意外等等,由操作员进行
    补卡处理。我的做法是直接向考勤表插入一条打卡记录。
       B:旷工:没有打卡又没有补卡。这里还需作一些处理,例如上班时打卡了,但下班
    没打卡,或者反过来,或者都没有打卡;
       C:请假、休假、临时调班:本来就不用打卡,除非加班;8:多次打卡:我用的是宽松方式,即只要有一次正常就算几次迟到都当作正常(例如:
    打了三次:7:50、8:10、8:12);如果几次都迟到就以迟到最少的为准;早退情况类似;要注意的是,“打卡”是一个时刻概念,上班、旷工、
    请假、休假都是时间段概念,例如员工请假,时间是9:00到15:00,或者跨天请假,请假
    中又包含节假日......
    =============================================================================
    如果是多班制(每天上班时间可能不一样)
    除上述几点外,还需设定某人某天某时段该上那个班次。比如先设定好下个月的班次安排,
    遇到特殊情况再作调动。
    =============================================================================
    考勤表中做触发器,每次打卡都进行计算,实时显示出打卡状态,既提醒打卡人又可提醒
    管理人;每天下班或某一个时间重新当天或前一天的打卡情况,这样就可以处理没有打卡、
    请假、旷工、休假等情况,最后把结果保存下来。最好不要等月末再计算,当然有月末重
    算功能会更好。考勤与工资是相结合的,能把考勤情况直接融合到工资的计算公式中是最好的,这个我不
    再细说了。
    =============================================================================以上只是我的个人的一点浅见,希望对楼主有帮助  ^-^
      

  14.   

    有做过这方面的朋友加我啊...
    我的MSN: [email protected]
      

  15.   

    楼上的朋友,你的msn加不到啊...
      

  16.   

    cnjack(龙飞九天) 
    你的MSN加不了啊!我也是做考勤的,感觉一般都好处理,但是维护量太大!一直想弄成通用的,但是没有成功!(有其他事,也没花太多时间)
    有兴趣的可以加我:MSN:[email protected]
    大家一起探讨一下啊:)
      

  17.   

    大家好!考勤方面我曾看过一个不错的系统。
    采用自动找班的理论,从目前的使用情况下,能做到99%的判断正确,
    哪怕有请假,出差,刷卡不正常的情况下,都能精确地报告异常。
    自动找班的理论:
    1、先建班次。
    2、对班次分组, 形成考勤方案,这是最核心的。组内按优先级处理,自动找班算法采用最优算  
       法。
       例如某考勤方案规律如下:
       方案名称        班次分组  优先级     班次       周期
       注晚班           A01      001     00:00白转夜    1
                        A01      002     18:00白转夜    1
                        A01      003     21:00白转夜    1
                        A02      001     18:00晚班      30
                        A02      002     21:00晚班      30
       以上班次可以实现1号一天凡该考勤方案的员工可以任一上三个班次,其后可以上后面任意两个班次
       如果是没有一点规律的可以把班次分组改成相同 结果如下
       注塑班           A01      001     00:00白转夜    1
                        A01      002     18:00白转夜    1
                        A01      003     21:00白转夜    1
                        A01      004     18:00晚班      1
                        A01      005     21:00晚班      1     
       算法一定要采用最优算法, 才能有效地提高精确率, 出差、请假可以采用系统伪补卡处理,用临时表处理3、考勤方案分配,可以针对部门、职位、员工进行分配 这样可以做到不需要每个人都分配。综上所述,考勤可以做到“一次维护,终生使用”,除非作休时间有大的改动。考勤处理是个非常复杂的事件,
    需要千锤百炼才能达到炉火纯青。听供应商说这个考勤结合门禁、消费系统用存储过程用了三千多行。
    考勤表结构使用as to结构才会更灵活, 反应基本事实。
    一般考勤系统考勤一个员工每天考勤一条记录的话,这样的表结构不灵活,
    不能支持一天多种类型请假,不能支持小、大夜班同时存在的情况等。更不能详细的反应考勤结果,字段如下:
    员工ID      int 
    部门ID      int
    考勤日期    DateTime
    考勤类型    int
    考勤子类型  int
    开始时间    DateTime
    始束时间    DateTime
    工时        numeric(8,4)
    工日        numeric(10,8)字段说明:
    考勤情况      考勤子类型
      1 休息      1平时休息/2周休日/3法定休息
      2 出勤      班次ID 
      3 请假      请假类型(事假、病假等)
      4 加班      1平时加班/2周休日加班/2法定加班/4..用户自定义.
      5 缺勤       0
      7 出差       0
      8 迟到       0
      9 早退       0
      10 夜班次数 用户自定义(1小夜班, 2大夜班)
      0 异常      异常信息代码(系统自定, 1 缺少上班卡、2、缺少下班卡等)工日 为了记录历史信息, 当员工有调动时,不同的方案有不同的工作时间。
    例:生产班、办公室班每天8小时, 但保安每天12小时,这样关联到很多问题,
        例如保安请假4小时,不是半天,而是1/3天。如果从15号保安班调到生产班, 
       那么15号之前的请假4个小时与生产班的请假4个小时的天数是不一样的,
       不得统一处理半天肯定会给薪资计算带来误差,一个员一天的考勤结果例如
    08:00 – 08:01  迟到
    08:01 – 10:00  出勤
    10:00 – 11:30  事假
    11:55 – 12:00  早退
    13:00 – 13:02  迟到
    13:10 – 13:30  休假
    13:30 – 15:30  出差
    15:30 – 17:30  缺勤
    18:00 – 01:00  加班
    23:00  - 01:00  夜班
    薪资系统,不仅仅要是与考勤系统,生产/计件系统、进销系统等,更有甚者需要访问其它服务器、不同类型的数据库。
    加上复杂条件判断,这样使薪资系统变得比考勤系统还要复杂。公式一定要做具体类似编译器的功能。
      

  18.   

    楼上的大侠...那个程序是什么名啊?
    可不可以下载到的?
    可以联系吗?我的msn: [email protected]
    谢谢!
      

  19.   

    哈哈,考勤是有点难度,
    以前我们公司的考勤所有要求出来的项目的计算方法(迟到,早退)都是自定义的
    ,而且可以自由的添加删除各个计算项目,
    ------------------------------------------------------------------
    所有的计算项目只是用SQL语句在程序中填充就可以,程序几乎0维护,对不同的客户
    ,仅仅是做些不同的报表而已,
    ------------------------------------------------------------------
    怎么样,羡慕吧
      

  20.   

    TO ReViSion(和尚):
    真有那么全面的考勤吗?
    不知道客户使用得怎样呢?
    tsp3ng(): 我加你了...---------大家可以将自己的经验介绍一下吗?谢谢了...
      

  21.   

    我做一个自动找班的程序,先定义班次,在看这个部门可能会上几个班次,...比较忙,有时间在K我有兴趣联系交流,我们的软件在珠三角占有率可以问的出来地:MSN:[email protected]
      

  22.   

    to djdeng:软件叫什么名字?公司名字?好好学习一下。
      

  23.   

    以前在csdn看到过。
    你搜索一下
      

  24.   

    用SQL语句填得专业才可以做到,如果要做成产品,需要普通用户都能操作
    --------------------------------------------------------------------
    只是针对不同的客户需求写几个SQL语句,如果全部做成客户都能操作的,那么
    我可以说,考勤一定不通用,据我所知道的资料,在珠江三角没有哪一家可以做到
    十分的通用又客户操作十分简单的考勤系统,以前富士康招标我注意到没有真正哪
    一家可以做到两者兼得,
      

  25.   

    一些公司考勤的某项的计算方法,并不是几个公式可以计算出来的,
    我记得我以前跟的一个客户的计算年假项目:写个有个七八百行SQL语句才搞定,
    我就不想信你用几个简单的公式可以搞定
      

  26.   

    公式只是用文字的形式表达给用户看。公式中有许多元素(变量) ,而这个变量在数据库内部可以对应一条、几条SQL,只是是合法的SQL即可。
    可以建一个变量表来维护变量与内部SQL的对应关系,在计算时找到变量对应的SQL传递几个参数就可以计算出来,返回一个值,然后用值代替公式中的变量即可,形成一个表达式交给SQL计算就能得到整个公式的结果。
      

  27.   

    关键是这些变量对应的SQL需供应商、至少对数据库结构非常熟悉的人才能写出来。变量表字段如下
     变量ID  变量类型 变量名称  计算体  数据类型公式如下
    应发工资 = [當前員工科目_基本工資] +[當前員工科目_加班工資] +[當前員工科目_崗位津貼] +[當前員工科目_技術加級] +[當前員工科目_出勤獎] +[當前員工科目_住房補貼] +[當前員工科目_工傷保險] +[當前員工科目_補上月_上月]当计算时,只能根据变量名称找到相应的SQL执行即可。
    结论:因为没有什么计算规则SQL语句不能表达,等于没有算不出来的工资。
    正如《和尚》所说的
    ------------------------------------------------------------------
    所有的计算项目只是用SQL语句在程序中填充就可以,程序几乎0维护,对不同的客户
    ,仅仅是做些不同的报表而已,
    ------------------------------------------------------------------
      

  28.   

    我们现在还没有开始实施.具体将会怎样还不知道.
    目前我们使用指纹考勤机的技术规格是
    考勤速度<=2秒
    误判率<=0.0001%
    拒登率<=1%有可能100个人里可能有一个人不能识别.
    不过应该可以杜绝代打卡了吧.
      

  29.   

    to:
    utmost100(斌)
    加我msn吧,交流一下,不知道可不可以,我的MSN是:[email protected]
      

  30.   

    考勤是比较复杂的问题. 
    有固定班次的比较好做.不管是缺打.多打都么有问题 , 加班直落也没有什么问题\,
    自动判定班次就比较复杂了 , (当然也有比较准确的软件 ,我朋友的一个貌似比较正确.但是我不知道他的算法 ,当然我分析过他的软件也是有局限性的)还有一个最复杂的情况就是  一天上十二个小时的班.,然后自动排班.根据数据来分析, 这个情况估计是做不出来 .反正我是想不出来算法
    不做考勤已经快一年了 ,但是原来想的比较多,大家 如果有兴趣,可以聊聊~~ [email protected]
      

  31.   

    ^_^   .以前还碰到一个客户 .礼拜六是要上班的..但是下午自由走的.没有固定的时间 .  而且那个集团是有2K人的一个单位 ,下面有好几个分厂 .管考勤的就那么一个人 .让她每个分厂去单独统计排班..不现实 ..只能自动排班 ...^_^ ...复杂啊复杂....改数据库就已经是改动程序了...和改程序有什么两样 >?客户不可能自己改的...如果这样人人都是程序员了..
    ==========================================
    我们的目标是让 我们的项目实施者 尽量少改动程序,数据库.存储过程 ,就能够完成每一个单位的考勤项目
    ==========================================
    为每一家定制 .不是我的目标