我正在为学校项目的五金店创建一个简单的库存/销售点系统。
我想知道如何正确实施对现有库存/数量和物品销售的监控。到目前为止,我的产品表中有一个“ QuantityOnHand”字段。这是存储库存总数的位置。每当进行销售时,我都会在“ QuantityOnHand”字段上减去所售商品的数量,并将这些商品保存在两个相关的表中,“ Sales”(用于记录交易)和“ SalesItems”(用于出售的商品)。
在大多数情况下,这种设计还可以,但是我无法创建将过去一天/一周的剩余商品数量与当前的剩余商品数量减去销售/有缺陷商品进行比较的报告,因为商品数量没有正确跟踪,只能保存在一个字段中。
如何设计数据库以正确监控项目数量?
答案 0 :(得分:1)
您必须仔细分析所有报告要求,并设计表格以使其易于实现目标。
但是,通常最好创建一个表来存储可能如下所示的库存事件:
仅创建股票事件,而不会更新它们。这是能够获得所需分析的关键。
由此,您应该能够在任何时候重新构造任何产品的质量。
对于销售,您当然希望除了数量,价格,产品-客户类型,客户国家(地区)/州/城市,销售地点,销售人员,之外的各种其他数据点。 。 。 就像股票事件一样,将此表视为不可变的。
我希望您使用Google的“库存星图”和“销售星图”。这应该使您思考如何最好地组织数据以进行报告。