SAP批次主数据增强

msc1n/msc2n/msc3n 批次增强

这几个事务码的主程序为SAPLCHRG,在如下图界面上有两块地方是可以做增强所预留的子屏幕,其中2是一个tab页签的子屏幕。注意版本较老的可能没有这个增强点。

增强点为ES_BATCH_MASTER,可以se18查看详情,可以看到示例类CL_EX_VB_BM_ADD_SCREEN_FIELDS,

可以看到可增强的子屏幕,下图第一行就是上图基本数据2里面的子屏幕,下图第二行就是上图tab页签,2999为SAPLCHRG里面预留的填充空屏幕

第一步,为mcha和mch1都append上客制化字段(是否要都append我不确定,可能要参考当前配置的批次层级:批次为物料级别的即对应mch1表时,mch1肯定要append),append标准表字段zz或yy开头。另外也可以另建一张自建表主键类似mcha,自建表在下面badi增强时要进行read和save,这种方式本文不展示。

第二步,创建一个函数组,客制化子屏幕就放在这里,跟一般的屏幕增强一样。

DATA:gs_mcha  TYPE mcha,
     gv_aktyp TYPE aktyp. "与当前编辑查看状态有关

FUNCTION zmmfm001_after_9901_pai.  "pai后最新值从本函数组传到msc*n主程序
  es_mcha = gs_mcha.
ENDFUNCTION.

FUNCTION zmmfm001_before_9901_pbo. "pbo前值从msc*n主程序传递到本函数组
   gs_mcha = is_mcha.
  gv_aktyp = iv_aktyp.
ENDFUNCTION.

第三步,实现增强ES_BATCH_MASTER可在se19,或spro-批次管理--主数据里面点执行按钮。

实施创建好之后(实施类可以复制示例类),在下图填写子屏幕调用的屏幕,就是第二步我们建的屏幕

下面是实施类的方法简要说明

AFTER_CUSTOM_SCREEN_PAI

After custom subscreen PAI processing

BEFORE_CUSTOM_SUBSCREEN_PBO

客制屏幕显示前

SAVE_DATA

READ_DATA

INITIALIZE_DATA

Initialize custom data

CHECK_DATA_CHANGED

Check changed custom data

SET_TABSTRIP_NAME

设置最上面图中2处tab页签的文本

BEFORE_CUSTOM_SUBSCREEN_PAI

客制屏幕动作后

如果是mch1/mcha上面直接append的字段只需要实现下面两个方法,read和save有系统自己实现。如果是自建表那么需要上表中save_data和read_data来处理

  METHOD if_bm_add_screen_fields~before_custom_subscreen_pbo.
    CALL FUNCTION 'ZMMFM001_BEFORE_9901_PBO'
      EXPORTING
        is_mcha  = is_mcha
        iv_aktyp = iv_aktyp. "H新建 A显示 V修改
  ENDMETHOD.
  
 METHOD if_bm_add_screen_fields~after_custom_screen_pai.
    CALL FUNCTION 'ZMMFM001_AFTER_9901_PAI'
      IMPORTING
        es_mcha = es_mcha.
  ENDMETHOD. 

第四步,如果想在BAPI_BATCH_CREATE中也能处理自定义字段,首先字段附加到结构bapibatchatt,然后函数MAP2I_BAPIBATCHATT_TO_MCHA会处理字段的mapping,但是此函数为自动生成不建议直接改,我们用事务码BDBS输入该函数的入参和出参,点击生成就好了。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值