ALVのコールトランザクションに問題があります。 今私は私のポップアップで行をダブルクリックすると、トランザクションを呼び出すしたい。可能かどうか?答えをポップアップウィンドウのCALL TRANSACTION
おかげ 私はuser_commandデータでポップアップウィンドウを呼び出すための '& IC1' - 二重クリックを使用します。
IF selfield-fieldname = 'MATNR'.
PERFORM popup.
FORMポップアップ:私の一番上にある
FORM popup.
DATA: wa_data LIKE zdata.
CLEAR: wa_data.
REFRESH it_data.
LOOP AT t_data.
CLEAR: wa_data.
MOVE-CORRESPONDING t_data TO wa_data.
APPEND wa_data TO it_data.
ENDLOOP.
CALL SCREEN 200
STARTING AT 20 20
ENDING AT 200 90.
ENDFORM.
その実装と定義:lcl_handle_events
CLASS lcl_handle_events DEFINITION.
PUBLIC SECTION.
METHODS: on_double_click FOR EVENT double_click OF cl_salv_events_table
IMPORTING row column.
ENDCLASS. "lcl_handle_events DEFINITION
CLASS lcl_handle_events IMPLEMENTATION.
METHOD on_double_click.
PERFORM get_po_ord_info USING row column.
ENDMETHOD. "on_double_click
ENDCLASS. "lcl_handle_events IMPLEMENTATION
これはALVである、次のとおりです
FORM get_po_ord_info USING row TYPE salv_de_row
column TYPE salv_de_column.
IF column EQ 'MATNR'.
SET PARAMETER ID 'MAT' FIELD t_dost-MATNR.
SET PARAMETER ID 'WRK' FIELD t_dost-WERKS.
CALL TRANSACTION 'ZCO06' AND SKIP FIRST SCREEN.
ENDIF.
ENDIF.
ENDFORM.
標準のダブルクリックイベントを使用してください。どうしたの? – Suncatcher
クラスlcl_handle_eventsを頭に入れてダブルクリックして、get_po_ord_infoをalvのcall transactionで作成しますが、それでもまだ動かないことを暗示しました。 – miedziopl
lcl_handle_eventsの完全なコードと、ハンドラとコールグリッドを接続するスニペットを挙げてください。 – Suncatcher