You are on page 1of 4

*&---------------------------------------------------------------------* *& Report ZALV_EVENTS * *& * *&---------------------------------------------------------------------* *& * *& * *&---------------------------------------------------------------------* REPORT zalv_events TYPE-POOLS: slis.

DATA: itab TYPE TABLE OF vbap, i_field TYPE slis_t_fieldcat_alv, wa_field TYPE slis_fieldcat_alv, i_sort TYPE slis_t_sortinfo_alv, wa_sort TYPE slis_sortinfo_alv, wa_layout TYPE slis_layout_alv, i_event TYPE slis_t_event, wa_event TYPE slis_alv_event, wa TYPE vbap. .

SELECT * FROM vbap INTO TABLE itab UP TO 50 ROWS.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE' EXPORTING i_program_name = sy-cprog i_structure_name = 'VBAP' * I_CLIENT_NEVER_DISPLAY = 'X' * I_INCLNAME = * I_BYPASSING_BUFFER = * I_BUFFER_ACTIVE = CHANGING ct_fieldcat = i_field EXCEPTIONS inconsistent_interface = 1 program_error = 2 OTHERS = 3 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. READ TABLE i_field INTO wa_field WITH KEY fieldname = 'PMATN'. IF sy-subrc = 0. wa_field-no_out = 'X'. MODIFY i_field FROM wa_field INDEX sy-tabix TRANSPORTING no_out. ENDIF. READ TABLE i_field INTO wa_field WITH KEY fieldname = 'NETWR'. IF sy-subrc = 0.

wa_field-do_sum = 'X'. MODIFY i_field FROM wa_field INDEX sy-tabix TRANSPORTING do_sum. ENDIF. READ TABLE i_field INTO wa_field WITH KEY fieldname = 'MATWA'. IF sy-subrc = 0. wa_field-seltext_l = 'Material No.'. wa_field-seltext_m = 'Mater No.'. wa_field-seltext_s = 'Mat No.'. CLEAR: wa_field-ref_tabname. MODIFY i_field FROM wa_field INDEX sy-tabix TRANSPORTING seltext_s seltext_m seltext_l ref_tabname. ENDIF. wa_sort-fieldname wa_sort-tabname wa_sort-up wa_sort-subtot APPEND wa_sort TO = 'VBELN'. = 'ITAB'. = 'X'. = 'X'. i_sort.

wa_layout-zebra = 'X'. *CALL FUNCTION 'REUSE_ALV_EVENTS_GET' * EXPORTING * i_list_type = 0 * IMPORTING * et_events = i_event * EXCEPTIONS * list_type_wrong = 1 * OTHERS = 2. *IF sy-subrc <> 0. ** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO ** WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. *ENDIF. * *READ TABLE i_event INTO wa_event WITH KEY name = 'TOP_OF_PAGE'. *IF sy-subrc = 0. * wa_event-form = 'TOP'. * MODIFY i_event FROM wa_event INDEX sy-tabix TRANSPORTING form. *ENDIF. wa_event-form = 'TOP'. wa_event-name = 'TOP_OF_PAGE'. APPEND wa_event TO i_event. wa_event-form = 'FOOT'. wa_event-name = 'END_OF_LIST'. APPEND wa_event TO i_event. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING i_callback_program = * I_CALLBACK_PF_STATUS_SET * I_CALLBACK_USER_COMMAND * I_CALLBACK_TOP_OF_PAGE

sy-cprog = ' ' = ' ' = 'TOP'

* * * *

I_CALLBACK_HTML_TOP_OF_PAGE = ' ' I_CALLBACK_HTML_END_OF_LIST = ' ' I_STRUCTURE_NAME = I_BACKGROUND_ID = ' ' i_grid_title = 'Demo for ALV Events' * I_GRID_SETTINGS = is_layout = wa_layout it_fieldcat = i_field * IT_EXCLUDING = * IT_SPECIAL_GROUPS = it_sort = i_sort * IT_FILTER = * IS_SEL_HIDE = i_default = 'X' i_save = 'A' * IS_VARIANT = it_events = i_event * IT_EVENT_EXIT = * IS_PRINT = * IS_REPREP_ID = * I_SCREEN_START_COLUMN = 0 * I_SCREEN_START_LINE = 0 * I_SCREEN_END_COLUMN = 0 * I_SCREEN_END_LINE = 0 * IT_ALV_GRAPHICS = * IT_HYPERLINK = * IT_ADD_FIELDCAT = * IT_EXCEPT_QINFO = * I_HTML_HEIGHT_TOP = * I_HTML_HEIGHT_END = * IMPORTING * E_EXIT_CAUSED_BY_CALLER = * ES_EXIT_CAUSED_BY_USER = TABLES t_outtab = itab * EXCEPTIONS * PROGRAM_ERROR = 1 * OTHERS = 2 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. *&--------------------------------------------------------------------* *& Form TOP *&--------------------------------------------------------------------* * text *---------------------------------------------------------------------* FORM top. DATA: i_write TYPE slis_t_listheader, wa_write TYPE slis_listheader. wa_write-typ = 'H'. wa_write-info = 'This is a Demo '. APPEND wa_write TO i_write. wa_write-typ = 'S'. wa_write-key = 'Date:'.

WRITE sy-datum TO wa_write-info. APPEND wa_write TO i_write. wa_write-typ = 'S'. wa_write-key = 'Time:'. WRITE sy-uzeit TO wa_write-info. APPEND wa_write TO i_write. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING it_list_commentary = i_write i_logo = 'ENJOYSAP_LOGO'. "'MY_LOGO'

ENDFORM.

"TOP

*&--------------------------------------------------------------------* *& Form FOOT *&--------------------------------------------------------------------* * text *---------------------------------------------------------------------* FORM foot. WRITE: 'Test'. ENDFORM. "FOOT

You might also like