我以前做过的是这样的.
总表 :
商品ID,库存多少,进库多少,出库多少,剩多少
库存多少是指某个时间盘点后的数据. 剩多少是在SQL查询命令中立即计算出来的
进库表:
日期ID,商品ID,进库多少
出库表:
日期ID,商品ID,出库多少
每产进\出库,都同时在总表中记录一下数量.
查询进库详单时,只需要查询 进库表 , 这都是流水日志
查询出库详单时,只需要查询 出库表 , 这都是流水日志
查询库存时,就是查询总数.
剩多少(当前库存)=库存多少+进库多少-出库多少 ,这个计算在 SQL中完成
盘点:
根据查询出来的库存,对照盘点的实际点数,如不同的,提供修正.同时记录盘点表(流水日志).
盘点表结果: 时间ID,上一次时间ID,商品ID,库存,盘点误差 ,进库,出库 ,
然后把最终的商品数据写入到 总表中,同时把总表中的 进,出库数据清为 零.
盘点日志查询:
显示指定 时间ID 的盘点信息,盘点误差 , 并且可以根据 时间ID及上一次时间ID,到进\出库中查询到详细的 进\出库流水日志