业务场景见抬头,有没有标准的解决方案就不说了,也没去考虑。。。

这个增强还是SAP老表提供的,感谢,省了不少时间。

INCLUDE:LMR1MF6S

最后的位置

ENHANCEMENT   ZMIR7_01.    "active version
DATA:LS_YDRSEG LIKE LINE OF YDRSEG.
DATA:L_T_QTY LIKE EKBE-MENGE.
DATA:LY_PRUEFLOS TYPE QPLOS.
DATA:LY_ART TYPE QPART.
DATA:LV_INSMK TYPE MSEG-INSMK.
DATA:lv_BSART TYPE ESART.
DATA:lv_KNTTP TYPE KNTTP. CHECK RM08M-VORGANG = ''. LOOP AT YDRSEG INTO LS_YDRSEG.
L_T_QTY = .
CLEAR:LY_PRUEFLOS,LV_INSMK,lv_bSART,lv_KNTTP."排除没做出使用决策的物料凭证 SELECT SINGLE KNTTP INTO LV_KNTTP FROM EKPO WHERE EBELN = LS_YDRSEG-EBELN AND EBELP = LS_YDRSEG-EBELP..
IF LV_KNTTP = 'A' OR LV_KNTTP = 'K' OR LV_KNTTP = 'Z' OR LV_KNTTP = 'F'.
ELSE.
SELECT SINGLE INSMK INTO LV_INSMK FROM MSEG WHERE MJAHR = LS_YDRSEG-LFGJA
AND MBLNR = LS_YDRSEG-LFBNR AND ZEILE = LS_YDRSEG-LFPOS.
IF LV_INSMK = 'X'.
SELECT SINGLE ART INTO lY_ART FROM QMAT WHERE ART = '' AND MATNR = LS_YDRSEG-matnr AND WERKS = LS_YDRSEG-werks.
IF sy-subrc = .
SELECT SINGLE PRUEFLOS INTO LY_PRUEFLOS
FROM QALS WHERE MJAHR = LS_YDRSEG-LFGJA
AND MBLNR = LS_YDRSEG-LFBNR AND ZEILE = LS_YDRSEG-LFPOS AND STAT34 = 'X'.
IF LY_PRUEFLOS IS INITIAL.
DELETE YDRSEG.
CONTINUE.
ENDIF.
ENDIF.
ENDIF.
ENDIF. SELECT SUM( CASE SHKZG WHEN 'S' THEN MENGE ELSE - * MENGE END )
INTO @L_T_QTY
FROM EKBE
WHERE EBELN = @LS_YDRSEG-EBELN
AND EBELP = @LS_YDRSEG-EBELP
AND BEWTP IN ('T','Q')
AND LFGJA = @LS_YDRSEG-LFGJA
AND LFBNR = @LS_YDRSEG-LFBNR
AND LFPOS = @LS_YDRSEG-LFPOS. SELECT SINGLE bsart INTO lv_bsart FROM ekko WHERE ebeln = LS_YDRSEG-EBELN.
IF lv_bsart = ''.
LS_YDRSEG-MENGE = LS_YDRSEG-WEMNG + L_T_QTY.
ELSE.
LS_YDRSEG-MENGE = LS_YDRSEG-WEMNG - L_T_QTY.
ENDIF. "DELETE 没有使用决策的物料凭证
LS_YDRSEG-BPMNG = LS_YDRSEG-MENGE. IF LS_YDRSEG-MENGE <= .
DELETE YDRSEG.
CONTINUE.
ELSE.
MODIFY YDRSEG FROM LS_YDRSEG.
ENDIF. ENDLOOP.
ENDENHANCEMENT.

中间有一大串IF ELSE的可以忽略,特殊业务处理

MIR7预制发票扣除已经预制的数量(每月多次预制,未即时过账)的更多相关文章

  1. SAP 预制发票报错 -Material 20000000 D119223073 in valuation area VNSM has inconsistant ML data- 之对策

    SAP 预制发票报错 -Material 20000000 D119223073 in valuation area VNSM has inconsistant ML data- 之对策 业务人员报对 ...

  2. SAP 预制发票时扣除已预制的数据

    INCLUDE程序: LMR1MF6S 最后增强: ENHANCEMENT ZMIR7_01. "active version DATA:LS_YDRSEG LIKE LINE OF YDR ...

  3. SAP模块常用增强总结{转载}

    MM模块: 采购订单增强: BADI :ME_GUI_PO_CUST ME_PROCESS_PO_CUST 物料凭证增强: BADI:MB_DOCUMENT_BADI USER-EXIT:MBCF00 ...

  4. SAP模块常用增强总结(转)

    转自:http://blog.sina.com.cn/s/blog_4298a2c80102x40c.html MM模块: 采购订单增强: BADI :ME_GUI_PO_CUST ME_PROCES ...

  5. 函数使用五:MIR7 发票预制 BAPI_INCOMINGINVOICE_PARK

    引自:http://blog.csdn.net/champaignwolf/article/details/51422329 FUNCTION zincominginvoice_park. *&quo ...

  6. 预制体,Mask组件

    1.预制体制作和使用 a.制作预制体,将制作好的元素插入到在文件夹下形成一个预制体 b.将预制体在所调用的脚本文件中进行声明,并且在界面里进行拖入保存 c.使用的时候利用cc.instantiate进 ...

  7. Unity3D学习笔记(四):物理系统碰撞和预制体

    Rigidbody(刚体组件):加了此组件游戏物体就变成刚体了 ----Mass(质量,单位kg):重力G = 质量m * 重力加速度g(g=9.81 m/s^2) --------冲量守恒定理 动量 ...

  8. 修改预制体效果无变化(unity&&CocosCreator)

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321 1.问题       修改预制体后保存,预览游戏预制体未发生变化(和改之前效果一样) 2.回忆       以前做unity的时 ...

  9. Layabox 预制体prefab使用

    //腊鸭官方api不详细系列之ui预制体 // 创建预制体文件,随便拖一个场景中的预制体到 Assets的任意文件夹中,要规范的话则放在Prefab中 // 上一步操作完后就可以在文件夹中看到.pre ...

随机推荐

  1. 常用的 Linux 命令

    列出文件列表:ls [参数 -a -l]创建目录和移除目录:mkdir rmdir用于显示文件后几行内容:tail打包:tar -xvf打包并压缩:tar -zcvf查找字符串:grep显示当前所在目 ...

  2. Java创建对象的几种方式。

    Java创建对象的几种方式(重要): (1) 用new语句创建对象,这是最常见的创建对象的方法. (2) 运用反射手段,调用java.lang.Class或者java.lang.reflect.Con ...

  3. final、finally、finalize的用法

    final: 1.被final修饰的类,就意味着不能再派生出新的子类,不能作为父类而被子类继承 2.将变量或方法声明为final,可以保证他们在使用的过程中不被修改. 3.被final声明的方法也同样 ...

  4. commons-beanutils使用介绍

    commons-beanutils是Apache开源组织提供的用于操作JAVA BEAN的工具包.使用commons-beanutils,我们可以很方便的对bean对象的属性进行操作.今天为大家介绍一 ...

  5. 后台返回数据判断是http还是后台本地图片 indexOf

    今天的笔记呢,记录一下 其实这个应该后台去判断的,但是因为某种原因,今天我们前台做一下判断 事情是这样的,后台返回我一个url  这个url有的http开头的 也有他后台本地的例如:/img/1.pn ...

  6. 【Ruby】【YAML】

    require "YAML" var = YAML.load(File.open('b.yml')) #哈希puts var.class #Hashprint var ," ...

  7. _attribute_creature

    生物属性控制表 comment 备注 Entry 生物ID,对就creature_template中entry Level 不等于0时改变等级为该值 Health 不等于0时改变生命值为该值 Atta ...

  8. 蚂蚁金服 Service Mesh 渐进式迁移方案|Service Mesh Meetup 实录

    小蚂蚁说: 本文是基于在 Service Mesher Meetup 上海站的主题分享<蚂蚁金服 Service Mesh 渐进式迁移方案>内容整理,完整的分享 PPT 获取方式见文章底部 ...

  9. Educational Codeforces Round 23 C. Really Big Numbers 暴力

    C. Really Big Numbers time limit per test 1 second memory limit per test 256 megabytes input standar ...

  10. STL_map.VC6简单使用例子

    1. #include <windows.h> //使用map时会出现如下警告:主要意思是 identifier was truncated to '255' characters in ...