Here is a sample program. Welcome to SDN!!!
report zrich_0001 no standard page heading. * Global ALV Data Declarations type-pools slis. data: begin of i_alv occurs 0, matnr type mara-matnr, matkl type mara-matkl, end of i_alv. * Miscellanous Data Declarations data: fieldcat type slis_t_fieldcat_alv, events type slis_t_event, list_top_of_page type slis_t_listheader, top_of_page type slis_formname value 'TOP_OF_PAGE'. start-of-selection. perform initialization. perform get_data. perform call_alv. end-of-selection. ************************************************************************ * Form Initialization ************************************************************************ form initialization. clear i_alv. refresh i_alv. perform eventtab_build using events[]. endform. ************************************************************************ * Form Get_Data ************************************************************************ form get_data. select matnr into table i_alv from mara up to 100 rows. endform. ************************************************************************ * CALL_ALV ************************************************************************ form call_alv. data: variant type disvariant. data: repid type sy-repid. repid = sy-repid. variant-report = sy-repid. variant-username = sy-uname. perform build_field_catalog. perform comment_build using list_top_of_page[]. * Call ABAP List Viewer (ALV) call function 'REUSE_ALV_GRID_DISPLAY' exporting it_fieldcat = fieldcat i_callback_program = repid is_variant = variant it_events = events[] i_save = 'U' tables t_outtab = i_alv. endform. ************************************************************************ * EVENTTAB_BUILD ************************************************************************ form eventtab_build using events type slis_t_event. * Registration of events to happen during list display data: tmp_event type slis_alv_event. call function 'REUSE_ALV_EVENTS_GET' exporting i_list_type = 0 importing et_events = events. read table events with key name = slis_ev_top_of_page into tmp_event. if sy-subrc = 0. move top_of_page to tmp_event-form. append tmp_event to events. endif. endform. ************************************************************************ * BUILD_FIELD_CATALOG ************************************************************************ form build_field_catalog. clear: fieldcat. refresh: fieldcat. data: tmp_fc type slis_fieldcat_alv. tmp_fc-reptext_ddic = 'Material'. tmp_fc-fieldname = 'MATNR'. tmp_fc-tabname = 'I_ALV'. tmp_fc-outputlen = 18. append tmp_fc to fieldcat. tmp_fc-reptext_ddic = 'Material Group'. tmp_fc-fieldname = 'MATKL'. tmp_fc-tabname = 'I_ALV'. tmp_fc-outputlen = 10. append tmp_fc to fieldcat. endform. ************************************************************************ * COMMENT_BUILD ************************************************************************ form comment_build using list_top_of_page type slis_t_listheader. data: tmp_line type slis_listheader. clear tmp_line. tmp_line-typ = 'H'. tmp_line-info = 'Here is a line of text'. append tmp_line to list_top_of_page. clear tmp_line. tmp_line-typ = 'S'. tmp_line-key = 'Key1'. tmp_line-info = 'Here is a value'. append tmp_line to list_top_of_page. clear tmp_line. tmp_line-typ = 'S'. tmp_line-key = 'Key2'. tmp_line-info = 'Here is another value'. append tmp_line to list_top_of_page. endform. ************************************************************************ * TOP_OF_PAGE ************************************************************************ form top_of_page. call function 'REUSE_ALV_COMMENTARY_WRITE' exporting i_logo = 'ENJOYSAP_LOGO' it_list_commentary = list_top_of_page. endform.
Regards,
Rich Heilman
Add a comment