메뉴 건너뛰기

SAP 한국 커뮤니티

REPORT zfalv_011.

sapjoy 2011.02.16 10:50 조회 수 : 3624

REPORT  zfalv_011.


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 gs_glay      TYPE lvc_s_glay.


TYPES BEGIN OF t_line.
        INCLUDE STRUCTURE sflight.
TYPES checkbox TYPE c.
TYPES  END OF t_line.


DATA : gt_itab TYPE TABLE OF t_line 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.



CLEAR : gs_fieldcat, gt_fieldcat.
gs_fieldcat-col_pos = 1.
gs_fieldcat-fieldname =  'CHECKBOX'.
gs_fieldcat-checkbox = 'X'.
gs_fieldcat-edit = 'X'.
gs_fieldcat-seltext_m = '선택'.
APPEND gs_fieldcat TO gt_fieldcat.
*
CLEAR : gs_fieldcat.
gs_fieldcat-col_pos = 2.
gs_fieldcat-fieldname =  'CARRID'.
gs_fieldcat-seltext_m = '항공사 ID'.
APPEND gs_fieldcat TO gt_fieldcat.


CLEAR : gs_fieldcat.
gs_fieldcat-col_pos = 3.
gs_fieldcat-fieldname =  'CONNID'.
gs_fieldcat-seltext_m = '운항 ID'.
APPEND gs_fieldcat TO gt_fieldcat.



CLEAR : gs_fieldcat.
gs_fieldcat-col_pos = 4.
gs_fieldcat-fieldname =  'FLDATE'.
gs_fieldcat-seltext_m = '운항일'.
APPEND gs_fieldcat TO gt_fieldcat.


gs_glay-edt_cll_cb = 'X'.


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    i_callback_program      = sy-repid
    i_grid_settings         = gs_glay
    it_fieldcat             = gt_fieldcat
    it_events               = gt_events
    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 '&IC1'.


      READ TABLE gt_itab INDEX p_selfield-tabindex.
      gt_itab-checkbox = 'X'.
      MODIFY gt_itab INDEX p_selfield-tabindex.


    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

번호 제목 글쓴이 날짜 조회 수
669 <b>easy abap 소스 전체 파일 입니다. [188] file sapjoy 2008.05.01 10120
668 REPORT z18_033 [47] sapjoy 2008.10.13 9031
667 REPORT Z15_003 [49] sapjoy 2008.04.15 7498
666 report zunicode_027. [4] sapjoy 2008.11.21 6262
665 REPORT Z20_01. sapjoy 2012.08.01 5056
664 REPORT z18_03. sapjoy 2012.08.01 4550
663 Z01_012 [9] sapjoy 2006.12.02 4543
662 Z_EXPORT_GRAPHIC_FROM_SE78 [1] sapjoy 2011.03.28 4443
661 report zsapdoi_002. sapjoy 2008.12.26 4405
660 REPORT zsmw0010 sapjoy 2010.10.11 4313
659 REPORT z18_028 sapjoy 2007.04.09 4278
658 report zsalv_045 . sapjoy 2010.08.20 4262
657 Dynamic Table Maintenance [1] sapjoy 2006.12.04 4093
656 REPORT ZTABLE_UTIL sapjoy 2010.10.09 4010
655 REPORT Z19_02. sapjoy 2012.08.01 3921
654 report zsaptip_009 [1] sapjoy 2010.12.10 3852
653 INCLUDE ZXF04U01 sapjoy 2008.12.15 3695
652 REPORT ZTEST_ABAPTPDF sapjoy 2010.10.09 3691
651 REPORT Z_3DGRAPH. [1] sapjoy 2010.10.17 3659
» REPORT zfalv_011. sapjoy 2011.02.16 3624