SAP MM ME21N保存前检查增强
2011-12-14 16:57
411 查看
想在ME21N保存前做一些数据检查,
可以做一个增强功能,
运行 CMOD 新增, 增强接口 输入 MM06E005 ( EXIT_SAPMM06E_012 ) ,在 NCLUDE ZXM06U43 . 里写代码功能。
例子如下:
*&---------------------------------------------------------------------*
*& 包括 ZXM06U43
*&---------------------------------------------------------------------*
TABLES: EKPO.
DATA: e_message(200) TYPE c.
DATA: SPSTYP LIKE EBAN-PSTYP.
DATA: SBANFN LIKE TEKPO-BANFN.
DATA: t_msg(200) TYPE c.
DATA: t_answer(1) TYPE c.
data: iflag type i.
IF I_EKKO-BSART = 'KSUB' OR I_EKKO-BSART = 'EUB'.
iflag = 0.
LOOP AT TEKPO.
SPSTYP = 0.
SBANFN = TEKPO-BANFN.
SELECT SINGLE * FROM EBAN WHERE BANFN = SBANFN.
IF SY-SUBRC = 0.
SPSTYP = EBAN-PSTYP.
ENDIF.
if SPSTYP = 3.
iflag = iflag + 1.
if iflag = 1.
CONCATENATE '注意:请购单' SBANFN INTO t_msg.
else.
CONCATENATE t_msg '/' SBANFN INTO t_msg.
endif.
endif.
ENDLOOP.
if iflag > 0.
CALL FUNCTION 'POPUP_WITH_2_BUTTONS_TO_CHOOSE'
EXPORTING
* DEFAULTOPTION = '1'
DIAGNOSETEXT1 = t_msg
* DIAGNOSETEXT2 = ' '
* DIAGNOSETEXT3 = ' '
TEXTLINE1 = '是: L 类型的请购单允许转为 U 类型的采购单'
TEXTLINE2 = '否: L 类型的请购单不允许转为 U 类型的采购单,先删除再保存'
* TEXTLINE3 = ' '
TEXT_OPTION1 = '是'
TEXT_OPTION2 = '否'
TITEL = '选择'
IMPORTING
ANSWER = t_answer.
IF t_answer = 2.
CONCATENATE '申请单:' SBANFN '是L类型,与当前类型不符!' INTO e_message.
message e_message type 'E'.
endif.
endif.
ENDIF.
这个功能会弹出一个用户选择的小窗口:
![](http://hi.csdn.net/attachment/201112/14/0_13238532071W6A.gif)
如果选择“是” ,系统会继续保存,“否” 则出现错误提示,不能保存。
可以做一个增强功能,
运行 CMOD 新增, 增强接口 输入 MM06E005 ( EXIT_SAPMM06E_012 ) ,在 NCLUDE ZXM06U43 . 里写代码功能。
例子如下:
*&---------------------------------------------------------------------*
*& 包括 ZXM06U43
*&---------------------------------------------------------------------*
TABLES: EKPO.
DATA: e_message(200) TYPE c.
DATA: SPSTYP LIKE EBAN-PSTYP.
DATA: SBANFN LIKE TEKPO-BANFN.
DATA: t_msg(200) TYPE c.
DATA: t_answer(1) TYPE c.
data: iflag type i.
IF I_EKKO-BSART = 'KSUB' OR I_EKKO-BSART = 'EUB'.
iflag = 0.
LOOP AT TEKPO.
SPSTYP = 0.
SBANFN = TEKPO-BANFN.
SELECT SINGLE * FROM EBAN WHERE BANFN = SBANFN.
IF SY-SUBRC = 0.
SPSTYP = EBAN-PSTYP.
ENDIF.
if SPSTYP = 3.
iflag = iflag + 1.
if iflag = 1.
CONCATENATE '注意:请购单' SBANFN INTO t_msg.
else.
CONCATENATE t_msg '/' SBANFN INTO t_msg.
endif.
endif.
ENDLOOP.
if iflag > 0.
CALL FUNCTION 'POPUP_WITH_2_BUTTONS_TO_CHOOSE'
EXPORTING
* DEFAULTOPTION = '1'
DIAGNOSETEXT1 = t_msg
* DIAGNOSETEXT2 = ' '
* DIAGNOSETEXT3 = ' '
TEXTLINE1 = '是: L 类型的请购单允许转为 U 类型的采购单'
TEXTLINE2 = '否: L 类型的请购单不允许转为 U 类型的采购单,先删除再保存'
* TEXTLINE3 = ' '
TEXT_OPTION1 = '是'
TEXT_OPTION2 = '否'
TITEL = '选择'
IMPORTING
ANSWER = t_answer.
IF t_answer = 2.
CONCATENATE '申请单:' SBANFN '是L类型,与当前类型不符!' INTO e_message.
message e_message type 'E'.
endif.
endif.
ENDIF.
这个功能会弹出一个用户选择的小窗口:
![](http://hi.csdn.net/attachment/201112/14/0_13238532071W6A.gif)
如果选择“是” ,系统会继续保存,“否” 则出现错误提示,不能保存。
相关文章推荐
- SAP MM ME21N保存前检查增强
- 002 MIRO发票校验采购订单项目科目分配类别检查增强-20150819
- mongodb - MongoRepository接口应用-验证码保存检查方法
- 采购订单检查/保存BADI使用
- (3)脚本增强实战注意点之检查点和参数化
- 销售订单保存时检查库存,不足不能保存
- SAP ABAP收货或者货物移动(MIGO,MB11,MB1A)在保存时候的增强点
- hosts文件无法修改怎么办 保存文档失败,请检查文件是否被另一个应用程序打开了
- 收货或者货物移动(MIGO,MB11,MB1A)在保存时候的增强点
- CS01、CS02保存时增强的BADI(BOM_UPDATE)
- 在PO保存增强时,利用mmpur_message弹出警告类型信息
- SAP 采购订单税码增强检查
- LoadRunner VuGen 脚本增强之检查点
- dede后台出现 保存目录数据时失败,请检查你的输入资料是否存在问题
- 自己写的销售组织分销渠道的权限检查增强
- 状态保存法 / 状态检查法求质数
- PHP上传图片 检查并保存到指定路径
- CO02保存增强的PPCO0001 介绍
- 用户出口:保存生产订单的时候根据条件检查BOM