MS ACCESS中基于Fifo的销售

问题描述

请帮助摆脱困境

我的产品A具有3个不同的批号

Product   Batch   Qty
  A         1     10
  A         2     10
  A         3     10

如果我卖出25件商品,那么应该自动看到销售报告

Product   Batch   Sale
  A         1      10
  A         2      10
  A         3      5

TIA。

解决方法

此查询将执行以下操作:

SELECT 
    ProductBadge.Product,ProductBadge.Batch,ProductBadge.Qty,(Select Sum(Qty) 
        From ProductBadge As T 
        Where 
            T.Product = ProductBadge.Product And 
            T.Batch <= ProductBadge.Batch) AS Total,IIf([Total]-[Order]<=0,[Qty],[Order]-([Total]-[Qty])) AS Sale
FROM 
    ProductBadge;