先过先出法在很多的企业都非常试用,而基于企业的管理能力与实际业务数据中的不完整性,会造成实际物料的出入库情况是无序的。而管理者需要看到一定期间的物料库龄,特别是对于A,B类物料的关注情况。这样就需要IT部门对这一部分进行模拟用算法进行推演。
给个例子供相关有需要的朋友参考
结果
if OBJECT_ID('tx') is not null
begindrop table Tx
end
create table Tx(
id int identity not null,
bflag bit,
ddate datetime,
ccode varchar(3),
cinvcode varchar(3),
qty int
);insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(1,'2018-5-01','RK1','A',1000)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(1,'2018-5-08','RK2','A',1000)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(1,'2018-5-10','RK3','A',1000)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(1,'2018-5-15','RK4','A',1000)insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(0,'2018-5-02','CK1','A',300)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(0,'2018-5-09','CK2','A',500)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(0,'2018-5-10','CK3','A',200)
insert into Tx(bflag,ddate,ccode,cinvcode,qty)values(0,'2018-5-16','CK4','A',1000)select case when bflag=1 then '入库' else '出库' end 标识,ddate as 单据日期,ccode as 单据号,cinvcode as 物料,qty as 数量
from tx order by ddateIF OBJECT_ID('TEMPDB..#TX') IS NOT NULL
BEGINDROP TABLE #TX
ENDSELECT ROW_NUMBER()OVER(PARTITION BY CINVCODE,BFLAG ORDER BY CINVCODE,DDATE) AS IDX,BFLAG,DDATE,CCODE,CINVCODE,QTY,QTY AS iqty INTO #TX FROM TX WHERE BFLAG=1;WITH cte as(
SELECT IDX,BFLAG,DDATE,ccode,CINVCODE,QTY,iqty FROM #TX WHERE IDX=1
union all
SELECT a.IDX,a.BFLAG,a.DDATE,a.ccode,a.CINVCODE,a.QTY,a.iqty+b.iqty as iqty FROM #TX a inner join cte b on a.IDX=b.idx+1 and a.cinvcode=b.cinvcode
)select case when a.bflag=1 then '入库' else '出库' end as 标识,a.ddate as 单据日期,a.ccode as 单据号,a.cinvcode as 物料,
a.qty as 数量,a.iqty as 累计入,b.oqty as 累计出,a.iqty-ISNULL(b.oqty,0) as 差值,
case when a.iqty-ISNULL(b.oqty,0)>=qty then qty else a.iqty-ISNULL(b.oqty,0) end 单据余量,
case when a.iqty-ISNULL(b.oqty,0)>0 then 1 else 0 end as 标志
from cte a
left join (select cinvcode,sum(qty) as oqty from tx where bflag=0 group by cinvcode)b on a.cinvcode=b.cinvcode 

库龄分析-先进先出法相关推荐

  1. SAP库存--历史库存相关数据,以及库存变化对应表的数据变化,可以用于库龄分析报表逻辑设计。

    ** 库龄分析 # 在后勤模块经常会用到库存相关的数据进行报表展示以及其他数据分析,这个就需要对于SAP库存值变化以及相关表的数据更新有一定的了解. SAP历史库存相关数据,以及库存变化对应表的数据变 ...

  2. 用友ERP T6技术解析(六) 库龄分析

    2.4 库存管理   2.4.1 库龄分析 介绍:库存账龄是在某时间节点,某种或某类存货的库存时间的加权平均值,跟库存周转率关系明显,库存周转率越高,库存账龄越低,可是二者又不是反比关系.不能简单把库 ...

  3. SAP License:SAP的库龄分析表

    问题:SAP系统没有标准的库龄分析报表,这个报表出具如何处理? 解决办法: 1.可以通过批次管理,然后再财务进行FIFO评估,但是这个办法经测试发现实现比较麻烦. 2.通过如下方法可以实现. MC46 ...

  4. oracle先进先出法,怎样能过SQL计算先进先出库龄分析?

    记得提供建表脚本和测试数据: http://www.itpub.net/thread-1348543-1-1.html create table t_deposit ( name varchar2(1 ...

  5. 操作无法完成:- 创建/更新: 未设置强制字段.- 删除: 另一个模型要求删除记录。如果可能的话,把它存档模型: 库龄分析报表 (eno.md.payable.age.analyse.rpt)

    出现情况:当刷新报表查询页面时,出现此错误,主要原因是刷新时默认调用了create方法,然后后台某个字段必输,而现在界面中为空. 问题解决: 出现此问题,主要是后台字段设置为必输.继承修改字段为非必输 ...

  6. SAP库存库龄逻辑分析

     https://blog.csdn.net/kangliujie/article/details/74784596 库存账龄指库存物料在仓库的存放时间,可反映出物料周转率与物料需求计划的准确性, ...

  7. SAP库龄报表解析说明

    1. 查询出所有在库物料的总库存(mard 或鞋服 MCHB)  2. 从MSEG中获得所有的入库记录  3. 按照倒推规则,结合库存总量以及入库明细,计算每行采购收货在现有库存中的余量.  4. 基 ...

  8. SQL实现FIFO算法:库龄继承、配额分析

    1.背景 为了保证集团成品/物料的跌价计提统一正确,集团子公司内部交易场景中,由A公司转卖成品/物料到B公司,需要实现账龄继承(即:物料在A公司账龄为36,转卖到B公司后,该物料账龄为36,不能从0开 ...

  9. 【MM系列】SAP库龄报表逻辑理解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP库龄报表逻辑理解 前言部分 大 ...

最新文章

  1. USACO Training Section 1.2 挤牛奶Milking Cows
  2. java里面value_「Java基础知识」Java中包含哪些运算符
  3. Facebook 开源:PyTorchVideo!
  4. with as 语句真的会把数据存内存嘛?(源码剖析)
  5. HTML5 data-* 自定义属性 ---转载 原文地址:https://www.cnblogs.com/dolphinX/p/3348458.html...
  6. html 图层嵌套特点,ps图层有哪几种类型?
  7. python计算两点间距离_用python计算图像中两点之间的距离
  8. led背光源工作的条件及结构
  9. 受益匪浅!Spring事务是如何传播的附架构师必备技术详解
  10. 未来教育安装后打不开
  11. 【读书随记】周末充电,学习Java更轻松(文末送书)
  12. 技术人员近业务,会困死在一条船上吗?
  13. 在 Linux 下安装 GNU ARM 工具链
  14. 【pandas】df.str.contains包含多个值写法
  15. 【JavaScript】JS 的执行
  16. ccc 邮箱_CCC的完整形式是什么?
  17. 设计模式(四) 观察者模式
  18. C++ iomanip
  19. 工业智能网关BL110应用之五十六: 实现西门子S7-200 PLC接入华为 云平台
  20. android 4.0模拟器启动不了,Android 4.0 framework源码修改编译,模拟器运行不起来,求助...

热门文章

  1. 关于大学生道德现状的思考
  2. layui 弹出层 shade
  3. Flexe2.0 学习笔记一(利用PopUpManager来显示一个简单窗体)
  4. 应届生找开发岗经验总结
  5. CCNP Switching (300-115) Cert Prep: 1 Layer 2 Technologies CCNP交换(300-115)证书准备:1层2技术 Lynda课程中文字幕
  6. jeecg扩展自定义菜单图标
  7. 电话聊天狂人 (25 分)
  8. 像逛淘宝一样“办政事”:阿里云在政务领域的实践
  9. python 散点图加趋势线
  10. iOS 开发第三方库全集