【发布时间】:2018-08-27 19:59:34
【问题描述】:
在过去的几年里,我制作了简单的商店应用程序,在那里我制作了这样的简单产品表:
ID,Name,IDCategory,Size,Qty,buyprice,sellprice
数量字段在产品表中,当在交易中时,我会在该表上添加或减去它。
现在,在我的新超市应用程序中,我知道我需要设计更复杂的表来跟踪库存商品数量,因为产品现在有一个到期日期、不同的买入价(可能还有卖出价)。这是确保财务报告准确的唯一方法,我们可以获得每笔交易的实际利润。
我的新产品表是这样的
ID,Name,IDCategory,Size,ExpirationDate,SellPrice '(I remove qty and keep sell price to simplified and sell my item at 1 price only )
设计的问题是它在数据库和编程设计中变得更加复杂,我认为我需要应用 FIFO 系统,并且在我考虑编辑事务/返回项目等时变得更加复杂。
我现在能想到的就是让表格像这样:
tblProductQty = BuyInvoiceID,Date,IDProduct,Qty
但后来我意识到这个信息已经在我的 tblBuyTransactionDetail ( *将我的购买交易(如 invoiceNo,SupplierID,Date,Total)与详细信息表(如 (InvoiceNo,IDProduct,Qty,BuyPrice,ExpirationDate))一起保存的表)
现在我真的很困惑,我真的需要 stockTable 吗?但如果不是,则意味着我需要在交易查询之间进行加减运算才能获得一种产品的数量。
你们实际上是怎么做到的?各大超市的共同设计是什么?
注意:我目前使用 access 和 vbnet
【问题讨论】:
标签: mysql database database-design