当前位置:网站首页>ALV报表总结2022.8.9

ALV报表总结2022.8.9

2022-08-09 22:17:00 月阴荒

目标是实现几个需要计算的数据的显示

有如下: 已入库数量的汇总,未入库数量汇总,最晚入库日期,是否及时交付,及时交付率

最简单的是及时交付率和是否及时交付

我们仅需要如下代码:

*及时率和是否及时交付
	if gs_sec_name > 0 .
		gs_sec-rate = gs_sec-menge2/gs_sec-menge*100.				"我们在前面的订单中将不及时的订单数放入了menge2中	
	endif.
	if gs_sec-rate = 1.
		gs_sec-zsfjf = '是'.
	else.
		gs_sec-zsfjf = '否'.

然后是未入库数量的计算

	gs_sec-zerks = gs_sec-menge - gs_sec-menge2.
	*未入库数量等于主表中的订单总数减去已入库数量。

然后是入库数量的汇总

首先在get_data里面定义SQL语句,用select来选取数据

*已入库数量汇总
  select  mseg~mblnr                        " 物料凭证编号    
          mseg~zeile                        " 物料凭证中的项目
          mseg~ebeln                        " 采购订单号
          mseg~ebelp                        " 采购订单行号
          mseg~erfmg as menge               "订单数量
          mseg~shkzg                        " 借方/贷方标志 
          mkpf~budat                        "入库日期
          into corresponding fields of table gt_mseg_3
*我们选取了以上数据,然后使用into corresponding fields of table 语句,使其gt_mseg_3中的对应位置
      from mseg
     inner join mkpf on mseg~mblnr = mkpf~mblnr
*来自于mseg表和与其相连的mkpf表
	for all entries in gt_sec 
*for all entries   代表将如上筛选过后的数据去重后进入gt_sec表中
	   where mseg~ebeln = gt_sec-ebeln        "限制条件如下
      and  mseg~ebelp = gt_sec-ebelp
      and  mseg~bwart in ('101','103','102','121','124','122','123','161','162').
*然后在加上如上限制条件,这样我们就完成了SQL部分的筛选工作

然后在 frm_process中写下数据处理过程

*	总入库数量
  loop at gt_mseg_3 into gs_mseg_3 where ebeln = gs_sec-ebeln and ebelp = gs_sec-ebelp.
 *要求循环的同时订单号和订单行号
    if gs_mseg_3-shkzg = 'S'.
      gs_first-menge3 = gs_first-menge3 + gs_mseg_3-menge.
 *如果是收入方,那么数量相加,存储在gs_first中   
    elseif gs_mseg_3-shkzg = 'H'.
      gs_first-menge3 = gs_first-menge3 - gs_mseg_3-menge.
 *如果是借出方,那么数量相减,存储在gs_first中     
    endif.
    clear:gs_mseg_3.
  endloop.

  "及时收货数量
  loop at lt_mseg into ls_mseg where ebeln = gs_sec-ebeln and ebelp = gs_sec-ebelp and budat <= gs_sec-eindt.
    gs_sec-menge2 = gs_sec-menge2 + ls_mseg-menge.
    clear:ls_mseg.
  endloop.
*   读取 lt_mseg表中的内容进入其工作区 限制条件为其等于主表中的订单号,订单行号,并且早于采购交期
原网站

版权声明
本文为[月阴荒]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_43847969/article/details/126249637