其他分享
首页 > 其他分享> > REUSE_ALV_GRID_DISPLAY_LVC-双击事件’&IC1′

REUSE_ALV_GRID_DISPLAY_LVC-双击事件’&IC1′

作者:互联网

ABAP程序中调用REUSE_ALV_GRID_DISPLAY_LVC显示ALV,经常会有双击某行或某字段跳转到其他tcode的需求。下面简单介绍一下。

双击事件的ucomm是'&IC1'.

完整代码:

 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 REPORT ztest_alv_lvc_2click.   TYPES:BEGIN OF gty_ekko,         ebeln TYPE ekko-ebeln,         verkf TYPE ekko-verkf,       END OF gty_ekko. DATA:git_ekko TYPE STANDARD TABLE OF gty_ekko,      gwa_ekko TYPE gty_ekko.   DATA:git_fcat   TYPE lvc_t_fcat,      gwa_fcat   LIKE LINE OF git_fcat,      gwa_layout TYPE lvc_s_layo. CONSTANTS: gco_callback_user_command TYPE slis_formname  VALUE 'FRM_USER_COMMAND'.   START-OF-SELECTION.     SELECT ebeln          verkf     INTO CORRESPONDING FIELDS OF TABLE git_ekko     FROM ekko   UP TO 10 ROWS.     PERFORM frm_set_catalog.     gwa_layout-zebra = 'X'.   gwa_layout-sel_mode = 'A'.   gwa_layout-cwidth_opt = 'X'.   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'     EXPORTING       i_callback_program      = sy-repid       is_layout_lvc           = gwa_layout       it_fieldcat_lvc         = git_fcat       i_callback_user_command = gco_callback_user_command     TABLES       t_outtab                = git_ekko[]     EXCEPTIONS       program_error           = 1       OTHERS                  = 2.   IF sy-subrc = 0.     ENDIF. FORM frm_user_command USING i_ucomm       TYPE sy-ucomm                             i_wa_selfield TYPE slis_selfield.   CASE i_ucomm.     WHEN '&IC1'.  "Double click *     if click on PO field, jump to me23n       IF i_wa_selfield-fieldname = 'EBELN'.         SET PARAMETER ID 'BES' FIELD i_wa_selfield-value.         CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.       ENDIF.     WHEN OTHERS.     ENDCASE.   ENDFORM. *&---------------------------------------------------------------------* *&      Form  FRM_SET_CATALOG *&---------------------------------------------------------------------* *       text *----------------------------------------------------------------------* *  -->  p1        text *  <--  p2        text *----------------------------------------------------------------------* FORM frm_set_catalog .     DATA:l_pos TYPE i VALUE 1.   CLEAR: l_pos.   l_pos = l_pos + 1.   gwa_fcat-coltext   = 'PO'.   gwa_fcat-scrtext_l = 'PO'.   gwa_fcat-scrtext_m = 'PO'.   gwa_fcat-scrtext_s = 'PO'.   gwa_fcat-fieldname = 'EBELN'.   gwa_fcat-col_pos = l_pos.   gwa_fcat-outputlen = '10'.   APPEND gwa_fcat TO git_fcat.   l_pos = l_pos + 1.   gwa_fcat-coltext   = 'PO item'.   gwa_fcat-scrtext_l = 'PO item'.   gwa_fcat-scrtext_m = 'PO item'.   gwa_fcat-scrtext_s = 'PO item'.   gwa_fcat-fieldname = 'VERKF'.   gwa_fcat-col_pos = l_pos.   gwa_fcat-outputlen = '20'.   APPEND gwa_fcat TO git_fcat.   ENDFORM.

运行:

跳转到me23n显示采购订单3000000100

以上。

 

标签:git,gwa,REUSE,双击,lvc,layout,TYPE,DISPLAY,ekko
来源: https://www.cnblogs.com/lvdong18847870057/p/12539724.html