首页 新闻 会员 周边

进销存的结存计算

0
悬赏园豆:15 [已解决问题] 解决于 2018-12-12 11:06

在sql语句中,如果只有对应的出入仓主明细表,怎么让查询出来的结果的结存数随着数据变化。

比如我设置时间范围1-1,1-31,然后得出这个日期之前的结存数,接着问题在于,在这个月范围内的每天的结存数动态变化。想问一下有什么比较好的方法吗?

一个单人旅途的主页 一个单人旅途 | 初学一级 | 园豆:53
提问于:2017-02-15 21:56
< >
分享
最佳答案
0

后来我用AR报表的后台代码来实现数据的动态变化

一个单人旅途 | 初学一级 |园豆:53 | 2017-02-18 11:28
其他回答(3)
0

 

 

 

假设数据表如下:

OperDate Buy Sell
select CONVERT(varchar(11),OrderDate,120) as OrderDate,(select sum(Buy)-SUM(Sell)  from Orders where OperDate<'2017-1-1')+ sum(Buy)-SUM(Sell)  as GoodsNumber from Orders where OperDate>'2017-1-1' and OperDate<'2017-1-31' group by CONVERT(varchar(11),OrderDate,120)

 说明:select sum(Buy)-SUM(Sell) from Orders where OperDate<'2017-1-1'


是计算1-1以前的存货数量。

 

 

收获园豆:5
龙葛格 | 园豆:782 (小虾三级) | 2017-02-16 00:08

不对 按你的查询语句出来的结果不正确,

但我找到其他方法解决了 也谢谢你的回答

支持(0) 反对(0) 一个单人旅途 | 园豆:53 (初学一级) | 2017-02-16 21:39
0

就是有时间点的库存数?



收获园豆:5
chanchaw | 园豆:65 (初学一级) | 2017-02-19 23:35

就是说比如我要筛选的区间是1-1到1-31,然后这时候的某一货物的初始结存数应该是1-1之前进出的差值,接着假设每一天都有数据,则1-1结存数结果应该是应该等于1-1的进出数+1-1之前的差值,然后1-2的结存数=1-1的结存数+1-2的进出差值,以此类推这样

支持(0) 反对(0) 一个单人旅途 | 园豆:53 (初学一级) | 2017-02-22 09:42
0

1  有最新的仓存数和进出仓交易记录,   根据FIFO计算即可计算出任何时间点的库存. 

2  没有仓存记录, 只有交易记录, 那么, 只能拿所有截至时间前的进仓交易记录总数 减去 至时间前的出仓交易记录总数 

收获园豆:5
Shannon | 园豆:611 (小虾三级) | 2017-08-26 16:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册