我正在开发一个需要动态支持多个库存的ERP应用程序,即。每个仓库/分支机构需要为每个产品单独存储一个库存值。一种方法 - 避免使用静态表列 - 是有一个单独的Stock表,如下所示:
[Product]
Code
...
[Branch]
Code
...
[Stock]
ProductCode
BranchCode
StockValue
...
这实际上变成了由Stock表分隔的多对多关系。 出现就会立即成为这种方法的陷阱,例如:
这背后的主要原理是避免使用静态列(这可能会导致在添加新分支时修改映射文件)。所以它应该更有活力。
过去有没有人使用类似的概念,也许有更高效的解决方案?或者,如果这似乎是一个合适的解决方案,那么NHibernate关联方法可能最有效?
感谢。
答案 0 :(得分:0)
我会创建一个单独的实体 - 仓库和商店是常用名称 - 作为库存的容器。然后在分支机构和他们可以访问Stock的仓库之间创建多对多关系。这使您可以灵活地将库存存储在分支机构和另一个位置(租用空间),或允许多个分支从多个仓库中提取库存。例如,强大的ERP系统进一步将库存位置分类为货架和仓位。
除非每个分支都存放每个产品,否则我不会看到您的潜在陷阱列表是有效的。使用仓库模型,库存是多对多表中的记录,其中包含仓库库存中的物料数量。如果记录不存在,那么该位置没有记录。