在我的数据库中,用户通过类似的表单创建新记录;
按下保存按钮后,记录会被插入 ConTblConsumables ,这是保存按钮后面的代码示例;
{
"_id" : ObjectId("5ae08c74d132ac4442520638"),
"centralPath" : "some path",
"openTimes" : [
{
"value" : 8123,
"user" : "ks",
"createdOn" : ISODate("2018-04-25T14:11:00.853Z"),
"_id" : ObjectId("5ae08c74d132ac444252063a")
}
],
"synchTimes" : [
{
"value" : 208649,
"user" : "ks",
"createdOn" : ISODate("2018-04-25T16:42:42.933Z"),
"_id" : ObjectId("5ae0b0028c2e3b192a3e9dc5")
}
],
"modelSizes" : [
{
"value" : 21483520,
"user" : "ks",
"createdOn" : ISODate("2018-04-25T14:11:00.787Z"),
"_id" : ObjectId("5ae08c74d132ac4442520639")
}
],
"__v" : 0
}
插入记录后,我希望弹出另一个表单,然后用户可以将父计算机分配给该部分。我希望这样做的原因是几台机器可以使用相同的部件(多对多)。选择机器后,将更新此表;
耗材列是一个与 ConTblConsumables 表有关系的ComboBox,因此我需要将之前的ID保留在TempVar中。
我相信如果我在保存按钮的代码末尾使用TempVars,那么当记录插入表 ConTblConsumables 时,TempVars会记录行的ID记录已被插入,因此即将获得用于下一表格的ID。
我的问题是我如何在代码中写这个?或者即使这是可能的?
谢谢
答案 0 :(得分:1)
据我了解,在表ConTblConsumables
中,您有一个ID
个关键列Autonumber
数据类型,您需要知道插入行的ID。如果是这样,您最好使用记录集而不是INSERT语句。像这样:
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("select * from ConTblConsumables")
With rst
.AddNew
'here ID already known and you can store it in your variable
TempVars!MyID = !ID.Value
!strConCost = Me.ConCompany
!ConName = Me.txtConName
....
.Update
End With
rst.Close
Set rst = Nothing