abap alv双击事件

TABLES:MARA.
TYPE-POOLS: SLIS.
SELECT-OPTIONS:MATNR FOR MARA-MATNR OBLIGATORY.

DATA:LT_MARA TYPE TABLE OF MARA WITH HEADER LINE,
FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
LAYOUT TYPE SLIS_LAYOUT_ALV,
W_REPID LIKE SY-REPID.

START-OF-SELECTION.
SELECT * FROM MARA INTO TABLE LT_MARA
WHERE MATNR IN MATNR.

W_REPID = SY-REPID.

  • 定义热键显示字段,使双击事件有效
    FIELDCAT-REF_TABNAME = ‘LT_MARA’.
    FIELDCAT-FIELDNAME = ‘MATNR’.
    FIELDCAT-HOTSPOT = ‘X’.
    APPEND FIELDCAT.

CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’
EXPORTING
I_CALLBACK_PROGRAM = W_REPID "定义回执程序
IS_LAYOUT = LAYOUT
I_STRUCTURE_NAME = ‘MARA’
I_CALLBACK_USER_COMMAND = ‘ALV_USER_COMMAND’ "定义执行事件
IT_FIELDCAT = FIELDCAT[]
TABLES
T_OUTTAB = LT_MARA.

---------------------------------------------------------------------

  •   事件触发子程序                         *
    

---------------------------------------------------------------------
FORM ALV_USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
RS_SELFIELD TYPE SLIS_SELFIELD.
CASE R_UCOMM.
WHEN ‘&IC1’.

  • 获取当前ALV所在行数据
    READ TABLE LT_MARA INDEX RS_SELFIELD-TABINDEX.
    SET PARAMETER ID: ‘MAT’ FIELD LT_MARA-MATNR.
    CALL TRANSACTION ‘MM03’ AND SKIP FIRST SCREEN.
    ENDCASE.
    ENDFORM.

作者:兔宝
来源:CSDN
原文:https://blog.csdn.net/szlaptop/article/details/8252093
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值