基于产品的库存实施

时间:2016-12-24 07:04:02

标签: database product access inventory

我正在使用Access 2016上的小型库存数据库项目。

我在实施产品表和 ProductUnit 表时遇到问题,其中以下业务规则为真:

  1. 可以将一个,两个或多个产品放入特殊包装中以形成新产品。
  2. 每个特殊包装可能由单个产品或其他特殊包装产品组成,其本身可能包含许多产品。
  3. 我对表的实现如下:

    产品

    | ProductID | ProductName  | ... |
    |     1     |      A       | ... |  
    |     2     |    A(2set)   | ... |  
    |     3     |      B       | ... |  
    |     4     | A(2set) + B  | ... |  
    |     5     |      C       | ... |
    

    ProductUnit

    | ProductID | ProductUnitID | Qty |              
    |    2      |       1       |  2  |  
    |    4      |       2       |  1  |  
    |    4      |       3       |  1  |
    

    ProductUnitID是构成特定ProductID的产品或特殊产品 回想一下,产品可能由许多产品组成。因此, ProductUnitID 表格中的每个ProductID可能有多个ProductUnit

    现在,让我们说我有一个样本表,我会记录我的产品库存。

    示例

    | ID |ProductID | Qty |   
    |  1 |    5     |  3  |   
    |  2 |    4     |  1  |   
    |  3 |    1     |  1  | 
    

    如果我希望将ProductID = 2, ProductName = A(2set)等产品计为ProductID = 1, ProductName = A的两个产品,我将如何生成查询以计算我的库存产品? 这同样适用于ProductID = 4, ProductName = A(2set) + B我将拥有一个A(2set)产品和一个B产品,而A(2set)个产品将有两个A产品。

    附加说明:您可以忽略以下
    我想到递归查询(如果有这样的事情)只会将每个特殊产品分解成产品,直到每个产品只是一个产品。单个产品未出现在 ProductUnit 表中 但是,我非常怀疑这是可能的。

0 个答案:

没有答案