利用BADI WORKORDER_INFOSYSTEM在COOIS中加入自己定义列办事处

需求描写叙述:依据LC业务部门提出的需求。须要在COOIS中加入办事处一列。

1、在IOHEADER_TAB的CI_IOHEADER中加入字段办事处。如以下图所看到的:

 

2、se19 在badi name中写入:WORKORDER_INFOSYSTEM 点击Create Impl.如以下图所看到的

3、双击TABLES_MODIFY_LAY。输入一下代码。保存激活就可以

  DATA BEGIN OF ST_VKBUR,
         VKBUR TYPE VKBUR,
         END OF ST_VKBUR.

  DATA BEGIN OF ST_KDAUF,
         KDAUF TYPE KDAUF,
         END OF ST_KDAUF.


  DATA : ST_HEADER TYPE IOHEADER.
  LOOP AT CT_IOHEADER INTO ST_HEADER.
    IF NOT ST_HEADER IS INITIAL.

      SELECT SINGLE KDAUF
             FROM AFPO
             INTO ST_KDAUF
             WHERE AUFNR = ST_HEADER-AUFNR.


      SELECT SINGLE  VKBUR
             FROM VBAK
             INTO ST_VKBUR
             WHERE VBELN = ST_KDAUF-KDAUF.
    ENDIF.
    ST_HEADER-VKBUR = ST_VKBUR-VKBUR.
    MODIFY CT_IOHEADER FROM ST_HEADER.
  ENDLOOP.

4、加入的字段能够在布局中找到。并加入显示出来。

原文地址:https://www.cnblogs.com/blfbuaa/p/7210380.html