2

現在、ALV グリッドがあり、ダブルクリックしてトランザクションを呼び出しIE03、最初の列 ( eqkt-equnr) に情報を渡すことができます。ただし、このトランザクションは、クリックした列に関係なく呼び出されます。これはそれほど悪くはありませんがIW33、3 番目の列をクリックして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.
4

1 に答える 1

4

このフィールドwa_selrow-fieldnameを使用して、クリックされた列を特定します。グリッドを行選択モードからセル選択モードに切り替える必要がある場合があることに注意してください-最初にグリッドを作成した方法を示していないため、あなたの場合にこれを行う方法を教えることはできません. SEL_MODEプロパティを見てみましょう。役立つかもしれません。

于 2012-11-30T19:28:27.390 に答える