<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: GRID environment. in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441623#M826515</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;good&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in your declarations, add these:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gt_list_end_of_list TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;gt_list_top_of_page TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;it_events TYPE slis_t_event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then i suggest you make one major subroutine say, FORM build_events_table_for_alv then call that before you display your ALV by REUSE_ALV_GRID_DISPLAY or REUSE_ALV_LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;in the subroutine you put these lines of codes:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_events_table_for_alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: lcon_top(11) TYPE c VALUE 'TOP_OF_PAGE',&lt;/P&gt;&lt;P&gt;lcon_eol(11) TYPE c VALUE 'END_OF_LIST'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: wa_events.&lt;/P&gt;&lt;P&gt;REFRESH: it_events.&lt;/P&gt;&lt;P&gt;wa_events-name = lcon_top.&lt;/P&gt;&lt;P&gt;wa_events-form = lcon_top.&lt;/P&gt;&lt;P&gt;APPEND wa_events TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: wa_events.&lt;/P&gt;&lt;P&gt;wa_events-name = lcon_eol.&lt;/P&gt;&lt;P&gt;wa_events-form = lcon_eol.&lt;/P&gt;&lt;P&gt;APPEND wa_events TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " build_events_table_for_alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then another two subroutines:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM top_of_page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_listhead TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;lw_listhead LIKE LINE OF it_listhead.&lt;/P&gt;&lt;P&gt;DATA: l_text TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR lw_listhead.&lt;/P&gt;&lt;P&gt;lw_listhead-typ = 'H'.&lt;/P&gt;&lt;P&gt;lw_listhead-info = 'Title of Your Header'. " place your text header here or a VARIABLE you have to pass&lt;/P&gt;&lt;P&gt;APPEND lw_listhead TO it_listhead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;it_list_commentary = it_listhead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form END_OF_LIST&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;FORM end_of_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this can be blank. &lt;/P&gt;&lt;P&gt;ENDFORM. "end_of_list&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;finally in your REUSE_ALV_GRID_DISPLAY or REUSE_ALV_LIST_DISPLAY, in the parameter it_events, pass it_events[] like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_callback_program = callback_repid&lt;/P&gt;&lt;P&gt;i_bypassing_buffer = 'X'&lt;/P&gt;&lt;P&gt;i_structure_name = l_struct&lt;/P&gt;&lt;P&gt;is_layout = is_layout&lt;/P&gt;&lt;P&gt;it_fieldcat = it_fieldcat[]&lt;/P&gt;&lt;P&gt;it_sort = it_sort[]&lt;/P&gt;&lt;P&gt;i_save = 'X'&lt;/P&gt;&lt;P&gt;it_events = it_events[]&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;t_outtab = i_wrongzz[]&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;program_error = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;mrutyun^&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 26 Feb 2008 10:33:05 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-02-26T10:33:05Z</dc:date>
    <item>
      <title>GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441621#M826513</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using ALV LIST Function Modules, I can write directly at th TOP_OF_PAGE event, using a "write" statement, in addition to o instead of using the funtion: 'REUSE_ALV_COMMENTARY_WRITE'. placed to "write" statement inside the TOP_OF_PAGE subroutine. I used the "write" statement because it allows me to prin longer lines at TOP_OF_PAGE than I can have wit 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This approach does not seem to work using GRID function modul 'REUSE_ALV_GRID_DISPLAY' with 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone know how I can can print long lines (130 characters in the header area of an ALV report created with GRI functions. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the function: &lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' &lt;/P&gt;&lt;P&gt;EXPORTING &lt;/P&gt;&lt;P&gt;I_CALLBACK_PROGRAM = G_REPID &lt;/P&gt;&lt;P&gt;I_CALLBACK_USER_COMMAND = 'USER_COMMAND' &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;i_structure_name = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IS_LAYOUT = GS_LAYOUT &lt;/P&gt;&lt;P&gt;IT_FIELDCAT = GT_FIELDCAT[] &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_EXCLUDING = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IT_SPECIAL_GROUPS = GT_SP_GROUP[] &lt;/P&gt;&lt;P&gt;IT_SORT = GT_SORT[] &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;it_filter = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IS_SEL_HIDE = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;I_DEFAULT = G_DEFAULT &lt;/P&gt;&lt;P&gt;I_SAVE = G_SAVE &lt;/P&gt;&lt;P&gt;IS_VARIANT = G_VARIANT &lt;/P&gt;&lt;P&gt;IT_EVENTS = GT_EVENTS[] &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_EVENT_EXIT = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IS_PRINT = GS_PRINT &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_START_COLUMN = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_START_LINE = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_END_COLUMN = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_END_LINE = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E_EXIT_CAUSED_BY_CALLER = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES &lt;/P&gt;&lt;P&gt;T_OUTTAB = I_EXTRACT. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the function: &lt;/P&gt;&lt;P&gt;form top_of_page. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/ 'Top of page ', 70 'Page'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;EXPORTING &lt;/P&gt;&lt;P&gt;it_list_commentary = gt_list_top_of_page. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "top_of_page &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This prints the line with the write statement, followed b whatever is in the table gt_list_top_of_page. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to be able to do the same thing under a GRID environment. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2008 09:28:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441621#M826513</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-26T09:28:15Z</dc:date>
    </item>
    <item>
      <title>Re: GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441622#M826514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check the following program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sample programs on ALV Grid &lt;/P&gt;&lt;P&gt;report zbnstest. &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABLES AND DATA DECLARATION. &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*TABLES: mara,makt.",marc. &lt;/P&gt;&lt;P&gt;data syrepid like sy-repid. &lt;/P&gt;&lt;P&gt;data sydatum(10). " LIKE sy-datum. &lt;/P&gt;&lt;P&gt;data sypagno(3) type n. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WHEN USING MORE THAN ONE TABLE IN ALV WE NEEED TO DECLARE THE TYPE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;GROUP (TYPE-POOLS---------&amp;gt;SLIS) &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;type-pools : slis. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE DECLARATION. &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE TO HOLD THE VALUES FROM THE MARA TABLE &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of t_mara occurs 0, &lt;/P&gt;&lt;P&gt;matnr like mara-matnr, &lt;/P&gt;&lt;P&gt;meins like mara-meins, &lt;/P&gt;&lt;P&gt;mtart like mara-mtart, &lt;/P&gt;&lt;P&gt;matkl like mara-matkl, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end of t_mara. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE TO HOLD THE CONTENTS FROM THE EKKO TABLE &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of t_marc occurs 0, &lt;/P&gt;&lt;P&gt;matnr like mara-matnr, &lt;/P&gt;&lt;P&gt;werks like marc-werks, &lt;/P&gt;&lt;P&gt;minbe like marc-minbe. &lt;/P&gt;&lt;P&gt;data: end of t_marc. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE TO HOLD THE VALUES FROM MAKT TABLE. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of t_makt occurs 0, &lt;/P&gt;&lt;P&gt;matnr like mara-matnr, &lt;/P&gt;&lt;P&gt;maktx like makt-maktx, &lt;/P&gt;&lt;P&gt;spras like makt-spras, &lt;/P&gt;&lt;P&gt;end of t_makt. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE WHICH ACTUALLY MERGES ALL THE OTHER INTERNAL TABLES. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: begin of itab1 occurs 0, &lt;/P&gt;&lt;P&gt;matnr like mara-matnr, &lt;/P&gt;&lt;P&gt;meins like mara-meins, &lt;/P&gt;&lt;P&gt;maktx like makt-maktx, &lt;/P&gt;&lt;P&gt;spras like makt-spras, &lt;/P&gt;&lt;P&gt;werks like marc-werks, &lt;/P&gt;&lt;P&gt;minbe like marc-minbe, &lt;/P&gt;&lt;P&gt;end of itab1. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;THE FOLLOWING DECLARATION IS USED FOR DEFINING THE FIELDCAT &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AND THE LAYOUT FOR THE ALV. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HERE AS slis_t_fieldcat_alv IS A INTERNAL TABLE WITHOUT A HEADER LINE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WE EXPLICITELY DEFINE AN INTERNAL TABLE OF THE SAME STRUCTURE AS THAT &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OF slis_t_fieldcat_alv BUT WITH A HEADER LINE IN THE DEFINITION. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;THIS IS DONE TO MAKE THE CODE SIMPLER. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERWISE WE MAY HAVE TO DEFINE THE STRUCTURE AS IN THE NORMAL SAP &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PROGRAMS. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IN THE FIELDCATALOG TABLE WE ACTUALLY PASS THE FIELDS FROM ONE OR &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MORE TABLES AND CREATE A STRUCTURE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IN THE LAYOUT STRUCTURE WE BASICALLY DEFINE THE FORMATTING OPTIONS &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;LIKE DISPLAY IN THE ZEBRA PATTERN ,THE HOTSPOT OPTIONS ETC. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data: fieldcatalog type slis_t_fieldcat_alv with header line, &lt;/P&gt;&lt;P&gt;fieldlayout type slis_layout_alv. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DECLARING THE EVENTTABLE INTERNL TABLE FOR USING EVENTS LIKE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TOP-OF-PAGE ETC. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : eventstab type slis_t_event with header line. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DECLARING AN INTERNAL TABLE TO HOLD THE DATA FOR THE TOP-OF-PAGE &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : heading type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading1 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading2 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading3 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading4 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading5 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading6 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading7 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;data : heading8 type slis_t_listheader with header line. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;STRUCTURE TO PASS THE COLOR ATTRIBUTES FOR DISPLAY. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : colorstruct type slis_coltypes. &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INITIALIZATION. * &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;initialization. &lt;/P&gt;&lt;P&gt;syrepid = sy-repid. &lt;/P&gt;&lt;P&gt;sypagno = sy-pagno. &lt;/P&gt;&lt;P&gt;clear fieldcatalog. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;START-OF-SELECTION. * &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;start-of-selection. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO POPULATE THE COLORSTRUCT &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform fill_colorstruct using colorstruct. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO POPULATE THE FIELDS OF THE FIELD CATALOGUE &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform populate_fieldcatalog. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO SELECT DATA FROM VARIOUS TABLES AND POPULATE IT IN THE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform selectdata_and_sort. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO POPULATE THE LAYOUT STRUCTURE. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform populate_layout using fieldlayout. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO CALL THE FUNCTION MERGE TO ENSURE PROPER DISPLAY. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform merge_fieldcatalog. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO POPULATE THE EVENTSTAB. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform fill_eventstab tables eventstab. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO POPULATE THE HEADING TABLES. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform fill_headingtable tables heading using 'HEADING'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading1 using 'HEADING1'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading2 using 'HEADING2'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading3 using 'HEADING3'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading4 using 'HEADING4'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading5 using 'HEADING5'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading6 using 'HEADING6'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading7 using 'HEADING7'. &lt;/P&gt;&lt;P&gt;perform fill_headingtable tables heading8 using 'HEADING8'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SUBROUTINE TO DISPLAY THE LIST. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform display_alv_list. &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORMS &lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="72" type="ul"&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IN THIS SUBROUTINE WE POPULATE THE FIELDCATALOG TABLE WITH THE NAMES &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OF THE TABLE,FIELDNAME,WHETHER IT IS KEY FIELD OR NOT,HEADING AND &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COLUMN JUSTIFICATION. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;form populate_fieldcatalog. &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MATNR' 'X' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MEINS' ' '. &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MAKTX' ' ' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MTART' ' ' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MATKL' ' ' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'SPRAS' ' ' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'WERKS' ' ' . &lt;/P&gt;&lt;P&gt;perform fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;using 'ITAB1' 'MINBE' ' ' . &lt;/P&gt;&lt;P&gt;endform. " POPULATE_FIELDCATALOG &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FILL_FIELDS_OF_FIELDCATALOG * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; FIELDCATALOG * &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; P_TABNAME * &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; P_FIELDNAME * &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; P_KEY * &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; P_KEY * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_fields_of_fieldcatalog tables fieldcatalog &lt;/P&gt;&lt;P&gt;structure fieldcatalog &lt;/P&gt;&lt;P&gt;using p_tabname &lt;/P&gt;&lt;P&gt;p_fieldname &lt;/P&gt;&lt;P&gt;p_key. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;p_no_out. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;fieldcatalog-tabname = p_tabname. &lt;/P&gt;&lt;P&gt;fieldcatalog-fieldname = p_fieldname. &lt;/P&gt;&lt;P&gt;fieldcatalog-key = p_key. &lt;/P&gt;&lt;P&gt;fieldcatalog-emphasize = '1234'. &lt;/P&gt;&lt;P&gt;*fieldcatalog-no_out = p_no_out. &lt;/P&gt;&lt;P&gt;append fieldcatalog. &lt;/P&gt;&lt;P&gt;endform. " FILL_FIELDSOFFIELDCATALOG &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM POPULATE_LAYOUT * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; FIELDLAYOUT * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form populate_layout using fieldlayout type slis_layout_alv. &lt;/P&gt;&lt;P&gt;fieldlayout-f2code = '&amp;amp;ETA' . &lt;/P&gt;&lt;P&gt;fieldlayout-zebra = 'X'. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FOR THE WINDOW TITLE. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;fieldlayout-window_titlebar = 'ALV with Events'. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fieldlayout-colwidth_optimize = 'X'. &lt;/P&gt;&lt;P&gt;fieldlayout-no_vline = ' '. &lt;/P&gt;&lt;P&gt;*fieldlayout-no_input = 'X'. &lt;/P&gt;&lt;P&gt;fieldlayout-confirmation_prompt = ''. &lt;/P&gt;&lt;P&gt;fieldlayout-key_hotspot = 'X'. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;This removes the column headings if the flag is set to 'X' &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;fieldlayout-no_colhead = ' '. &lt;/P&gt;&lt;P&gt;*fieldlayout-hotspot_fieldname = 'MAKTX'. &lt;/P&gt;&lt;P&gt;fieldlayout-detail_popup = 'X'. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fieldlayout-coltab_fieldname = 'X'. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;endform. " POPULATE_LAYOUT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM SELECTDATA_AND_SORT * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form selectdata_and_sort. &lt;/P&gt;&lt;P&gt;select matnr meins mtart matkl from mara &lt;/P&gt;&lt;P&gt;into corresponding fields of t_mara &lt;/P&gt;&lt;P&gt;up to 500 rows . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select matnr maktx spras from makt &lt;/P&gt;&lt;P&gt;into corresponding fields of t_makt &lt;/P&gt;&lt;P&gt;where matnr = t_mara-matnr and &lt;/P&gt;&lt;P&gt;spras = sy-langu. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select matnr werks minbe from marc &lt;/P&gt;&lt;P&gt;into corresponding fields of t_marc &lt;/P&gt;&lt;P&gt;where matnr = t_mara-matnr. &lt;/P&gt;&lt;P&gt;append t_marc. &lt;/P&gt;&lt;P&gt;endselect. &lt;/P&gt;&lt;P&gt;append t_makt. &lt;/P&gt;&lt;P&gt;endselect. &lt;/P&gt;&lt;P&gt;append t_mara. &lt;/P&gt;&lt;P&gt;endselect. &lt;/P&gt;&lt;P&gt;perform populate_itab1. &lt;/P&gt;&lt;P&gt;sort itab1 by matnr. &lt;/P&gt;&lt;P&gt;endform. " SELECTDATA_AND_SORT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM MERGE_FIELDCATALOG * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form merge_fieldcatalog. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_FIELDCATALOG_MERGE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;i_program_name = syrepid &lt;/P&gt;&lt;P&gt;i_internal_tabname = 'ITAB1' &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;i_structure_name = 'COLORSTRUCT' &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_CLIENT_NEVER_DISPLAY = 'X' &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_inclname = syrepid &lt;/P&gt;&lt;P&gt;changing &lt;/P&gt;&lt;P&gt;ct_fieldcat = fieldcatalog[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;inconsistent_interface = 1 &lt;/P&gt;&lt;P&gt;program_error = 2 &lt;/P&gt;&lt;P&gt;others = 3. &lt;/P&gt;&lt;P&gt;endform. " MERGE_FIELDCATALOG &lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IN THIS FUNCTION THE MINIMUM PARAMETERS THAT WE NEED TO PASS IS AS &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FOLLOWS:- &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;i_callback_program --&amp;gt; CALLING PROGRAM NAME &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;i_structure_name --&amp;gt; STRUCTURE NAME. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is_layout --&amp;gt; LAYOUT NAME. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;it_fieldcat ---&amp;gt; BODY OF THE FIELD CATALOGUE INTERNAL TABLE &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;form display_alv_list. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_LIST_DISPLAY' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_INTERFACE_CHECK = ' ' &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_callback_program = syrepid &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_CALLBACK_PF_STATUS_SET = ' ' &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_CALLBACK_USER_COMMAND = ' ' &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_structure_name = 'ITAB1' &lt;/P&gt;&lt;P&gt;is_layout = fieldlayout &lt;/P&gt;&lt;P&gt;it_fieldcat = fieldcatalog[] &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_EXCLUDING = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_SPECIAL_GROUPS = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_SORT = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_FILTER = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IS_SEL_HIDE = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_DEFAULT = 'X' &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;THE FOLLOWING PARAMETER IS SET AS 'A' INORDER TO DISPLAY THE STANDARD &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TOOL BAR &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_save = 'A' &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IS_VARIANT = ' ' &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;it_events = eventstab[] &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_EVENT_EXIT = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IS_PRINT = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_START_COLUMN = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_START_LINE = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_END_COLUMN = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;I_SCREEN_END_LINE = 0 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;E_EXIT_CAUSED_BY_CALLER = &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ES_EXIT_CAUSED_BY_USER = &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;tables &lt;/P&gt;&lt;P&gt;t_outtab = itab1 &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;program_error = 1 &lt;/P&gt;&lt;P&gt;others = 2. &lt;/P&gt;&lt;P&gt;endform. " DISPLAY_ALV_LIST &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form POPULATE_ITAB1 &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt; p1 text &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;&amp;lt;-- p2 text &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form populate_itab1. &lt;/P&gt;&lt;P&gt;loop at t_mara. &lt;/P&gt;&lt;P&gt;loop at t_makt where matnr = t_mara-matnr. &lt;/P&gt;&lt;P&gt;loop at t_marc where matnr = t_mara-matnr. &lt;/P&gt;&lt;P&gt;move-corresponding t_mara to itab1. &lt;/P&gt;&lt;P&gt;move-corresponding t_makt to itab1. &lt;/P&gt;&lt;P&gt;move-corresponding t_marc to itab1. &lt;/P&gt;&lt;P&gt;append itab1. &lt;/P&gt;&lt;P&gt;endloop. &lt;/P&gt;&lt;P&gt;endloop. &lt;/P&gt;&lt;P&gt;endloop. &lt;/P&gt;&lt;P&gt;endform. " POPULATE_ITAB1 &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form FILL_EVENTSTAB &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_EVENTSTAB text * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_eventstab tables p_eventstab structure eventstab. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WHEN THE FOLLOWING FUNCTION IS CALLED THE SYSTEM POPULATES THE &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTERNAL TABLE EVENTSTAB WITH A LIST OF EVENTS NAME. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;AS SHOWN BELOW WHEN USING I_LIST_TYPE = 0 THE FUNCTION RETURNS 14 &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EVENTS NAME. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;call function 'REUSE_ALV_EVENTS_GET' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;i_list_type = 0 &lt;/P&gt;&lt;P&gt;importing &lt;/P&gt;&lt;P&gt;et_events = p_eventstab[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;list_type_wrong = 1 &lt;/P&gt;&lt;P&gt;others = 2. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BY CALLING THE ABOVE FUNCTION WE FIRST POPULATE THE EVENTSTAB WITH &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;THE PREDEFINED EVENTS AND THEN WE MOVE THE FORM NAME AS SHOWN BELOW. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WE ASSIGN A FORM NAME TO THE EVENT AS REQUIRED BY THE USER. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM NAME CAN BE ANYTHING.THE PERFORM STATEMENT FOR THIS FORM &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IS DYNAMICALY CALLED. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_top_of_page. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'TOP_OF_PAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_top_of_coverpage. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'TOP_OF_COVERPAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_end_of_coverpage . &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'END_OF_COVERPAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_foreign_top_of_page. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'FOREIGN_TOP_OF_PAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_foreign_end_of_page. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'FOREIGN_END_OF_PAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_list_modify. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'LIST_MODIFY' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_top_of_list. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'TOP_OF_LIST' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_end_of_page. &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'END_OF_PAGE' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table p_eventstab with key name = slis_ev_end_of_list . &lt;/P&gt;&lt;P&gt;if sy-subrc = 0 . &lt;/P&gt;&lt;P&gt;move 'END_OF_LIST' to p_eventstab-form. &lt;/P&gt;&lt;P&gt;append p_eventstab. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;endform. " FILL_EVENTSTAB &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form FILL_HEADINGTABLE &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_HEADING text * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_headingtable tables p_heading structure heading &lt;/P&gt;&lt;P&gt;using tablename. &lt;/P&gt;&lt;P&gt;case tablename. &lt;/P&gt;&lt;P&gt;when 'HEADING'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;concatenate &lt;/P&gt;&lt;P&gt;' REPORT NAME:-' syrepid &lt;/P&gt;&lt;P&gt;' ABB Industry Pte Ltd' into p_heading-info. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;write sy-datum using edit mask '__/__/____' to sydatum. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate &lt;/P&gt;&lt;P&gt;' DATE:-' sydatum ' USER: ' sy-uname 'PAGE NO:' sypagno &lt;/P&gt;&lt;P&gt;into p_heading-info. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING1'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'TOP-OF-COVER-PAGE'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING2'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'END-OF-COVER-PAGE'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING3'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'FOREIGN-TOP-OF-PAGE'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING4'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'FOREIGN-END-OF-PAGE'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WHEN 'HEADING5'. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;P_HEADING-TYP = 'H'. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;P_HEADING-INFO = 'LIST-MODIFY'. &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;APPEND P_HEADING. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;when 'HEADING6'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'END-OF-PAGE'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING7'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'END-OF-LIST'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;when 'HEADING8'. &lt;/P&gt;&lt;P&gt;p_heading-typ = 'H'. &lt;/P&gt;&lt;P&gt;p_heading-info = 'TOP-OF-LIST'. &lt;/P&gt;&lt;P&gt;append p_heading. &lt;/P&gt;&lt;P&gt;endcase. &lt;/P&gt;&lt;P&gt;endform. " FILL_HEADINGTABLE &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM TOP_OF_PAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form top_of_page. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form FILL_COLORSTRUCT &lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;text &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_COLORSTRUCT text * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_colorstruct using p_colorstruct type slis_coltypes . &lt;/P&gt;&lt;P&gt;p_colorstruct-heacolfir-col = 6. &lt;/P&gt;&lt;P&gt;p_colorstruct-heacolfir-int = 1. &lt;/P&gt;&lt;P&gt;p_colorstruct-heacolfir-inv = 1. &lt;/P&gt;&lt;P&gt;endform. " FILL_COLORSTRUCT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM TOP_OF_COVERPAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form top_of_coverpage. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading1[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM END_OF_COVERPAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form end_of_coverpage. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading2[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FOREIGN_TOP_OF_PAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form foreign_top_of_page. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading3[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM FOREIGN_END_OF_PAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form foreign_end_of_page. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading4[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM LIST_MODIFY * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;*FORM LIST_MODIFY. &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXPORTING &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IT_LIST_COMMENTARY = HEADING5[] &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OTHERS = 1. &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDFORM. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM END_OF_PAGE * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form end_of_page. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading6[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM END_OF_LIST * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form end_of_list. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading7[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM TOP_OF_LIST * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt; &lt;P&gt;&lt;/P&gt;&lt;P&gt;form top_of_list. &lt;/P&gt;&lt;P&gt;call function 'REUSE_ALV_COMMENTARY_WRITE' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;it_list_commentary = heading8[] &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;others = 1. &lt;/P&gt;&lt;P&gt;endform. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- End of Program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you have a ABAP Question? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope it will help you&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;sreelatha gullapalli&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2008 09:55:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441622#M826514</guid>
      <dc:creator>sreelatha_gullapalli</dc:creator>
      <dc:date>2008-02-26T09:55:18Z</dc:date>
    </item>
    <item>
      <title>Re: GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441623#M826515</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;good&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;in your declarations, add these:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: gt_list_end_of_list TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;gt_list_top_of_page TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;it_events TYPE slis_t_event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then i suggest you make one major subroutine say, FORM build_events_table_for_alv then call that before you display your ALV by REUSE_ALV_GRID_DISPLAY or REUSE_ALV_LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;in the subroutine you put these lines of codes:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_events_table_for_alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: lcon_top(11) TYPE c VALUE 'TOP_OF_PAGE',&lt;/P&gt;&lt;P&gt;lcon_eol(11) TYPE c VALUE 'END_OF_LIST'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: wa_events.&lt;/P&gt;&lt;P&gt;REFRESH: it_events.&lt;/P&gt;&lt;P&gt;wa_events-name = lcon_top.&lt;/P&gt;&lt;P&gt;wa_events-form = lcon_top.&lt;/P&gt;&lt;P&gt;APPEND wa_events TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR: wa_events.&lt;/P&gt;&lt;P&gt;wa_events-name = lcon_eol.&lt;/P&gt;&lt;P&gt;wa_events-form = lcon_eol.&lt;/P&gt;&lt;P&gt;APPEND wa_events TO it_events.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " build_events_table_for_alv&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then another two subroutines:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM top_of_page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_listhead TYPE slis_t_listheader,&lt;/P&gt;&lt;P&gt;lw_listhead LIKE LINE OF it_listhead.&lt;/P&gt;&lt;P&gt;DATA: l_text TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR lw_listhead.&lt;/P&gt;&lt;P&gt;lw_listhead-typ = 'H'.&lt;/P&gt;&lt;P&gt;lw_listhead-info = 'Title of Your Header'. " place your text header here or a VARIABLE you have to pass&lt;/P&gt;&lt;P&gt;APPEND lw_listhead TO it_listhead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;it_list_commentary = it_listhead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form END_OF_LIST&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;FORM end_of_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this can be blank. &lt;/P&gt;&lt;P&gt;ENDFORM. "end_of_list&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;finally in your REUSE_ALV_GRID_DISPLAY or REUSE_ALV_LIST_DISPLAY, in the parameter it_events, pass it_events[] like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_callback_program = callback_repid&lt;/P&gt;&lt;P&gt;i_bypassing_buffer = 'X'&lt;/P&gt;&lt;P&gt;i_structure_name = l_struct&lt;/P&gt;&lt;P&gt;is_layout = is_layout&lt;/P&gt;&lt;P&gt;it_fieldcat = it_fieldcat[]&lt;/P&gt;&lt;P&gt;it_sort = it_sort[]&lt;/P&gt;&lt;P&gt;i_save = 'X'&lt;/P&gt;&lt;P&gt;it_events = it_events[]&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;t_outtab = i_wrongzz[]&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;program_error = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;mrutyun^&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2008 10:33:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441623#M826515</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-26T10:33:05Z</dc:date>
    </item>
    <item>
      <title>Re: GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441624#M826516</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;simplest way is to split the tezt in multiple lines and write the lines in TOP OF  PAGE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Feb 2008 11:08:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441624#M826516</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-26T11:08:44Z</dc:date>
    </item>
    <item>
      <title>Re: GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441625#M826517</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;but I think that &lt;/P&gt;&lt;P&gt;there is no way to do lines longer than 65 characters with ALV Grid &lt;/P&gt;&lt;P&gt;and the REUSE FMs. &lt;/P&gt;&lt;P&gt;Sorry I couldn't be more positive.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Feb 2008 05:11:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441625#M826517</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-27T05:11:06Z</dc:date>
    </item>
    <item>
      <title>Re: GRID environment.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441626#M826518</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mukesh , &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this will help you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Normally in ALV grid TOP_OF_PAGE, we cannot display information of more than 60 characters long. This is due to the limitation of the FM REUSE_ALV_COMMENTARY_WRITE. Usually we call this FM from the subroutine that is linked with TOP_OF_PAGE event.   &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;   it_list_commentary       =&lt;/P&gt;&lt;P&gt;   i_logo                   =&lt;/P&gt;&lt;P&gt;   i_end_of_list_grid       =&lt;/P&gt;&lt;P&gt;          .*"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------" /&gt;&lt;P&gt;&lt;STRONG&gt;"&lt;/STRONG&gt;"Lokale Schnittstelle:&lt;/P&gt;&lt;P&gt;*"       IMPORTING&lt;/P&gt;&lt;P&gt;*"             VALUE(IT_LIST_COMMENTARY) TYPE  SLIS_T_LISTHEADER&lt;/P&gt;&lt;P&gt;*"             REFERENCE(I_LOGO) OPTIONAL&lt;/P&gt;&lt;P&gt;*"             REFERENCE(I_END_OF_LIST_GRID) OPTIONAL&lt;/P&gt;&lt;P&gt;*"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------" /&gt;&lt;P&gt;In this above FM, exporting parameter &amp;#145;IT_LIST_COMMENTARY&amp;#146; contains a field &amp;#145;INFO&amp;#146; that is only 60 characters long. And it is responsible for displaying the information in the TOP_OF_PAGE area.  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Solution:  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To overcome this limitation we can use dynamic document, which can be implemented through the class CL_DD_DOCUMENT. As dynamic documents use HTML viewer control so instead of triggering the TOP_OF_PAGE event we should trigger event of HTML TOP_OF_PAGE.  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First create a subroutine for top of page in HTML format and send that name in I_CALLBACK_HTML_TOP_OF_PAGE parameter of ALV function module. The input parameter for this subroutine will be a variable of class CL_DD_DOCUMENT.    &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM html_top_of_page                                     *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM html_top_of_page USING top TYPE REF TO cl_dd_document.&lt;/P&gt;&lt;P&gt;  data: l_text(255) type c.&lt;/P&gt;&lt;P&gt; do 180 times.  l_text+sy-index(1) = '*'.&lt;/P&gt;&lt;P&gt; enddo.  CALL METHOD top-&amp;gt;add_text EXPORTING text = 'Hello world '&lt;/P&gt;&lt;P&gt;                                      sap_style = 'heading' .&lt;/P&gt;&lt;P&gt;  CALL METHOD top-&amp;gt;add_gap EXPORTING width = 200.&lt;/P&gt;&lt;P&gt;  CALL METHOD top-&amp;gt;add_picture EXPORTING picture_id = 'ENJOYSAP_LOGO'.&lt;/P&gt;&lt;P&gt;  CALL METHOD top-&amp;gt;NEW_LINE( ).&lt;/P&gt;&lt;P&gt;  CALL METHOD top-&amp;gt;add_text EXPORTING&lt;/P&gt;&lt;P&gt;  text = l_text.ENDFORM.* Display ALV grid&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;          i_callback_html_top_of_page = 'HTML_TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;          i_callback_program          = g_repid&lt;/P&gt;&lt;P&gt;          i_structure_name            = 'SFLIGHT'&lt;/P&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;P&gt;          t_outtab                    = gt_outtab.Output: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Limitations: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As dynamic documents use SAP HTML Viewer control internally, so whatever limitations exist for SAP HTML Viewer, same limitations hold true for dynamic documents also. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward if helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Sreekar.Kadiri&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Feb 2008 05:11:48 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/grid-environment/m-p/3441626#M826518</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-28T05:11:48Z</dc:date>
    </item>
  </channel>
</rss>

