我在 Access 2007 中有一组表,我需要这些表来显示收到的项目总数。我们使用作业编号作为通用参考(如 ID)根据作业订购物品。
每个工作都需要多个项目。大多数物品都有我们收到的多批货物。每批货物都有一个唯一的收货单号,因此需要单独输入并合计。
我有:
- tblJobItems : JobNumber, Item, QtyNeeded
- tblReceived : JobNumber, Item, QtyRecvd, RTNumber (RT = Receiving Ticket)
- tblJobs :JobNumber、JobQty (以及更多,但与此问题无关)
(JobQty 并不总是与 item 的 QtyNeeded 相同。job 就像运行某个型号的计算机,job qty 是该型号的多少。item 有时是 1:1,例如机箱或电源,但可以是 2:1 或 3:1,就像拥有多个硬盘一样。)
我有一个查询可以很好地显示订购的商品数量,但我们想要扩展它(或与其他查询结合)以显示同一行上每个作业号收到的商品总数。最终我将使用这个数字来更改状态和其他功能。
SELECT tblJobItems.JobNumber, tblJobItems.Item, tblJobItems.QTYNeeded, tblJobItems.PartStatus, First(tblJobs.BDT) AS FirstOfBDT, First(DateAdd("ww",-2,[BDT])) AS DueBy
FROM tblJobItems INNER JOIN tblJobs ON tblJobItems.JobNumber = tblJobs.JobNumber
GROUP BY tblJobItems.JobNumber, tblJobItems.Item, tblJobItems.QTYNeeded, tblJobItems.PartStatus;
这会在列表框中显示订购的项目和数量,JobNumber 存储为([Tempvars]![JobNum])
,并且列表框仅显示与 JubNumber 匹配的记录。( tempvar 是全局的,因此如果对任何人有帮助,它可以在查询中使用)
我不反对通过两三个查询来获得答案。