SAP 物料主数据屏幕增强

20 篇文章 1 订阅

增强步骤

1.为主表添加一个附加结构

根据业务需求新建一个结构,结构中放入需要增强的屏幕字段并激活。

打开事务代码SE11,在需要保存的主表中添加这个附加结构并激活。

注:根据业务需求及屏幕增强的视图判断需要保存的主表是哪张,如基本数据在MARA,工厂级数据在MARC

 

2.创建定制子屏幕的程序

打开事务代码SPRO,选择"创建定制子屏幕的程序"。

保存后会生成一个函数组。

在生成的屏幕或自建一个屏幕进行屏幕绘制。

主要DIALOG代码:
PROCESS BEFORE OUTPUT.

* Verarbeitung vor der Ausgabe
  MODULE init_sub.
  MODULE get_daten_sub.
  MODULE feldauswahl.
  MODULE sonderfaus.
  MODULE sonfausw_in_fgruppen.
  MODULE fausw_bezeichnungen.
  MODULE bildstatus.
  MODULE feldhistorie.            "Aenderungsdienst
  MODULE zusref_vorschlagen_b.
  MODULE refdaten_vorschlagen.
  MODULE zusref_vorschlagen_a.
  MODULE bezeichnungen_lesen.
  MODULE set_daten_sub.

  MODULE mod_disable_field.

PROCESS AFTER INPUT.

  MODULE get_daten_sub.
  FIELD: mara-zzcoloren.
  FIELD: mara-zzproductname.
  FIELD: mara-zzproductname_en.
  FIELD: mara-zzdescription.
  MODULE set_daten_sub.

*&---------------------------------------------------------------------*
*& Module MOD_DISABLE_FIELD OUTPUT
*&---------------------------------------------------------------------*
MODULE mod_disable_field OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
  IF sy-tcode = 'MM03'.
    LOOP AT SCREEN.
      screen-input = '0'.
      MODIFY SCREEN.
    ENDLOOP.
  ELSEIF sy-tcode = 'MM01' OR sy-tcode = 'MM02'.
    LOOP AT SCREEN.
      screen-input = '1'.
      MODIFY SCREEN.
    ENDLOOP.
  ENDIF.
ENDMODULE.

3.在实例化出口中增加数据保存功能增强点

打开事务代码CMOD,在增强点实例中写数据保存的逻辑代码;只需要将数据分配到CMARA内表中即可,SAP会将CMARA中的数据保存至MARA表中

4.配置子屏幕

打开事务代码SPRO,选择"定义每个屏幕序列的数据屏幕的结构"。

选择需要增强的视图后双击子屏幕。

在相应的子屏幕位置新建条目并选择自定义的屏幕。其中程序名为SPAL+自己定义的函数组名,屏幕号为自定义的屏幕号。

注:视图中的子屏幕项与顺序有关,请根据需求新增在相应的位置

可以点击视图数据屏幕模拟查看效果。

5.配置字段组

打开事务代码SPRO,选择"给字段选择组分配字段"。

点击"新条目"并添加增强的字段。

其中维护状态为:EDVKALBQPSZXCFG,字段组为:GR_GLOB

所有字段新增后保存即可。

注:所有增强字段必须分配选择组,否则无法更新成功

效果如下:

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ᝰ随心ꦿེএ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值