原文链接:https://www.cnblogs.com/ybinlog/p/14239102.html
一、aufk增强
CI_AUFK中加字段
然后激活结构
检查AUFK是激活状态
AUFK中已包含CI_AUFK 不做操作
CAUFVTAB中已包含CI_AUFK 不做操作
COCI_AUFK中加入包含CI_AUFK
二、afko增强
创建结构zsafko
在afko中包含zsafko
在caufvtab中包含zsafko
在coci_aufk中包含zsafko
三、cmod注册增强
PPCO0012:屏幕增强
PPCO0007:保存退出
1、cmod新建项目:ZPP0001
2、分配增强
3、实施并激活(函数组XCO1)
1)全局数据定义LXCO1TOP
*&---------------------------------------------------------------------*
*& 包含 ZXCO1TOP
*&---------------------------------------------------------------------*
TABLES:coci_aufk.
DATA g_display TYPE c.
DATA lv_flag TYPE c.
2)显示前的函数 EXIT_SAPLCOKO1_001
*&---------------------------------------------------------------------*
*& 包含 ZXCO1U11
*&---------------------------------------------------------------------*
* created by ybin 2021.01.05 屏幕增强的字段赋值
DATA lfs_c(30) TYPE c VALUE '(SAPLCOKO1)RC27S-AKTYP_PIC'.
DATA lv_aktyp TYPE rc27s-aktyp_pic.
FIELD-SYMBOLS <lfs_1>.
ASSIGN (lfs_c) TO <lfs_1>.
IF sy-subrc = 0.
lv_aktyp = <lfs_1>.
IF lv_aktyp = 'A'.
g_display = 'X'.
ELSE.
g_display = ''.
ENDIF.
ENDIF.
MOVE-CORRESPONDING i_caufvd TO coci_aufk.
3)保存时路过函数 EXIT_SAPLCOKO1_002
*&---------------------------------------------------------------------*
*& 包含 ZXCO1U12
*&---------------------------------------------------------------------*
* 离开客户屏幕的时候
MOVE-CORRESPONDING coci_aufk TO e_coci_aufk.
4)设置菜单标题
5)绘制屏幕 0100
PROCESS BEFORE OUTPUT.
MODULE status_0100.
*
PROCESS AFTER INPUT.
* MODULE USER_COMMAND_0100.
*----------------------------------------------------------------------*
***INCLUDE ZXCO1O01.
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
* add by ybin 2020.01.05 生产订单屏幕增强
LOOP AT SCREEN.
IF g_display = 'X'.
screen-input = '0'.
ELSE.
screen-input = '1'.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ENDMODULE. " STATUS_0100 OUTPUT
结束,经测试可以正常保存及显示数据。