REPORT z16_10.
TYPE-POOLS : slis.
DATA gt_fieldcat TYPE slis_t_fieldcat_alv.
DATA gs_fieldcat TYPE slis_fieldcat_alv.
DATA gt_events TYPE slis_t_event.
DATA gs_event TYPE slis_alv_event.
DATA: gs_layout TYPE slis_layout_alv.
DATA : gt_itab TYPE TABLE OF sflight WITH HEADER LINE.
SELECT * FROM sflight
INTO CORRESPONDING FIELDS OF TABLE gt_itab
UP TO 25 ROWS.
MOVE 'PF_STATUS_SET' TO gs_event-name.
MOVE 'ALV_STATUS_SET' TO gs_event-form.
APPEND gs_event TO gt_events.
MOVE 'DATA_CHANGED' TO gs_event-name.
MOVE 'ALV_DATA_CHANGED' TO gs_event-form.
APPEND gs_event TO gt_events.
gs_layout-edit = 'X'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_structure_name = 'SFLIGHT'
it_events = gt_events
it_fieldcat = gt_fieldcat
is_layout = gs_layout
i_callback_user_command = 'ALV_USER_COMMAND'
TABLES
t_outtab = gt_itab.
*&---------------------------------------------------------------------*
*& Form alv_user_command
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_UCOMM text
* -->P_SELFIELD text
*----------------------------------------------------------------------*
FORM alv_user_command USING p_ucomm LIKE sy-ucomm
p_selfield TYPE slis_selfield.
CASE p_ucomm.
WHEN 'SAVE'.
MODIFY sflight FROM TABLE gt_itab.
IF sy-subrc EQ 0.
COMMIT WORK.
ELSE.
ROLLBACK WORK.
ENDIF.
ENDCASE.
ENDFORM. " ALV_USER_COMMAND
*&---------------------------------------------------------------------*
*& Form alv_status_set
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PT_EXTAB text
*----------------------------------------------------------------------*
FORM alv_status_set USING pt_extab TYPE slis_t_extab .
CLEAR: pt_extab[].
* SET PF-STATUS 'ALV_STATUS'.
SET PF-STATUS 'STANDARD_FULLSCREEN'.
ENDFORM. "ALV_STATUS_SET
*&---------------------------------------------------------------------*
*& Form ALV_DATA_CHANGED
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PCL_DATA text
*----------------------------------------------------------------------*
FORM alv_data_changed USING pcl_data TYPE REF TO
cl_alv_changed_data_protocol.
DATA : l_name(20),
ls_cells TYPE lvc_s_modi.
FIELD-SYMBOLS <fs_value>.
LOOP AT pcl_data->mt_mod_cells INTO ls_cells.
CLEAR gt_itab.
READ TABLE gt_itab INDEX ls_cells-row_id.
CONCATENATE 'GT_ITAB-' ls_cells-fieldname INTO l_name.
ASSIGN (l_name) TO <fs_value>.
<fs_value> = ls_cells-value.
MODIFY gt_itab INDEX ls_cells-row_id.
ENDLOOP.
ENDFORM. "alv_data_changed
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
510 | REPORT z12_05. | sapjoy | 2012.07.30 | 1156 |
509 | REPORT z12_30. | sapjoy | 2012.07.30 | 1160 |
508 | PROGRAM z13_03. | sapjoy | 2012.08.01 | 1162 |
507 | Report Z15_02 | sapjoy | 2012.08.01 | 1164 |
506 | REPORT z15_15. | sapjoy | 2012.08.01 | 1168 |
505 | REPORT z05_01. [3] | sapjoy | 2012.07.30 | 1170 |
504 | PROGRAM z13_02. | sapjoy | 2012.08.01 | 1181 |
503 | REPORT z15_03. | sapjoy | 2012.08.01 | 1181 |
502 | REPORT z15_13. | sapjoy | 2012.08.01 | 1181 |
501 | REPORT z16_05. | sapjoy | 2012.08.01 | 1183 |
» | REPORT z16_10. | sapjoy | 2012.08.01 | 1183 |
499 | REPORT z15_25. [1] | sapjoy | 2012.08.01 | 1189 |
498 | report Z12_33 | sapjoy | 2012.07.30 | 1193 |
497 | REPORT z15_20. | sapjoy | 2012.08.01 | 1195 |
496 | REPORT z12_27. | sapjoy | 2012.07.30 | 1208 |
495 | REPORT z15_23. [1] | sapjoy | 2012.08.01 | 1215 |
494 | REPORT z15_17. [1] | sapjoy | 2012.08.01 | 1219 |
493 | REPORT Z12_22 | sapjoy | 2012.07.30 | 1226 |
492 | REPORT z16_04. | sapjoy | 2012.08.01 | 1246 |
491 | REPORT z12_06. | sapjoy | 2012.07.30 | 1294 |