1.我正在做一个考勤系统,到加班部分,也就是说如果从晚上18:00加班到第二天的14:00,这样子的话我刷卡就不知如何判断了??2.我们在刷卡的时候,都有一个有效的时间段,比如8:00上班,那么可以设置7:30至8:00之间的这段时间刷卡有效!下班也一样!
但是如果是下午17:30下班,晚上18:00上班,那么刷卡的时候要怎么判断到底是上班呢?还是下班?有没有什么比较好的解法?3.考勤系统统计时,速度很慢,有没有什么好的优化建议??因为急着投入使用,关系到饭碗问题,所以请各位兄弟们帮帮忙!在此先谢了!
但是如果是下午17:30下班,晚上18:00上班,那么刷卡的时候要怎么判断到底是上班呢?还是下班?有没有什么比较好的解法?3.考勤系统统计时,速度很慢,有没有什么好的优化建议??因为急着投入使用,关系到饭碗问题,所以请各位兄弟们帮帮忙!在此先谢了!
解决方案 »
- 错哪了???
- 发个 前两天做好的一个免费工具软件,顺便散分。别骂垃圾啊,鼓了一天的勇气才发上来的。:)
- 如何使用ado方式在打开excel后用sql语句在里面查询某个内容
- access中如何判断一个表是否存在?
- MSHFLEXGRID数据保存问题
- 请问:退出本人开发的软件时 Win98 总是报一个 Kernal32 错误,如何解决?急急急!!!!!
- 请教:怎么把qbasic文件*.bas 转换成执行文件*.exe ?能详细的讲一下吗?
- 请问水晶报表怎么刷新啊???还有为什么只能显示日期不能显示时间呢?
- 如何解决:实时错误'3075':语法错误(操作符丢失)???
- 帮忙作道题,有结果另加分
- 错在哪里,来者有分!
- 求教改写文件路径代码,谢谢!!!
1 设定时段方式。就是你现在用的方式。
* 在上班时段内同一张卡多次打卡只有最后一次有效。
* 在下半时段内同一张卡多次达卡只有第一次有效。
对于跨夜加班和班后加班都可以通过加班单的方式解决。加班单中列出加班起始和终止时间,时间搜索流程据此设置上下班时段。2 设置标志来标记上下班。
如果是与门禁机结合的考勤系统,可以将进门记录为上班,出门标志为下班。
使用普通门禁机的,可以用上班或下班两台门禁机分别打卡。根据机号来区分上下班。这种方式适合于工厂等大量人流同时上下班的场合。
给考勤机加一个按钮。按动按钮后,进入上班或下班状态(要有显示)。保存记录时,同时保存此状态。这种方式适合于同一台考勤机所考勤的人员,使用相同的时间表。
这些标志将省略分析过程,是数据处理大大加快。关于数据处理速度
处理速度慢的主要原因是按天和人做两层循环。还要做许多例外判断。
建议首先将正常情况的数据进行批处理:
inset into yuebaobiao select cardid as kahao, cTime as shangbanshijian from timerecord, ShiftTable where cTime>=#2003-04-01# and cTime<#2003-05-01 and cTime-int(cTime)>=#7:30# and cTime-int(cTime)<=8:00 and shift='正常班' and timerecord.cardid=ShiftTable.cardidinset into yuebaobiao select cardid as kahao, cTime as xiabanshijian from timerecord, ShiftTable where cTime>=#2003-04-01# and cTime<#2003-05-01 and cTime-int(cTime)>=#17:30# and cTime-int(cTime)<=18:30 and shift='正常班' and timerecord.cardid=ShiftTable.cardid 然后再根据加班表、请假表等进行特殊情况的数据处理。
谢谢你的帮助,我还有一个不明之处,就是如果我采用第一种方法的话,那么我要如何去判断上班与下班时,刷卡记录的第一次与最后一次呢?