采购订单审核函数:

BAPI_PO_RELEASE

结尾加上

ENHANCEMENT   ZME28_PO.    "active version
DATA:LS_EKKO TYPE EKKO.
DATA:LS_ZEKKOADD TYPE ZEKKOADD.
CLEAR:LS_EKKO,LS_ZEKKOADD.
SELECT SINGLE * INTO LS_ZEKKOADD FROM ZEKKOADD WHERE EBELN = PURCHASEORDER.
SELECT SINGLE * INTO LS_EKKO FROM EKKO WHERE EBELN = PURCHASEORDER.
IF SY-SUBRC = .
IF LS_ZEKKOADD IS INITIAL.
LS_ZEKKOADD-EBELN = LS_EKKO-EBELN.
LS_ZEKKOADD-FRGGR = LS_EKKO-FRGGR.
LS_ZEKKOADD-FRGSX = LS_EKKO-FRGSX.
IF LS_EKKO-FRGSX = 'ZB'."三级审批
IF PO_REL_CODE = 'ZY'.
LS_ZEKKOADD-FRGKE = ''.
LS_ZEKKOADD-BNAME = SY-UNAME.
LS_ZEKKOADD-BDATE = SY-DATUM.
LS_ZEKKOADD-BTIME = SY-UZEIT.
ELSEIF PO_REL_CODE = 'ZZ'.
LS_ZEKKOADD-FRGKE = ''.
LS_ZEKKOADD-CNAME = SY-UNAME.
LS_ZEKKOADD-CDATE = SY-DATUM.
LS_ZEKKOADD-CTIME = SY-UZEIT.
ELSEIF PO_REL_CODE = 'ZX'.
LS_ZEKKOADD-FRGKE = ''.
LS_ZEKKOADD-ANAME = SY-UNAME.
LS_ZEKKOADD-ADATE = SY-DATUM.
LS_ZEKKOADD-ATIME = SY-UZEIT.
ENDIF.
ELSEIF LS_EKKO-FRGSX = 'ZC'."2级审批
IF PO_REL_CODE = 'ZX'.
LS_ZEKKOADD-FRGKE = ''.
LS_ZEKKOADD-ANAME = SY-UNAME.
LS_ZEKKOADD-ADATE = SY-DATUM.
LS_ZEKKOADD-ATIME = SY-UZEIT.
ELSEIF PO_REL_CODE = 'ZY'.
LS_ZEKKOADD-FRGKE = ''.
LS_ZEKKOADD-CNAME = SY-UNAME.
LS_ZEKKOADD-CDATE = SY-DATUM.
LS_ZEKKOADD-CTIME = SY-UZEIT.
ENDIF.
ENDIF.
MODIFY ZEKKOADD FROM LS_ZEKKOADD.
ELSE.
IF LS_EKKO-FRGSX = 'ZB'."三级审批
IF PO_REL_CODE = 'ZY'.
UPDATE ZEKKOADD SET FRGKE = ''
BNAME = SY-UNAME
BDATE = SY-DATUM
BTIME = SY-UZEIT
WHERE EBELN = PURCHASEORDER.
ELSEIF PO_REL_CODE = 'ZZ'.
UPDATE ZEKKOADD SET FRGKE = ''
CNAME = SY-UNAME
CDATE = SY-DATUM
CTIME = SY-UZEIT
WHERE EBELN = PURCHASEORDER.
ELSEIF PO_REL_CODE = 'ZX'.
UPDATE ZEKKOADD SET FRGKE = ''
ANAME = SY-UNAME
ADATE = SY-DATUM
ATIME = SY-UZEIT
WHERE EBELN = PURCHASEORDER.
ENDIF. ELSEIF LS_EKKO-FRGSX = 'ZC'."2级审批
IF PO_REL_CODE = 'ZX'.
UPDATE ZEKKOADD SET FRGKE = ''
ANAME = SY-UNAME
ADATE = SY-DATUM
ATIME = SY-UZEIT
WHERE EBELN = PURCHASEORDER.
ELSEIF PO_REL_CODE = 'ZY'.
UPDATE ZEKKOADD SET FRGKE = ''
CNAME = SY-UNAME
CDATE = SY-DATUM
CTIME = SY-UZEIT
WHERE EBELN = PURCHASEORDER.
ENDIF.
ENDIF.
ENDIF.
ENDIF. ENDENHANCEMENT.

SAP采购订单审批记录增强的更多相关文章

  1. SAP采购申请审批记录增强

    业务需要,开发就搞.... EBAN中增强结构:CI_EBANDB ANAME 类型 UNAME 用户名 ADATE 类型 AEDAT DATS 更改日期 ATIME 类型 UZEIT TIMS 时间 ...

  2. 【MM系列】SAP 采购订单收货后不能修改价格的增强

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 采购订单收货后不能修改价格的 ...

  3. 【MM系列】SAP 采购订单的批量修改

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 采购订单的批量修改   前言 ...

  4. 采购订单审批与撤销审批BAPI

    *"---------------------------------------------------------------------- *"*"本地接口: *& ...

  5. SAP采购订单入库后不允许修改单价增强

    需求:在根据采购订单做了入库凭证之后,如果用户反审批采购订单去修改单价,系统提示‘已收货,不允许修改单价’. 判断流程:是否有入库凭证 如果采购订单条件按采购信息记录定价,这个价格本来就不能修改,只能 ...

  6. SAP采购订单屏幕增强

    转自<http://blog.csdn.net/heng0757/article/details/8073875> 为采购订单增加一个页标签,在其中放入客户自定义字段, 1. CMOD 增 ...

  7. ME_PROCESS_PO_CUST 实现采购订单行项目增强

    用户希望创建采购订单时,输入行项目时,能根据采购订单类型,自动带出科目分类类别. 业务顾问看了一下配置,不能实现这个功能,所以用增强实现. 采购订单BADI增强:ME_PROCESS_PO_CUST. ...

  8. SAP采购订单历史明细报表源代码(自己收藏)

    SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF } ...

  9. SAP 采购订单收货时报错:对于采购订单xxxx无收货可能

    因为这个问题查了挺长时间,所以写在博客里记录下. 报错详细: 每个公司的配置不同,我公司遇到的这个问题原因是这里的确认控制是从信息记录带过来的,问题解决方法是,修改下确认控制的选项: 修改确认控制的后 ...

随机推荐

  1. jquery动态样式操作

    获取与设置样式 获取class和设置class都可以使用attr()方法来完成.例如使用attr()方法来获取p元素的class,JQuery代码如下: 1 var p_class = $(" ...

  2. [SAP ABAP开发技术总结]Form(subroutine)、Function参数传值传址

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  3. win 8 pip install 或者 pycharm 安装 paramiko 报错

    这是安装时报错的最后几行 creating build\temp.win-amd64-3.5\Release\build creating build\temp.win-amd64-3.5\Relea ...

  4. eclipse 设置jvm 内存

    Eclipse 中设置JVM 内存 今天在eclipse 中测试把文档转换为图片的时候,报出了下面的错误: java.lang.OutOfMemoryError: Java heap space 从上 ...

  5. 细心看完这篇文章,刷新对Javascript Prototype的理解

    var person={name:'ninja'}; person.prototype.sayName=function(){ return this.name; } 分析上面这段代码,看看有没有问题 ...

  6. Ext.net 异常统一管理,铥掉可恶的 Request Failure

    Ext.net 异常统一管理,铥掉可恶的 Request Failure 看着这样的框框是不是很不爽 灭他.也不难.. .如果全部页面都有继承一个自定义的父类 ..那整个项目代码量就只有几行了.. 单 ...

  7. vector的插入、lower_bound、upper_bound、equal_range实例

    对于这几个函数的一些实例以便于理解: #include <cstdlib> #include <cstdio> #include <cstring> #includ ...

  8. SAS Annotated Output GLM

    SAS Annotated Output GLM   在使用SAS过程中,proc glm步输出离差平方和有4种算法,分别是SS1 SS2 SS3 SS4 下面文章介绍了其中SS3的具体计算步骤和例子 ...

  9. LCD控制器与驱动器

    这回我再讲讲从 MCU 到 LCD 之间是怎样一个控制流程,即我们的位图数据是怎样显示到 LCD 上的.前面我们了解到 LCD 显示是用动态扫描的方式来实现的,每次显示一整行,在一帧里每行一次扫描一遍 ...

  10. Python学习(11)字典

    目录 Python 字典 访问字典中的值 修改字典 删除字典元素 字典键的特性 字典内置函数&方法 Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. ...