进销存中加权价在有负数这种情况下怎么处理 Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiDB/html/delphi_20061224180508129.html
按正常的计算方法加权价应该是
新加权价=(库存*加权价 + 新增数量*单价)/(库存+新增数量)
可有时库存出现负数时还是这样计算的话,新加权值似乎跳动很大,有时用户也希望新增数量可以写成负数,表示是退货,这样计算出来也似乎有问题,大家遇到这种情况是怎么处理的?
价格不应该为负数的,可以这样
新加权价=(库存*加权价 + 新增数量绝对值*单价)/(库存+新增数量绝对值)
这是你感觉可以这样计算的还是在实际使用时就是这样计算的?我没有学过财务,拿不定注意。库存是负数的时候要不要把库存取个绝对值再计算呢?
按正常公式计算没问题的,正常公式
新加权价=(库存*加权价 + 新增数量*单价)/(库存+新增数量)
实际上是
新加权价=(库存总额 + 新增商品总额)/(库存数量+新增数量)
正常情况下,库存总额不应该为负数,如果出现负数,说明管理有问题,也就是库存商品出现短缺或者损毁,正常计算可如实反映这一问题。至于退货情况,新增商品为负数很正常啊,如果库存商品不足以退货,那么实物帐务也无法处理(没那多库存商品,怎么退?),只能等待,这并不矛盾。取绝对数肯定是错误的。
补充:在财务上,如果确实出现库存商品严重短缺或者损毁,财务上可通过盘点审计后正常报损,并重新调整帐务的。
如按楼上说的那样做,那是不是在退货时要判断库存是不是满足退货数量、销售出单时是不是要判断销售数量是否不超过库存数量?如果不满足就提示停止操作吗,能不能让用户先出单回头再来补上进货单呢?
如按楼上说的那样做,那是不是在退货时要判断库存是不是满足退货数量、销售出单时是不是要判断销售数量是否不超过库存数量?如果不满足就提示停止操作吗,能不能让用户先出单回头再来补上进货单呢?
===================================================================================
在实际操作中,不会出现你说的情况。
如果是购进商品,企业购进100件商品,发现有问题或不适用,显然是企业要找供货方退货,如果因使用或者损毁只剩下80,那么肯定只能退掉80,其它就没法退了,只能索赔等;如果是销售商品,拿来退的是客户,新增商品只能是增加。
补充:所以出现负数的情况一般只能是商品损毁、丢失或者商品串户造成的,企业财务会通过定期或不定期盘点解决的。
谢谢阿发伯,看来我可以放心用
新加权价=(库存*加权价 + 新增数量*单价)/(库存+新增数量)
来计算了。