• SAP生产订单屏幕增强(CO01/CO02/CO03抬头AUFK,AFKO)


    一、aufk增强

      CI_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

     结束,经测试可以正常保存及显示数据。

     

  • 相关阅读:
    第一个爬虫和测试
    数学规律
    自定义手绘
    tqqqy的成绩表
    Linux常用命令-netstat
    文档查看命令 cat more less tail head
    Linux三剑客-常用命令
    IO多路复用模型
    redis 的线程模型
    为什么需要缓存?
  • 原文地址:https://www.cnblogs.com/ybinlog/p/14239102.html
Copyright © 2020-2023  润新知