我在 ALV 中的呼叫事务有问题。现在我想在我的弹出窗口中双击行时调用事务。它可能与否?
感谢您的回答,我使用 user_command '&IC1' -双击调用带有数据的弹出窗口:
IF selfield-fieldname = 'MATNR'.
PERFORM popup.
表格弹出:
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.