强制表中的 2 个字段匹配另一个表中的 2 个字段

问题描述 投票:0回答:1

这里是 Microsoft Access 的新手,所以这可能很简单。

我有3张桌子:

  • 1 与供应商
  • 1 有订单
  • 1 个带发票

我想要实现的流程工作是首先设置我的供应商,然后添加订单并为每个订单设置供应商,当我收到发票时添加发票并在订单中将其链接到发票。

现在我有以下关系:

Relationships

所有关系都是由查找向导建立的。

设置发票(Factura)时,我使用下拉菜单添加供应商(Proveedor)。 然后,在设置订单 (Albaran) 时,我首先使用下拉菜单添加供应商,然后选择发票。

我现在要解决的问题是如何让订单选择发票的下拉菜单只显示与订单相同供应商的发票。

我尝试在订单和发票表中添加供应商之间的关系,但是当我强制数据完整性时,它显示“未找到唯一索引”

我无法直接在发票表中包含订单,因为同一张发票可以有多个订单(因为我每月收到一张发票,并且每月执行多个订单)。

ms-access ms-access-2016
1个回答
0
投票

您需要使发票下拉列表依赖于供应商下拉列表。您可以通过定义发票下拉列表的来源来完成此操作,在其中添加表单中的供应商下拉列表作为供应商的条件。

示例:

SELECT Factura FROM [Facturas Recibidas] WHERE Proveedor=Forms!mySupplierDropdown;

请选择正确的下拉列表名称。 对于供应商下拉列表,您创建一个 AfterUpdate 事件,您可以在其中写入

Me!myOrderDropdown.Requery

再次:选择订单下拉列表的正确名称。

补充建议:避免在表或字段名称中使用空格字符。这总是会导致问题,因为您总是必须将它们放入方括号中,以便 Access 将它们作为一个对象进行处理。请改用下划线字符,这样可以保持可读性。

© www.soinside.com 2019 - 2024. All rights reserved.