更新联结表

时间:2013-04-30 17:37:31

标签: vba ms-access ms-access-2010

这是我的表格

Proposal
--------------
Id | ProposalNo

SalesCall
---------------
Id

SalesCallReference (Junction Table)
---------------
Id | ProposalID | SalesCallID

销售电话可与许多提案相关

所以在我的销售电话表格中,我得到了一个连续的子表单,列表为proposalNo。有一个组合框可以显示并选择要链接的提案。

但是当我选择新提案时,MS-Access会为提案设置新ID,而不是salesCallReference.id

因此它创建了新的空提议。

如何仅更新联结表SalesCallReference以及为什么MS ACCESS在添加提案时为提案创建新ID?

子表单中的组合框有2列,proposalNoProposalId。我试图在组合框的点击事件上更新隐藏的proposalId文本框,但没有运气。

如果有帮助,这是我加载子表单的查询

SELECT Proposals.ProposalID, Proposals.ProposalNo, SalesCallReference.ProposalID, SalesCallReference.ID, SalesCallReference.SalesCallID AS ReferenceSalesID
FROM Proposals 
   INNER JOIN SalesCallReference ON Proposals.ProposalID = SalesCallReference.ProposalID;

谢谢

1 个答案:

答案 0 :(得分:2)

听起来主要表单使用SalesCall(或基于SalesCall的查询)作为其记录源。在这种情况下,使用SalesCallReference作为子表单记录源,并将链接主字段设置为SalesCall.Id,并将子字段链接到SalesCallReference.SalesCallID。这样,新的子表单行将继承"继承"来自父表单的SalesCallID值。

在子表单中使用ProposalID的组合或列表框。