目前我有一个ALV网格,我可以双击调用事务IE03
并传递第一列中的信息(eqkt-equnr
)。但是,无论您单击哪个列,都会调用此事务。这不会那么糟糕,但如果您点击第3列并在那里传递IW33
值,我需要能够致电equz-J_3GEIGNER
。
我目前的双击代码如下。 t_report
是我的结构,matnr
是equnr
部分。 maktx
是J_3GEIGNER
部分。
FORM user_command USING r_ucomm
wa_selrow TYPE slis_selfield.
IF r_ucomm = '&IC1'.
READ TABLE t_report INDEX wa_selrow-tabindex.
IF sy-subrc = 0.
SET PARAMETER ID 'EQN' FIELD t_report-matnr.
CALL TRANSACTION 'IE03' AND SKIP FIRST SCREEN.
ENDIF.
ENDIF.
ENDFORM.
答案 0 :(得分:3)
使用字段wa_selrow-fieldname
确定单击了哪个列。请注意,您可能必须将网格从行选择模式切换到单元格选择模式 - 因为您没有向我们展示您首先如何创建网格,我无法告诉您如何在您的情况下执行此操作。看看SEL_MODE
property,它可能会有所帮助。