在线天堂おっさんとわたし合肥百度推广优化
增强步骤
1.为主表添加一个附加结构
根据业务需求新建一个结构,结构中放入需要增强的屏幕字段并激活。
打开事务代码SE11,在需要保存的主表中添加这个附加结构并激活。
注:根据业务需求及屏幕增强的视图判断需要保存的主表是哪张,如基本数据在MARA,工厂级数据在MARC
2.创建定制子屏幕的程序
打开事务代码SPRO,选择"创建定制子屏幕的程序"。
保存后会生成一个函数组。
在生成的屏幕或自建一个屏幕进行屏幕绘制。
主要DIALOG代码:
PROCESS BEFORE OUTPUT.* Verarbeitung vor der AusgabeMODULE init_sub.MODULE get_daten_sub.MODULE feldauswahl.MODULE sonderfaus.MODULE sonfausw_in_fgruppen.MODULE fausw_bezeichnungen.MODULE bildstatus.MODULE feldhistorie. "AenderungsdienstMODULE 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
所有字段新增后保存即可。
注:所有增强字段必须分配选择组,否则无法更新成功
效果如下: