所以我不是很肯定,我什至在问一个正确的问题,但这是正确的。我目前已经建立了一个MS Access Form,以便某人可以输入新的工作订单。您可以设置公司,所需零件号,数量,而工作单号是我自动生成的用于主键的值。所有这些都很好,并且成功地向“工作订单”表中添加了新行。但是,当使用此表单创建新的工作订单时,我希望将“工作订单”表中的最后一个字段(称为“状态”)设置为“未开始”。
我成功进行了更新查询,要求提供工作单编号,并将“状态”字段设置为“未开始”。这是该代码:
UPDATE 03A_WorkOrderList
SET 03A_WorkOrderList.Status = "Not Started"
WHERE ((([03A_WorkOrderList].WO_Num)=[WO_Num:]));
如果您提供更新查询工作订单号,则一切正常,并且“状态”字段已更新。
所以回到表单,我决定将更新查询附加到在创建新行之后进行更新的构建事件。这似乎也行得通,只是要求提供工作单号。我完全理解为什么,因为它是更新查询中的代码:WHERE ((([03A_WorkOrderList].WO_Num)=[WO_Num:]));
我不知道如何使它提取自动生成的工作订单编号并将其用于更新查询。
如果我要解决所有这些错误,请告诉我。 TIA。
在Access Access中,以设计模式打开[Work order]
表。选择Status
字段,然后在下面的property
部分中,可以将Default value
设置为Not started
。这样,您无需执行更新,所有新订单将自动具有Not started
状态。
或在添加订单的On before update
事件中,可以设置status = 'Not started'