标签:
如何统计出任意时刻的期初,期间,期末的进销存?
因为库存每天,每时每刻都在变化,而许多医院的药品都需要统计任意两个时点之间的进销存情况,例如2015-05-05 10:03:20至2015-09-05 10:03:20的期初、期间增加 、期间减少、期末的库存,该如何统计呢?
因为库存实时的都在变化,每天都在出库,入库,就连2015-05-05 10:03:20和2015-09-05 10:03:20两个时刻的库存数都测不准,更不要谈期间数据了,当然可以用最笨的办法,从最初的库存开始,一直推算到这两个时刻,但是如果软件开始使用的时间离2015年5月很远,例如2010年,五年的数据,一个个从2010年加减到2015年,将会耗费很长时间计算,甚至死机,这当然是不可行的。
目前我看到的可行的方法是,定义一个计划任务,每天将库存存放到一个表中,可以称为库存快照表,有了这个表再来计算期初和期末和期间数据就简单得多了。
以上面为例,假设每天晚上23:00:00存放库存快照,存入yp_plan,那么如何计算药品A在2015-05-05 10:03:20和2015-09-05 10:03:20两个时刻的库存数,下面我给出具体步骤:
库存数,记为S_A
库、入库的库存数S_ADD,S_REDUCE
记2015-05-05 10:03:20时刻库存为S_START,同样可以求得2015-09-05 10:03:20的库存数,记2015-09-05 10:03:20时刻库存为S_END
这样就只需要计算几个小时的出入库数据就能算得各时刻的库存数。
可以用S_END=S_START+S_ADD_TOTAL-S_REDUCE_TOTAL来查看进销存的准确性,如果不准确说明系统有漏洞或者有出入库没有记账等问题。
董继超
2016年3月11日
标签:
原文地址:http://www.cnblogs.com/djcsch2001/p/5264710.html