CLASS lcl_event_alv DEFINITION.
PUBLIC SECTION.
METHODS:
h_double_click FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING e_row "#EC NEEDED
e_column. "#EC NEEDED
ENDCLASS. " LCL_EVENT_ALV DEFINITION
*---------------------------------------------------------------------*
* Class (Implementation) lcl_event_alv
*---------------------------------------------------------------------*
CLASS lcl_event_alv IMPLEMENTATION.
METHOD h_double_click.
* READ TABLE gt_user INDEX e_row-index INTO gs_user.
IF sy-subrc EQ 0.
PERFORM f_user_command USING '&IC1'.
ENDIF.
ENDMETHOD. " H_double_click
ENDCLASS. " LCL_EVENT_ALV
*&---------------------------------------------------------------------*
*& Form f_user_command
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->U_UCOMM text
*----------------------------------------------------------------------*
FORM f_user_command USING u_ucomm TYPE sy-ucomm.
Data : lv_valid TYPE char1. "#EC NEEDED
Data : lw_data type ZTMMCUST101_CN .
CASE u_ucomm.
*RC - 2008.04.07 -->
* WHEN '&IC1'.
WHEN c_save.
* Verification of Changes
CALL METHOD go_alv_grid->check_changed_data
IMPORTING
e_valid = lv_valid.
* Delete table
loop at gt_data assigning <fs_data>.
delete table gt_grid1 from <fs_data>.
endloop.
loop at gt_grid1 assigning <fs_data>.
MOVE-CORRESPONDING <fs_data> to lw_data.
delete ZTMMCUST101_CN from lw_data.
free lw_data.
endloop.
* Update Modify table
LOOP AT gt_data assigning <fs_data>.
MOVE-CORRESPONDING <fs_data> to lw_data.
modify ZTMMCUST101_CN from lw_data.
free lw_data.
ENDLOOP.
message i009(z_dev_custom_cn).
ENDCASE.
endform. "f_user_command
PUBLIC SECTION.
METHODS:
h_double_click FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING e_row "#EC NEEDED
e_column. "#EC NEEDED
ENDCLASS. " LCL_EVENT_ALV DEFINITION
*---------------------------------------------------------------------*
* Class (Implementation) lcl_event_alv
*---------------------------------------------------------------------*
CLASS lcl_event_alv IMPLEMENTATION.
METHOD h_double_click.
* READ TABLE gt_user INDEX e_row-index INTO gs_user.
IF sy-subrc EQ 0.
PERFORM f_user_command USING '&IC1'.
ENDIF.
ENDMETHOD. " H_double_click
ENDCLASS. " LCL_EVENT_ALV
*&---------------------------------------------------------------------*
*& Form f_user_command
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->U_UCOMM text
*----------------------------------------------------------------------*
FORM f_user_command USING u_ucomm TYPE sy-ucomm.
Data : lv_valid TYPE char1. "#EC NEEDED
Data : lw_data type ZTMMCUST101_CN .
CASE u_ucomm.
*RC - 2008.04.07 -->
* WHEN '&IC1'.
WHEN c_save.
* Verification of Changes
CALL METHOD go_alv_grid->check_changed_data
IMPORTING
e_valid = lv_valid.
* Delete table
loop at gt_data assigning <fs_data>.
delete table gt_grid1 from <fs_data>.
endloop.
loop at gt_grid1 assigning <fs_data>.
MOVE-CORRESPONDING <fs_data> to lw_data.
delete ZTMMCUST101_CN from lw_data.
free lw_data.
endloop.
* Update Modify table
LOOP AT gt_data assigning <fs_data>.
MOVE-CORRESPONDING <fs_data> to lw_data.
modify ZTMMCUST101_CN from lw_data.
free lw_data.
ENDLOOP.
message i009(z_dev_custom_cn).
ENDCASE.
endform. "f_user_command