首页 文章

将子表单中的新记录与父表单中的记录相关联

提问于
浏览
3

我正在MS Access 2010中为非营利组织创建一个采购数据库,并且遇到了一个我似乎无法使用其他资源解决的问题 .

我有两个与此讨论相关的表,一个是采购订单,另一个是订单项 . 每个行项目记录都有一个采购订单编号(实际上是一个文本字段,因为允许使用字母),启用了“强制参照完整性”,一个PO到多个购买行 . )为了编辑PO,我有一个表单,我最初使用向导创建的,但从那时起经过大量修改 . 在PO编辑表单中是一个子表单,它显示采购行表的数据表视图,由主表单中当前的PO过滤 .

最初,当我在子窗体中创建新记录时,它会自动将链接PO字段设置为当前PO . 这样,新的采购线记录与当前采购订单相关联 . 最近,在链接字段中创建的新记录没有任何值,除非我手动选择该列中的PO,否则记录在保存时会从视图中过滤掉 .

所以问题是,什么属性控制如何在这种类型的子表单中初始化新记录?还有其他问题可能会导致这种行为吗?

不幸的是我没有立即注意到这个问题,所以我不知道它在工作和失败之间发生了什么变化 . 此外,它似乎是间歇性的,工作了几天而不是其他人(但在一天内从未改变过 . )我认为这只是意味着我错过了另一个变量 .

根据我的研究,我在尝试之前尝试了一些事情:

以前,子表单的“链接主字段”属性设置为父表单的“ID”字段 . 我现在在主窗体中创建了一个链接到该字段的文本框,并将其设置为主字段 . 说实话,我不明白这会有什么帮助,但多个指导指南推荐它 .

在购买行表中创建所需的链接字段 . 这可以防止记录消失,但不会更改初始化 .

强制执行两个字段之间的参照完整性 . 正如我所说,它现在已经执行,但最初并非如此 . 这没有引起任何明显的变化 .

在进入子表单之前手动保存记录 . 同样在退出之前保存子窗体记录 .

非常感谢您的任何建议 .

2 回答

  • 0

    在子窗体上,确保将“链接子字段”和“链接主字段”属性都设置为创建关系的数据库字段 . 如果父窗体绑定到包含创建关系的关键字段的记录源,则不需要指定要链接的文本框或任何其他控件,只需指定字段的名称 .

  • 1

    我知道这篇文章比较老,但我刚刚遇到这个问题并找到了解决方案 .

    我想你的数据库是分开的 . 当您的Access版本大于数据库的内置版本时,问题就出现了 .

    从前端删除表格,然后重新链接到它们 . 重置您的表单主/子字段,一切都应该正常工作 .

    希望这有助于将来的其他人 .

相关问题