我有一个主窗体INVOICE,包含子窗体INVOICEDETAIL(ITEMID,InvoiceID,Quantity,Price)和子窗体ALLITEMS(主键ITEMID和子窗体只读)。
INVOICE通过InvoiceID字段链接到INVOICEDETAIL,而INVOICE未链接到ALLITEMS,因此所有项目都显示在ALLITEMS中。
我希望用户能够双击ALLITEMS子表单上的项目,并在INVOICEDETAIL子表单中添加该项目。也许会弹出一个对话框,允许用户输入INVOICEDETAIL中的数量和价格,或者在INVOICEDETAIL中设置焦点,让用户输入此信息。
你能帮忙吗?
答案 0 :(得分:0)
在AllItems ID控件的双击事件中,可能还有一些内容:
Me.Parent.[InvoiceDetail Subform Control Name].SetFocus
DoCmd.GoToRecord acActiveDataObject, , acNewRec
Me.Parent.[InvoiceDetail Subform Control Name].Form.ID = Me!ID
Me.Parent.[InvoiceDetail Subform Control Name].Form.Price.SetFocus
或者,运行追加查询:
strSQL= "Insert Into InvoiceDetail (ID, Price) " _
& "Select ID, Price From AllItems " _
& "Where ID=" & Me.ID
CurrentDB.Execute strSQL, dbFailOnError
然后,您需要重新查询InvoiceDetail子表单并找到相关的ID。