我正在尝试使用MS Access为面包店制作一个库存管理系统。 商店经理将仅输入他们想要制造的商品的名称和数量。根据经理输入的项目,应以系统的方式生成配料及其数量的列表。 例如, 要制作一个蛋糕,需要2 x成分A,3 x成分B和4 x成分C。 对于一个cookie,我们将需要0.1 x成分C和1 x成分D。 如果经理希望制作2个蛋糕和5个饼干,则必须计算每种成分的量并将其显示在报告中。
我尝试为项目列表制作单独的表格,并为另一个项目制作一个表格,该表格包含制作特定项目所需的成分。但是我不确定如何将Items表列表中的项目与包含其成分表的表相对应的表进行匹配。
答案 0 :(得分:1)
我认为您应该为此使用EAV(实体,属性,值)方法。
然后,您可以使用此查询获取确定顺序的ingridients列表(以及相应的金额)
SELECT tblIngridients.sIngridientName, Sum(tblReceipts.fIngridientAmount) AS [Sum-fIngridientAmount]
FROM (tblProducts INNER JOIN tblOrderContents ON tblProducts.iProductID = tblOrderContents.iProductID) INNER JOIN (tblIngridients INNER JOIN tblReceipts ON tblIngridients.iIngridientID = tblReceipts.iIngridientID) ON tblProducts.iProductID = tblReceipts.iProductID
WHERE (((tblOrderContents.iOrderID)=1))
GROUP BY tblIngridients.sIngridientName;