我有一个关于在数据库中使用三个表的具体问题。表1称为人员,并列出了员工的姓名。
表2和表3是相同的,只列出了两种不同类型的加班(长和短),以及OT的时间,OT的日期和空的分配到/被选择的字段。
这是一个想法,我只是不知道如何实现它。我想创建一个表单供人们输入他们的OT选项,然后自动移动到列表中的下一个人。举个例子,Rich Riphon会首先点击我发送的链接,然后会打开一个表单,显示他的名字,由第一个表格填充,并显示两个下拉菜单,从Long填充OT和短OT表。他会从每个中选择一个(或无,这将是一个选项)并提交它。
表单操作是将他的名字放在他选择的OT的Assigned字段中,并在Picked字段中放置Yes。
当列表中的下一个人打开表单时,它已下移到人员列表中的数字2,Cheryl Peterson,并向她显示剩余的OT选择(不包括那些在Picked列中有Yes的那些)。 / p>
任何建议或意见或更好的方法都将受到赞赏。
答案 0 :(得分:0)
首先,我不认为ms访问能够(轻松)基于超链接启动进程。您可以通过将宏名称传递给cmd提示符来执行某些操作,但要使其正常工作需要一些掌握。您是否可以创建一个登录表单来获取当前用户?如果您这样做,您实际上不需要显示人员列表,只需跟踪尚未响应OT请求的人员。基本上,此时您在表单上需要的是可用OT的列表和创建分配的按钮。另外,对于OT列表仅具有一个表并且为加班类型(长/短)添加列可能更容易(并且更好的设计)。
答案 1 :(得分:0)
如果谢丽尔不是获得表格的第二人怎么办?你的概念就在窗外。
相反,我会保留一个包含所有用户名及其安全级别的表。经理可以看到一切,个人用户只能看到他们的记录。这可以通过使用OT Picks表单后面的查询来完成,并且可以由当前用户过滤或根本不过滤。我已经完成了许多这类“用户控制”数据库,它们都运行良好。
至于实际的OT跟踪,我同意Steve的帖子,因为它应该在一个表中完成。这将是被称为“规范化数据”的概念的首选方法。您确实希望尽可能少地存储数据以保持数据库的大小。例如,您的登录表将包含以下字段:
你的OT表看起来像这样:
然后,只要您需要编写查询以报告OT小时数等等,就可以在两个表中的UserID字段上加入这两个表。