Access快速开发基础教程
网站公告
·Access专家课堂QQ群号:239158550    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 生产应用

【Access小品】眼见为虚--排班管理示例

时 间:2015-01-15 17:09:49
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【Access小品】眼见为虚--排班管理示例
正 文:

  有个成语叫做眼见为实,这说明在人的所有感觉器官中,人们最为信赖的是视觉。不过视觉也并不是总能正确的感知,所以才有魔术专门来欺骗人的眼睛,使人们感到新奇而不可思议。

  看见的并非真的存在,你可能不大相信这种情况与数据库设计会有关系。如果你没发现这个问题对数据库设计有实际意义,只能说明你还没遇见这种问题,或对遇到的问题还没有向这个方向去思考。你可能知道考勤这个事情,因为老板总是在你迟到早退时,扣你的工资奖金,你会很心痛,所以对这个事情是熟知的。当然,我不关心老板是否该扣你的钱和怎么样扣你的钱,那是你和你的老板之前的事情。

  我关心的是如何记录考核的数据,为什么关心这种类型的数据呢?因为考勤与人数和天数相关,它们会形成一个笛卡尔集,也就是记录的条数为人数乘以天数。当人数很多的时候,这个数据量是非常之大的。今天在论坛看到一个版友问排班怎么设计,排班和考勤类似,也是人数与天数的倍乘的关系。这样类型的数据还很多。

  对此类数据我们该如何记录呢?回答这个问题之前,我们要引入异常管理的观点。什么叫做异常管理呢?所谓异常当然是正常的对称。诸如考勤、排班这类数据,它们有一些共同特点。比如考勤,通常像你一样喜欢迟到早退的捣蛋鬼并不多,所以你是异类,你的行为是异常,对你的迟到早退进行重点管理就叫做异常管理。排班也一样,通常情况下多数人都在上班,只有少数人在轮休,少数的轮休相对于正常的上班便是异常,重点管理休假便是异常管理。

  当你明白了这个观点,那么你就不难想到在数据库中,我们正真需要记录的不是全部数据,也不是正常数据,而仅仅是异常数据。这样做的益处在于,存储和处理的数据量极大的减少,由此带来的效益和效率是不言而喻的。可是问题接踵而来,如果仅仅是记录了异常的数据,也就是考勤中的迟到早退的数据,或者排班中的轮休数据,那怎么显示出全部人员在某个日期的考勤情况或排班情况呢?

  你不必对这个问题产生恐惧,在程序设计中这个问题是可以容易解决的。而且解决的方法有很多,那么在本例中给初学者提供一种处理的方法,供同志们参考。在这个例子中你所看到的完整数据,其实并不是全部保存在数据库中的,这就是程序的魔术,相信你会喜欢。
 
示   例

点击下载此附件
 

视  

点击图片看大图



Access软件网QQ交流群 (群号:115180141)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助