复制 MS Access 主表单记录,同时将父子链接保留在子表单中
Posted
技术标签:
【中文标题】复制 MS Access 主表单记录,同时将父子链接保留在子表单中【英文标题】:Duplicating MS Access main form record while keeping the parent-child link in the subform 【发布时间】:2014-02-06 21:03:11 【问题描述】:我有一个月度报告输入表单(数据源:MonthlyReports 表),其中项目信息子表单(数据源:项目表)链接在 ProjectID 字段上。 ProjectID 是 Projects 表中的 PK 和 MonthlyReports 表中的 FK。
我正在尝试使用“复制记录”按钮复制主月度报告表单中的记录,编辑复制的记录并将其另存为同一项目的新记录/月度报告。我想在复制后将项目信息(或 ProjectID 链接)保留在新记录中。当我复制记录时,它会创建一个具有唯一编号的新月度报告记录,但它不保留 ProjectID 外键,因此会创建一个没有 ProjectID 外键的不相关记录。如何修改宏或在单击复制记录按钮时添加 VB 代码以保持父子字段链接?
谢谢。
【问题讨论】:
【参考方案1】:简短的回答,如果我明白你在问什么,是不是。
当您在主表和子表之间建立关系时,它是一对(主记录)对多(子记录)的关系。一个孩子不能有多个父母。即使您尚未在数据库中定义此关系,当您通过字段将子表单链接到主表单时,(正确地)假定为一对多。
您需要做的是拥有宏,在创建新的主记录之后,创建一个新的子记录,然后将现有子记录的字段复制到新记录。最后,您需要将新子记录字段 [ProjectID] 的值设置为新创建的主记录的值。现在你有了完整的副本。
【讨论】:
以上是关于复制 MS Access 主表单记录,同时将父子链接保留在子表单中的主要内容,如果未能解决你的问题,请参考以下文章
MS Access - 基于同一张表但不同记录的表单和子表单