访问查询以了解哪些子表单已完成或尚未完成

Posted

技术标签:

【中文标题】访问查询以了解哪些子表单已完成或尚未完成【英文标题】:Access query to know which subforms have or have not been completed 【发布时间】:2015-03-26 21:24:04 【问题描述】:

我正在开发一个数据库来跟踪用于生产车间的产品的组装过程,这与路由器非常相似。有一个包含 33 个子表单的主表单 (frm_WO)。每个子表单代表流程中的一个步骤,并链接回父表 tbl_WO 中的字段 WONum。子窗体按生成顺序列在主窗体上,但不以任何方式相互链接。技术人员单击“通过/失败”复选框以指示该步骤已完成。我想写一个查询,告诉我每个产品在生产过程中的位置。例如,如果小部件 X 有 frm_Process 1 的数据(没有别的),小部件 Y 有 frm_Process1 和 frm_Process2 的数据(没有别的),小部件 Z 有 frm_Process 1、frm Process2 和 frm_Process 3 的数据(等等),我希望能够快速查询并让它吐出如下所示的数据:

小部件 X 进程 1 小部件 Y 过程 2 小部件 Z 进程 3

由于子表单没有链接,这可能吗?在每个子表单的通过/失败状态字段中进行查询的最佳解决方案是什么?

我非常非常陌生,所以请尽可能简单地做出任何回应。

谢谢!

【问题讨论】:

为了回答您的问题,我们需要更多信息。子表单究竟是如何链接到父表单的? tbl_WO 有哪些属性(列)? tbl_WO 有 WO 编号、零件编号、数量、开始日期、结束日期。子表单通常包含 WO 编号(通过组合框链接链接到 tbl_WO 中的 WO 编号)、“通过/失败”和完成日期。子表单之间没有链接,只有 tbl_WO 与每个单独的子表单(也称为流程步骤)的一对多关系。这有帮助吗?谢谢! 【参考方案1】:

我建议你添加一个表,并将它们放在如下所示的关系中:

好处:现在您可以查询哪个小部件完成了多少进程。

SELECT wo.WO_Number AS Widget, pr.process_ID AS Process
FROM tbl_WO AS wo INNER JOIN tbl_WO_processes AS pr ON wo.WO_number = pr_WO
WHERE WO_Number = [the widget your are looking for]

现在您需要确保每个子表单都将其 process_ID 自动写入表中。

这将为您提供如下表格:

Widget | Process
X      | 1
Y      | 4
Z      | 9

使用一些 VBA 代码,您可以将其转换为您想要的形式。

这也可以接受吗?某些小部件是否偶尔会跳过一个过程?如果是,我的解决方案无法正常工作。那么你需要一个多对多的关系。

让我们了解您计划如何进行。

【讨论】:

以上是关于访问查询以了解哪些子表单已完成或尚未完成的主要内容,如果未能解决你的问题,请参考以下文章

哪些用户完成了列表:如何以尽可能少的步骤查询?

Alpha 冲刺 12/12

java 子线程 回调 主线程

表格未完成时如何提醒

数据库完成后在 Access 中创建报表

如果 git commit 消息以命令式编写,我该如何澄清尚未完成的工作? “不添加散列”或“没有/不添加散列”?