在访问

时间:2015-08-29 13:09:39

标签: vba ms-access

我有我的主表:tbl1Order_Model和2个相关表格tbl2Order_Pairstbl2Order_Customer

我在数据表视图中有一个表单,字段Pairs和“客户”是“超链接”(不是真正的超链接,只是一个On GotFocus事件,它会触发并打开这些相关表单。

因此,当我的用户填写主表单中的新记录并填充下一个字段并且该字段恰好是Pairs时,会打开一个新的模式/弹出窗体以指定对的确切详细信息(大小)等等)。这些然后加起来并且在主窗体上只显示Total数字。

我使用DSUM函数找出这个总数 - DSum("[35]+[36]+[37]+[38]+[39]+[40]+[41]+[42]+[43]+[44]+[45]+[46]", "tbl2Order_Pairs", "Order_ID = " & Order_ID)

类似于Customer详细信息 - 更深入的表单显示填写客户详细信息和规格。

这适用于旧记录(即,当我想要更改已存在的数据时)。但是,当我想创建一个新记录时,我无法在子表中创建它(因为该记录在主表中不存在)。真实性是一对一的,参照完整性,更新和删除更改。

我想保留这个(这样当从tbl1OrdeR_Model删除记录时,它也会从相关表中删除。)

有什么方法可以实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

要将表格中的数据刷新到表格,请执行Me.Dirty = False

类似的东西:

Sub txtMyControl_OnFocus()
    Me.Dirty = False
    DoCmd.FormOpen "mysubform"
End Sub