ACCESS SubForm:尝试添加记录

时间:2011-10-31 10:15:49

标签: ms-access

我有一个非常简单的访问数据库,其中两个表通过1-M关系与参考完整性约束链接。我想通过两种形式管理数据。第一个显示第一个表的每个单个记录,并提供一个打开第二个表单的按钮,该按钮仅显示haging引用字段的记录,其中第一个表的值为recods主键。

问题在于,如果我尝试在第二种形式中添加新记录,我会收到警告,我用作引用的记录字段未设置为包含在主表的键中的值。但是,当我尝试添加新记录时,我预计这是由表单自动完成的吗?

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您正在使用某些过滤条件打开独立的第二种形式(即,实际上不是子表单)。解决这个问题的一种方法是:

  1. 将隐藏字段添加到绑定到外键字段的第二个表单
  2. 在打开第二个表单时将外键的值作为OpenArgs DoCmd.OpenForm参数传递
  3. 在Form_Open事件中,将隐藏外键字段的DefaultValue设置为等于您在步骤2中传递的OpenArgs值(Me.HiddenKeyField.DefaultValue = Me.OpenArgs
  4. 另一种选择是使第二种形式成为第一种形式的子形式。最简单的方法是:

    1. 转到第一个表单的设计视图,然后将第二个表单从数据库窗口拖到第一个表单
    2. 然后进入子表单的属性并将链接子字段/链接主字段设置为等于外键字段