ABAP OOALV程序DEMO

REPORT YYHD_OOALV.
*屏幕名  OOALV
DATA:GT_ALV TYPE STANDARD TABLE OF ZGS_FIELDCATACCOUNT.
DATA:GS_ALV TYPE ZGS_FIELDCATACCOUNT.

DATA GC_CUSTOM_CONTROL_NAME TYPE SCRFNAME VALUE 'OOALV'.  "屏幕对象

DATA GR_CCONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER .    "存放装ALV的容器
DATA GR_ALVGRID    TYPE REF TO CL_GUI_ALV_GRID .            "AVL对象
DATA GT_FIELDCAT   TYPE LVC_T_FCAT .                        "存放字段目录的内表
DATA GS_LAYOUT     TYPE LVC_S_LAYO .                        "存放ALV样式的结构

DATA: WA_STBL TYPE LVC_S_STBL.
WA_STBL-COL = ABAP_TRUE.
WA_STBL-ROW = ABAP_TRUE.

DATA OKCODE_9000 TYPE SY-UCOMM.
DATA GT_EXCLUDE    TYPE UI_FUNCTIONS."隐藏按钮

TABLES:EKPO,BKPF,BSEG.

*----------------------------------------------------------------------*
*       CLASS cl_event_receiver DEFINITION
*----------------------------------------------------------------------*
* OOALV事件声明
*----------------------------------------------------------------------*
CLASS CL_EVENT_RECEIVER DEFINITION.
  PUBLIC SECTION.
*    " 数据变更
    METHODS HANDLE_DATA_CHANGED
                  FOR EVENT DATA_CHANGED OF CL_GUI_ALV_GRID
      IMPORTING ER_DATA_CHANGED
                  E_ONF4
                  E_ONF4_BEFORE
                  E_ONF4_AFTER
                  E_UCOMM.
*
    METHODS HANDLE_DATA_CHANGED_FINISHED
                  FOR EVENT DATA_CHANGED_FINISHED OF CL_GUI_ALV_GRID
      IMPORTING E_MODIFIED
                  ET_GOOD_CELLS.

    " 声明单击事件的方法
    METHODS HANDLE_HOTSPOT_CLICK
                  FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID
      IMPORTING E_ROW_ID E_COLUMN_ID ES_ROW_NO.

    " 声明双击事件方法
    METHODS HANDLE_DOUBLE_CLICK
                  FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID
      IMPORTING E_ROW E_COLUMN.
    " 声明Toolbar事件方法
    METHODS HANDLE_TOOLBAR
                  FOR EVENT TOOLBAR OF CL_GUI_ALV_GRID
      IMPORTING E_OBJECT E_INTERACTIVE.
    "声明USER-COMMAND 事件方法
    METHODS HANDLE_COMMAND
                  FOR EVENT USER_COMMAND OF CL_GUI_ALV_GRID
      IMPORTING E_UCOMM.

    METHODS HANDLE_F4_CLICK
                  FOR EVENT ONF4 OF CL_GUI_ALV_GRID
      IMPORTING E_FIELDNAME
                  E_FIELDVALUE
                  ES_ROW_NO
                  ER_EVENT_DATA
                  ET_BAD_CELLS
                  E_DISPLAY.

ENDCLASS.                    "cl_event_receiver DEFINITION
*----------------------------------------------------------------------*
*       CLASS cl_event_receiver IMPLEMENTATION
*----------------------------------------------------------------------*
* 实例化OOALV事件
*----------------------------------------------------------------------*
CLASS CL_EVENT_RECEIVER IMPLEMENTATION.
  " 数据变更
  METHOD HANDLE_DATA_CHANGED.
    FIELD-SYMBOLS: <FS_MOD_ROWS> TYPE STANDARD TABLE,
                   <LFS_CELLS>   TYPE LVC_T_MODI,
                   <FS_CELL_WA>  TYPE LVC_S_MODI,
                   <FS>          TYPE ZGS_FIELDCATACCOUNT.

    IF NOT ER_DATA_CHANGED->MP_MOD_ROWS IS INITIAL.

      ASSIGN ER_DATA_CHANGED->MP_MOD_ROWS->* TO <FS_MOD_ROWS>.
      ASSIGN ER_DATA_CHANGED->MT_MOD_CELLS TO <LFS_CELLS>.

      LOOP AT <LFS_CELLS> ASSIGNING FIELD-SYMBOL(<LFS_CELL>).
        READ TABLE <FS_MOD_ROWS> INDEX SY-TABIX ASSIGNING <FS>.
        MOVE-CORRESPONDING  <FS> TO GS_ALV.

        SELECT POSID,
               POST1
          FROM PRPS
          INTO TABLE @DATA(LT_ZWBS_F4)
          WHERE POSID = @GS_ALV-ZWBS.
        READ TABLE LT_ZWBS_F4 INDEX INTO DATA(LS_ZWBS_F4).
        GS_ALV-BKTXT = LS_ZWBS_F4-POST1.
*      IF gs_alv-ZWBS = 'T   EST'.
*        gs_alv-BKTXT = 'TESTTEST'.
*      ENDIF.
        MODIFY GT_ALV FROM GS_ALV INDEX <LFS_CELL>-ROW_ID.

      ENDLOOP.
    ENDIF.
*刷新显示
    GR_ALVGRID->SET_FRONTEND_LAYOUT( IS_LAYOUT = GS_LAYOUT ).
    GR_ALVGRID->REFRESH_TABLE_DISPLAY( IS_STABLE = WA_STBL ).

  ENDMETHOD.
  METHOD HANDLE_DATA_CHANGED_FINISHED.

  ENDMETHOD.
  " 单击事件方法的实现
  METHOD HANDLE_HOTSPOT_CLICK.
    CONDENSE  E_ROW_ID  NO-GAPS.
    CONDENSE  E_COLUMN_ID  NO-GAPS.

    IF E_COLUMN_ID 'BELNR'.
      READ TABLE GT_ALV INTO DATA(GS_ALVINDEX E_ROW_ID.
      SET PARAMETER ID 'BLN' FIELD GS_ALV-BELNR.
      SET PARAMETER ID 'BUK' FIELD GS_ALV-BUKRS.
      SET PARAMETER ID 'GJR' FIELD GS_ALV-GJAHR.
      CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
    ENDIF.
  ENDMETHOD.                    "handle_HOTSPOT_CLICK
*  " 双击事件方法的实现
  METHOD HANDLE_DOUBLE_CLICK.
    CONDENSE E_ROW     NO-GAPS.
    CONDENSE E_COLUMN  NO-GAPS.
    MESSAGE I001(00WITH '双击事件->行号:' E_ROW  '、列名:' E_COLUMN.
  ENDMETHOD.                    "handle_double_click
  " 实现Toolbar事件方法
  METHOD HANDLE_TOOLBAR.
    DATA: LS_TOOLBAR TYPE STB_BUTTON.
    CLEAR: LS_TOOLBAR.
    LS_TOOLBAR-BUTN_TYPE 3" 分隔符
    APPEND LS_TOOLBAR TO E_OBJECT->MT_TOOLBAR.
    CLEAR: LS_TOOLBAR.
    LS_TOOLBAR-FUNCTION 'DISP'.    " 功能码
    LS_TOOLBAR-ICON = ICON_DISPLAY.  " 图标名称
    LS_TOOLBAR-QUICKINFO '编辑'.   " 图标的提示信息
    LS_TOOLBAR-BUTN_TYPE 0.        " 0表示正常按钮
    LS_TOOLBAR-DISABLED ''.        " X表示灰色,不可用
    LS_TOOLBAR-TEXT '编辑'.       " 按钮上显示的文本
    APPEND LS_TOOLBAR TO E_OBJECT->MT_TOOLBAR.
  ENDMETHOD.                    "handle_toolbar
  " 实现USER-COMMAND 事件方法
  METHOD HANDLE_COMMAND.
    CASE E_UCOMM.
      WHEN 'DISP'.
        MESSAGE I001(00WITH 'Toolbar事件 + USER-COMMAND事件 '.
    ENDCASE.
  ENDMETHOD.                    "HANDLE_COMMAND
  "实例化
  METHOD HANDLE_F4_CLICK.
    "定义接受f4返回值的表
    DATA GT_ddshretval TYPE TABLE OF ddshretval.
    CASE e_fieldname.
      "取点f4帮助后显示的数据
      WHEN 'ZWBS'.
        SELECT POSID,
               post1
          FROM PRPS
          UP TO 100 ROWS
          INTO TABLE @DATA(lt_zwbs_f4)
          WHERE PRPS~vernr NE ''.
        "调用f4帮助显示函数
        CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
          EXPORTING
            RETFIELD               =  'POSID'
           DYNPPROG               = SY-CPROG
           DYNPNR                 = SY-DYNNR
           DYNPROFIELD            'ZWBS'
           VALUE_ORG              'S'
           CALLBACK_PROGRAM       = SY-CPROG
          TABLES
            VALUE_TAB              = lt_zwbs_f4
           RETURN_TAB             = GT_ddshretval
         EXCEPTIONS
           PARAMETER_ERROR        4
           NO_VALUES_FOUND        2
           OTHERS                 3
                  .
        IF SY-SUBRC 0.
* Implement suitable error handling here
          "读取f4帮助返回的值
          READ TABLE gt_ddshretval INDEX INTO DATA(lS_ZWBS_F4).
          READ TABLE gt_alv INDEX es_row_no-ROW_ID ASSIGNING FIELD-SYMBOL(<fs_alv>).
          <FS_ALV>-ZWBS = lS_ZWBS_F4-FIELDVAL.
          DATA lw_zwbs TYPE prps-POSID.
          "实现wbs内外部转换
          CALL FUNCTION 'CONVERSION_EXIT_ABPSN_INPUT'
             EXPORTING
                INPUT      = <FS_ALV>-ZWBS
                IMPORTING
                   OUTPUT  = lw_zwbs.
         "取选择的wbs的描述赋给alv
         SELECT POSID,
               post1
          FROM PRPS
          INTO TABLE @DATA(lt_prps)
          WHERE POSID = @lw_zwbs.          

READ TABLE lt_prps INDEX INTO DATA(ls_prps).          <fs_alv>
-BKTXT = ls_prps-POST1."使用指针方式赋值          
"使用结构方式赋值
*          gs_alv-BKTXT = ls_prps-POST1.
*          MODIFY gt_alv FROM gs_alv INDEX es_row_no-ROW_ID  TRANSPORTING BKTXT.        
ENDIF.
*      WHEN .      
WHEN OTHERS.    
ENDCASE.      
"刷新显示      
CALL METHOD GR_ALVGRID->set_frontend_layout( IS_LAYOUT = gs_layout ).      
CALL METHOD GR_ALVGRID->REFRESH_TABLE_DISPLAY( is_stable = wa_stbl ).  


ENDMETHOD.                    "HANDLE_COMMAND

ENDCLASS.                    "cl_event_receiver IMPLEMENTATION

INITIALIZATION..  

SELECTION-SCREEN BEGIN OF BLOCK 1.  
PARAMETERS: P_BUKRS TYPE BKPF-BUKRS"公司代码              P_GJAHR 
TYPE BKPF-GJAHR.  "会计年度  
SELECT-OPTIONS: S_MONAT FOR BKPF-MONAT,  "会计期间                S_BUDAT 
FOR BKPF-BUDAT,    "过账日期                S_BELNR 
FOR BKPF-BELNR,    "会计凭证编号                S_BLART 
FOR BKPF-BLART.   "凭证类型  
SELECTION-SCREEN END OF BLOCK 1.

START-OF-SELECTION.  

SELECT BKPF~BUKRS,         BKPF
~GJAHR,         BKPF
~MONAT,         BKPF
~BUDAT,         BKPF
~BELNR,         BKPF
~BLART,         BKPF
~XBLNR,         BKPF
~BKTXT,         BKPF
~STBLG,         BSEG
~BSCHL    
UP TO 100 ROWS    
INTO CORRESPONDING FIELDS OF TABLE @GT_ALV    
FROM BKPF    INNER 
JOIN BSEG      
ON  BKPF~BUKRS = BSEG~BUKRS      
AND BKPF~BELNR = BSEG~BELNR      
AND BKPF~GJAHR = BSEG~GJAHR    
WHERE BKPF~BUKRS = @P_BUKRS      
AND BKPF~GJAHR = @P_GJAHR      
AND BKPF~BUDAT IN @S_BUDAT      
AND BKPF~BELNR IN @S_BELNR      
AND BKPF~BLART IN @S_BLART.

END-OF-SELECTION.  

CALL SCREEN 9000.
*&---------------------------------------------------------------------*
*&      Module  STATUS_9000  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE STATUS_9000 OUTPUT.
*  SET PF-STATUS 'STANDRAD'.  
SET PF-STATUS 'STANDRAD'.  
SET TITLEBAR 'Z001'.  
"创建OOALV对象实例  
IF GR_ALVGRID IS INITIAL.    
CREATE OBJECT GR_CCONTAINER  " 创建容器      
EXPORTING        CONTAINER_NAME              
= GC_CUSTOM_CONTROL_NAME    "给实例化后的对象传参      
EXCEPTIONS        CNTL_ERROR                  
1        CNTL_SYSTEM_ERROR           
2        CREATE_ERROR                
3        LIFETIME_ERROR              
4        LIFETIME_DYNPRO_DYNPRO_LINK 
5        
OTHERS                      6.    

CREATE OBJECT GR_ALVGRID  " 创建ALV对象      
EXPORTING        I_PARENT          
= GR_CCONTAINER  "传入要将ALV放入的容器      
EXCEPTIONS        ERROR_CNTL_CREATE 
1        ERROR_CNTL_INIT   
2        ERROR_CNTL_LINK   
3        ERROR_DP_CREATE   
4        
OTHERS            5.    
IF SY-SUBRC <> 0.    

ENDIF.    

PERFORM PREPARE_FIELD_CATALOG CHANGING GT_FIELDCAT .  "获取字段目录    
PERFORM SET_LAYOUT CHANGING GS_LAYOUT.   "设置全局显示样式    
PERFORM HIDE_BUTTON TABLES GT_EXCLUDE.  "隐藏标准屏幕的按钮    

"定义f4帮助前需要传入的字段    
DATA:lt_f4 TYPE lvc_t_f4,          ls_f4 
TYPE lvc_s_f4.    ls_f4

-FIELDNAME 'ZWBS'.    ls_f4
-REGISTER 'X'.    ls_f4
-GETBEFORE 'X'.    ls_f4
-CHNGEAFTER ''.    ls_f4
-INTERNAL ''.    

INSERT ls_f4 INTO TABLE lt_f4.    
CALL METHOD gr_alvgrid->REGISTER_F4_FOR_FIELDS      
EXPORTING        IT_F4 
= lt_f4.


*   注册事件单元格已修改事件    GR_ALVGRID
->REGISTER_EDIT_EVENT(      
EXPORTING
*        i_event_id = cl_gui_alv_grid=>mc_evt_modified )." 事件单元格已修改        I_EVENT_ID 
= CL_GUI_ALV_GRID=>MC_EVT_ENTER )." 事件单元格已修改    

DATA:EVENT_RECEIVER TYPE REF TO CL_EVENT_RECEIVER.    "定义实例化事件对象

*   实例化事件方法    
CREATE OBJECT EVENT_RECEIVER.    

" 注册事件handler方法    
SET HANDLER EVENT_RECEIVER->HANDLE_HOTSPOT_CLICK FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_DOUBLE_CLICK   FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_TOOLBAR FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_COMMAND FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_DATA_CHANGED FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_DATA_CHANGED_FINISHED FOR GR_ALVGRID.    
SET HANDLER EVENT_RECEIVER->HANDLE_F4_CLICK FOR GR_ALVGRID.    

"调用OOALV类方法进行显示    
CALL METHOD GR_ALVGRID->SET_TABLE_FOR_FIRST_DISPLAY      
EXPORTING        I_DEFAULT                     
'X'        IS_LAYOUT                     
= GS_LAYOUT
*       it_toolbar_excluding          = gt_exclude  "导入需要删除显示的按钮      
CHANGING        IT_OUTTAB                     
= GT_ALV        "要显示的内表        IT_FIELDCATALOG               
= GT_FIELDCAT      
EXCEPTIONS        INVALID_PARAMETER_COMBINATION 
1        PROGRAM_ERROR                 
2        TOO_MANY_LINES                
3        
OTHERS                        4.  
ENDIF.
ENDMODULE.
*&---------------------------------------------------------------------*
*&      Form  PREPARE_FIELD_CATALOG
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_GT_FIELDCAT  text
*----------------------------------------------------------------------*
FORM PREPARE_FIELD_CATALOG CHANGING GT_FIELDCAT  TYPE LVC_T_FCAT.  
DATA LS_FCAT TYPE LVC_S_FCAT .
*  ls_fcat-fieldname = 'MATNR' .  

CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'    
EXPORTING
*     I_BUFFER_ACTIVE        =      I_STRUCTURE_NAME       
'ZGS_FIELDCATACCOUNT'
*     I_CLIENT_NEVER_DISPLAY = 'X'
*     I_BYPASSING_BUFFER     =
*     I_INTERNAL_TABNAME     =    
CHANGING      CT_FIELDCAT            
= GT_FIELDCAT    
EXCEPTIONS      INCONSISTENT_INTERFACE 
1      PROGRAM_ERROR          
2      
OTHERS                 3.  
IF SY-SUBRC <> 0.
* Implement suitable error handling here  
ENDIF.  
"BELNR字段热点(下划线)  
LOOP AT GT_FIELDCAT ASSIGNING FIELD-SYMBOL(<LFS_FIELDCAT>)    
WHERE FIELDNAME 'BELNR'.    <LFS_FIELDCAT>
-HOTSPOT = ABAP_TRUE.  
ENDLOOP.  
"表头选择框  
LOOP AT GT_FIELDCAT ASSIGNING <LFS_FIELDCAT>    
WHERE FIELDNAME 'ZCB'.    <LFS_FIELDCAT>
-EDIT 'X'.    <LFS_FIELDCAT>
-SCRTEXT_L '复选框'.    <LFS_FIELDCAT>
-SCRTEXT_M '复选框'.    <LFS_FIELDCAT>
-SCRTEXT_S '复选框'.    <LFS_FIELDCAT>
-CHECKBOX = ABAP_TRUE.  
ENDLOOP.
*  f4帮助  
LOOP AT GT_FIELDCAT ASSIGNING <LFS_FIELDCAT>    
WHERE FIELDNAME 'ZWBS'.    
DATA(LV_NUMBER1= <LFS_FIELDCAT>-ROW_POS.    
DATA(LV_NUMBER2= <LFS_FIELDCAT>-COL_POS.    
CLEAR <LFS_FIELDCAT>.    <LFS_FIELDCAT>
-ROW_POS = LV_NUMBER1.    <LFS_FIELDCAT>
-COL_POS = LV_NUMBER2.
*    <lfs_fieldcatf4>-f4availabl = abap_true.    <LFS_FIELDCAT>
-FIELDNAME 'ZWBS'.    <LFS_FIELDCAT>
-EDIT 'X'.    <LFS_FIELDCAT>
-F4AVAILABL 'X'.    <LFS_FIELDCAT>
-SCRTEXT_L 'WBS'.    <LFS_FIELDCAT>
-SCRTEXT_M 'WBS'.    <LFS_FIELDCAT>
-SCRTEXT_S 'WBS'.
*    <lfs_fieldcat>-TABNAME = ''.  
ENDLOOP.

ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  SET_LAYOUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_GS_LAYOUT  text
*----------------------------------------------------------------------*
FORM SET_LAYOUT  CHANGING GS_LAYOUT TYPE LVC_S_LAYO.  GS_LAYOUT
-ZEBRA 'X'.  GS_LAYOUT
-CWIDTH_OPT 'X'.  GS_LAYOUT
-NO_ROWMARK 'X'.
ENDFORM.
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_9000  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_9000 INPUT.  OKCODE_9000 
= SY-UCOMM.  
CASE OKCODE_9000.    
WHEN '&F03' OR '&F12'.
*      LEAVE PROGRAM.      
LEAVE TO SCREEN 0.    
WHEN 'BACK'.      
LEAVE TO SCREEN 0.    
WHEN OTHERS.  
ENDCASE.

*刷新显示
*
*    gr_alvgrid->set_frontend_layout( is_layout = gs_layout ).
*    gr_alvgrid->refresh_table_display( is_stable = wa_stbl ).

ENDMODULE.
*&---------------------------------------------------------------------*
*&      Form  HIDE_BUTTON
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_GT_EXCLUDE  text
*----------------------------------------------------------------------*
FORM HIDE_BUTTON TABLES PT_EXCLUDE.  
DATA: LS_EXCLUDE TYPE UI_FUNC.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_MAXIMUM .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_MINIMUM .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_SUBTOT .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_SUM .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_AVERAGE .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_MB_SUM .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_MB_SUBTOT .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_SORT_ASC.  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_SORT_DSC .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_FIND .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_FILTER .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_PRINT .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_PRINT_PREV .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_MB_EXPORT .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_GRAPH .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_MB_VIEW .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_DETAIL .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_HELP .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_FC_INFO .  
APPEND LS_EXCLUDE TO PT_EXCLUDE.  LS_EXCLUDE 
= CL_GUI_ALV_GRID=>MC_MB_VARIANT.  
APPEND LS_EXCLUDE TO PT_EXCLUDE.

ENDFORM.

posted @ 2021-12-31 15:01  万有引力啊  阅读(233)  评论(0)    收藏  举报