我有一个清单,其中列出了库存突变且货架期有限的产品,因此从库存中扣除了它们的有效期。
Record | Batch | Qty | Date | Mut
=====================================
1 | A | 300 | Jan 1 | Pos
2 | B | 250 | Jan 20 | Pos
3 | C | 150 | Feb 15 | Pos
4 | A | -300 | Feb 28 | Exp
5 | B | -250 | Mar 15 | Exp
6 | D | 550 | Mar 18 | Pos
7 | C | -150 | Apr 1 | Exp
接到订单时,我要按照先进先出的原则分配一批订单,以便相应地履行订单。
Sale No. | Order Qty | Date
============================
S1 | 400 | Feb 1
此命令应像这样更改突变表;
Record | Batch | Qty | Date | Mut
======================================
1 | A | 300 | Jan 1 | Pos
2 | B | 250 | Jan 20 | Pos
S1 | A | -300 | Feb 1 | Sale
S1 | B | -100 | Feb 1 | Sale
3 | C | 150 | Feb 15 | Pos
4 | A | 0 | Feb 28 | Exp
5 | B | -150 | Mar 15 | Exp
6 | D | 550 | Mar 18 | Pos
7 | C | -150 | Apr 1 | Exp
有很多可能。例如,它可以添加记录以抵消与到期相关的负突变,但最终该表应允许准确了解任何给定日期的库存水平,并使其可以追溯批次的分配顺序。
我已经很了解这种方法了:https://radacad.com/dax-inventory-or-stock-valuation-using-fifo
但是这里的问题是,它不考虑有效期,也不是库存余额,而是其估值。