MS Access 尝试在表中查找与组合框选择无关的相关记录

MS Access trying to find a related record in a table that doesn't have anything to do with combo box selection

提问人:Tiffany 提问时间:11/17/2023 最后编辑:philipxyTiffany 更新时间:11/17/2023 访问量:32

问:

由于我们的建筑承包商和客户的报告要求,我正在开发一个数据库,以便在我们的会计系统之外输入和跟踪特定类型的发票。“输入新发票”窗体有问题。

我有级联下拉列表,因此当选择作业#(框#1)时,供应商框(框#2)仅显示与该作业相关的供应商;然后,采购订单编号框(框#3)仅显示与该作业和供应商关联的采购订单。

我在 和 表之间创建了一个新关系,以便将供应商名称拉入以运行报告,因为它只给了我 SupplierID。当我选择作业编号(框#1)时,它会弹出错误“您无法添加或更改记录,因为表'列表 - 供应商'中需要相关记录。供应商表应与选择作业编号无关。InvoicesList - Suppliers

在填写采购订单信息时,我有一个工作#的下拉选项,以确保没有错别字。(我正在尝试降低键入错误的风险。路径流为:添加包含总承包商信息的作业 >添加与该作业关联的供应商和采购订单信息,>添加与作业#、供应商和供应商采购订单关联的发票。由于级联下拉列表,发票表单不允许使用 job#,因此我不得不使用 JobID。

“作业#”框属性的“行源”行中的代码:

SELECT DISTINCT [PO Setup].[Job#], [Job Setup].[Job#], [Job Setup].[Job Name] 
FROM [List - Suppliers] 
INNER JOIN ([Job Setup] 
INNER JOIN [PO Setup] 
ON [Job Setup].JobID = [PO Setup].[Job#]) 
ON [List - Suppliers].SupplierID = [PO Setup].Supplier 
ORDER BY [Job Setup].[Job#]; 

在输入新发票时,需要引用 Job# 字段中的 JobID 键,并且需要 job# 和名称。Job SetupPO Setup

下面是 job# 组合框查询。在建立新关系之前,它一直有效,并且它适用于“编辑发票”窗体上使用的相同行源和查询,这与“输入新发票”窗体类似,但不允许输入或添加数据。

用于 Job# 组合框选择的“新发票:查询生成器”的图片

对于那些不熟悉建筑的人:每个工作都有一个总承包商 (GC),一个 GC 负责监督该工作的许多供应商。一个作业的每个供应商可以有多个采购订单。 具有整体作业和 GC 信息,同时具有与作业/GC 关联的供应商和 PO 特定信息。Job SetupPO Setup

我做错了什么?

如何修复或让 Access 停止要求相关记录?List - Suppliers

我尝试结束行源代码以排除与 FROM 和 FROM 相关的任何内容,以及“SELECT 语句包含拼写错误或缺失的保留字或参数名称,或者标点符号不正确”错误。List - Suppliers

我复制并粘贴了“编辑发票”表单,将级联组合框的表单引用从“编辑发票”更改为“新发票 2”表单名称,并将其更改为可以输入数据和添加的内容。这些是所做的唯一更改,“编辑发票”表单有效。对于新的“新发票 2”表单,我也遇到了同样的错误。

MS-Access 数据库设计 级联下拉列表 MS-Access-Forms SQLCODE

评论


答: 暂无答案