首页 > 代码库 > 利用BADI WORKORDER_INFOSYSTEM在COOIS中添加自定义列办事处

利用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、添加的字段可以在布局中找到,并添加显示出来。