为库存控制设计数据库

kat*_*son 1 database database-design

我的数据库设计有一些问题。我的系统设计如下图 在此处输入图片说明

正如你所看到的,它是一个非常基本的系统。用户可以通过添加供应商详细信息来创建供应商。然后,用户可以添加产品并将其链接到供应商。这就是非常直接的一点(我希望!)。现在我将附上我的数据库设计,希望能涵盖我提到的内容。 在此处输入图片说明

因此,一个供应商可以有一个联系人(我的系统用户将联系的供应商公司内的人),一个供应商可以有一对多的产品。

他是我想不通的部分。每周两次,我系统的用户将收到所有供应商的库存。当他们收到此库存时,他们应该进入应用程序中的更新库存屏幕并输入他们收到的特定产品的库存数量。我添加了一个 products_stock 表,希望它能让我开始介绍这方面的内容(不过我认为它遗漏了很多)。

然而,最后一个屏幕是预测库存的显示。例如,在我的产品交付当天,我收到了 10 件产品一。然后我将手动计算我从最后一个产品一订单(比如 2)中剩余的数量并将产品一的库存数量更新为 12。这意味着,实际上,在两次交付之间我只需要 8 个单位产品一。预测库存屏幕应该显示在指定时间段内我应该为特定产品下订单的预测库存水平。因此,如果 8 件是每周产品一的平均销售量,如果我想查看我应该为一个月的产品一订购多少件,它应该显示大约 32 件。

这不应该是一个复杂的系统,它应该具有手动方面的内容。我一直在设计数据库,我希望我能得到一些关于 products_stock 表的建议,以及我如何处理特定时间段的库存预测(如果我可能需要额外的表)。

任何建议表示赞赏。

谢谢

Nei*_*gan 6

库存更像是一个视图而不是一个表。库存实际上是地点之间货物的一系列移动,以及定期盘点/调整。

库存很复杂。您应该使用一些库存软件并阅读一些数据建模书籍。

使用位置(真实和虚拟)和运动(运动应该是它自己的实体)的概念。

物品粉碎?将其从其库存位置移至“损坏”位置

物品不见了?将其从库存移至“以太”位置

发现随机物品?将其从“以太”移至库存

出售物品?将其从库存移至“已售出”

买了物品?将其从采购转移到库存

其他一些注意事项:

  • 你可以卖掉一些东西,它会被退回,然后你把它放回库存
  • 你可以买东西,但它不对,所以你把它寄回给卖家
  • 您可以出售您不拥有的东西(寄售或尚未存货)
  • 您的库存中可能有一些当前未出售的东西。

我不会进入库存的会计方面:)