SAP 生产订单增强

1.屏幕增强

增强点:SMOD:PPCO0012

1.1 函数组top定义

TABLES coci_aufk.
DATA g_display TYPE c LENGTH 1.
DATA gs_caufvd TYPE caufvd.

新建自定义屏幕0100

1.2 PBO逻辑流代码

MODULE status_0100 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.

  IF g_display = 'X'.
    LOOP AT SCREEN.
      IF screen-name+0(9) = 'COCI_AUFK'.
        screen-input = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.

  ENDIF.

 PERFORM frm_init_list_box.
ENDMODULE.

FORM frm_init_list_box .

  DATA: lt_values TYPE vrm_values.

  SELECT zfglx AS key,
         zfglx_text AS text
    INTO CORRESPONDING FIELDS OF TABLE @lt_values
    FROM zppt0007
    WHERE werks = @gs_caufvd-werks.

  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      id              = 'COCI_AUFK-ZZFGLX'
      values          = lt_values
    EXCEPTIONS
      id_illegal_name = 1
      OTHERS          = 2.

ENDFORM.

1.3 出口EXIT_SAPLCOKO1_001代码

*&---------------------------------------------------------------------*
*& 包含               ZXCO1U11
*&---------------------------------------------------------------------*
CLEAR:gs_caufvd.
ASSIGN ('(SAPLCOKO1)RC27S-AKTYP_PIC')  TO FIELD-SYMBOL(<fs_aktyp>).
IF <fs_aktyp> IS ASSIGNED.
  IF  <fs_aktyp> = 'A'.
    g_display = 'X'.
  ELSE.
    g_display = ''.
  ENDIF.
ENDIF.

coci_aufk-zzfglx = i_caufvd-zzfglx.  "反攻类型  Jeff 20250311
MOVE-CORRESPONDING i_caufvd TO gs_caufvd.

1.4 出口EXIT_SAPLCOKO1_002代码

*&---------------------------------------------------------------------*
*& 包含               ZXCO1U12
*&---------------------------------------------------------------------*
e_coci_aufk-zzfglx = coci_aufk-zzfglx.

1.5 创建项目CMOD,分配组件,并激活

1.6 效果

1.7 生产订单保存检查增强

SMOD: PPCO0007 保存生产订单时退出

出口函数 EXIT_SAPLCOZV_001代码

这里注意不要直接报E消息,屏幕灰色修改不了,体验比较糟糕

用'S'消息DISPLAY LIKE 'E',使用no_update标记控制不保存订单

  IF  ( header_imp-auart = 'ZP96'               "返工订单类型必填控制 Jeff 20250311
           OR header_imp-auart = 'ZP70'
           OR header_imp-auart = 'ZP99' )
       AND header_imp-werks = '1100'
       AND  header_imp-zzfglx IS INITIAL.

       no_update = 'X'.

       MESSAGE s004(zpp001) WITH  header_imp-auart DISPLAY LIKE 'E'.

     ENDIF.

2.COOIS增强

增强结构CI_AUFK

BADI:WORKORDER_INFOSYSTEM

IF_EX_WORKORDER_INFOSYSTEM~TABLES_MODIFY_LAY

     IF temp_ioheader-zzfglx IS NOT INITIAL.  "返工订单类型文本

        SELECT SINGLE zfglx_text
          INTO temp_ioheader-zzfglx_text
          FROM zppt0007
         WHERE werks = temp_ioheader-werks
          AND zfglx = temp_ioheader-zzfglx.
      ENDIF.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值