每周时间跟踪的数据库设计

时间:2013-09-12 19:37:28

标签: ms-access database-design

我打算创建一个数据库来跟踪用户在M-F上的时间。每周应该在星期一开始并持续到周日。

我有一个填满了我的整个用户群的表,所以我知道我需要为哪些用户创建条目以及它们属于哪些用户。到目前为止,我已经提出了一个由以下字段组成的表来跟踪条目(以及填充字段的示例数据):

Field Name in table (Example of possible data)
---------------------
Employee (John Smith) 'String
Unit (Quality Assurance) 'String
WeekOf (9/9/13) 'date

InMonday (6:30) 'string, validate either a time in/out or N/A if holiday/vacation
OutMonday (3:15) '^^
HoursWorkedMonday (8.00) 'total hours worked
VacationMonday (0.00) 'if N/A for time, should have hours here
OvertimeMonday (0.00) 'any additional work hours should go here

对于这个例子,我必须为一周中的每一天创建输入/输出(并且可能跟踪每天的日期)。这是无关紧要还是有一个看似更好的组织来跟踪每周时间测量?我应该使用一个带有单位指示的表还是每个单位有多个表?

2 个答案:

答案 0 :(得分:2)

通常它是一个带有Date字段,In字段和Out字段的表。这是非常标准的时间表数据。看看this guy如何设置它。

确保您在时间表中使用了员工ID,然后您将拥有一个相应的员工表,其中包含所有相关信息(ID,姓名,地址,以及您存储在他/她身上的任何其他信息)。

答案 1 :(得分:1)

虽然这个项目在技术上是可行的,但我不得不质疑在Access中自己制作它的价值。

  1. 主要问题在于安全性:

    • 作为桌面程序,这可以非常容易地在没有预防措施的情况下进行破解。请记住,使用Access,用户界面和设计器界面默认是相同的
      • 如果这将是一个简单,直接的数据库,有动力的用户只需要打开导航面板,他们就可以添加/编辑/删除所有时间表。
      • 如果您隐藏导航面板,用户可以快速进行谷歌搜索并学习点击F11(或者无论哪种方式偶然找到它)
      • 您可以定期(每天?每小时?)将数据从可公开访问的后端传输到普通用户无法访问的归档数据库。这可以工作,但仍然为他们提供了编辑记录的窗口。如果你不做正确的转移,他们仍然可以添加旧记录。
    • 作为 SharePoint 上的网络表单,这可能相当安全。如果您有Sharepoint,我建议您这样做。
  2. 您还应该考虑您的开发时间。这是从餐馆到工厂再到学校等许多行业的非常共同的业务任务。因此,已经有大量廉价的基于Web的选项,您可以开始使用今天。我甚至会假设其中一些包括按部门分列数字的摘要评论。

    我自己从未研究过这些,但快速谷歌搜索找到了这个有趣的页面:http://en.wikipedia.org/wiki/Comparison_of_time_tracking_software