2

目前我有一个 ALV 网格,我可以双击调用事务IE03并传递第一列中的信息(即eqkt-equnr)。但是,无论您单击哪个列,都会调用此事务。IW33这不会那么糟糕,但是如果您单击第三列并在那里传递值,我需要能够调用equz-J_3GEIGNER

我当前的双击代码如下。t_report是我的结构,matnrequnr它的一部分。maktxJ_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.
4

1 回答 1

4

使用该字段wa_selrow-fieldname来确定单击了哪一列。请注意,您可能必须将网格从行选择模式切换到单元格选择模式 - 因为您没有首先向我们展示您是如何创建网格的,所以我无法告诉您如何在您的情况下执行此操作。看看SEL_MODE楼盘,或许有帮助。

于 2012-11-30T19:28:27.390 回答