<?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: ALV Report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432904#M824514</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Following code is the ALV Grid report.It displays with header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DISPLAY HEADER BY SPLITTING IT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES VBAK.&lt;/P&gt;&lt;P&gt;TYPE-POOLS SLIS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF T_VBAK,&lt;/P&gt;&lt;P&gt;      VBELN TYPE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;      ERDAT TYPE VBAK-ERDAT,&lt;/P&gt;&lt;P&gt;      ERNAM TYPE VBAK-ERNAM,&lt;/P&gt;&lt;P&gt;      AUDAT TYPE VBAK-AUDAT,&lt;/P&gt;&lt;P&gt;      VBTYP TYPE VBAK-VBTYP,&lt;/P&gt;&lt;P&gt;      NETWR TYPE VBAK-NETWR,&lt;/P&gt;&lt;P&gt;      VKORG TYPE VBAK-VKORG,&lt;/P&gt;&lt;P&gt;      VKGRP TYPE VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;      END OF T_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA IT_VBAK TYPE STANDARD TABLE OF T_VBAK INITIAL SIZE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      W_FLDCAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      GD_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      GD_REPID TYPE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: DATE1(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: VBELN FOR VBAK-VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;PERFORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;PERFORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;PERFORM DISPLAY_ALV_REPORT.&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;Build Field Catalog for ALV Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Sales_Document'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 0.&lt;/P&gt;&lt;P&gt;*W_FLDCAT-EMPHASIZE = 'C411'.&lt;/P&gt;&lt;P&gt;*CXYZ: C=COLOR,X=COLOR NUMBER(1-9),Y=BOLD(0/1),Z=INVERSE(0/1)&lt;/P&gt;&lt;P&gt;W_FLDCAT-OUTPUTLEN = 15.&lt;/P&gt;&lt;P&gt;W_FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-ICON = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'ERDAT'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Record_Date_created'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;W_FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'ERNAM'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Cteated_Person_Name'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 2.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C011'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'AUDAT'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Document_Date'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C110'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VBTYP'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'SDDocument_category'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Net_Value'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 5.&lt;/P&gt;&lt;P&gt;W_FLDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;W_FLDCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-DATATYPE = 'CURR'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VKORG'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Sales_Organization'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 6.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VKGRP'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Sales_Group'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 7.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C801'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build Layout for ALV Grid Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_LAYOUT-NO_INPUT = 'X'.&lt;/P&gt;&lt;P&gt;*GD_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;*GD_LAYOUT-NO_SCROLLING = 'X'.&lt;/P&gt;&lt;P&gt;GD_LAYOUT-BOX_FIELDNAME = 'VBELN'.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display report using ALV grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DISPLAY_ALV_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_REPID = SY-REPID.&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                = GD_REPID&lt;/P&gt;&lt;P&gt;   IS_LAYOUT                         = GD_LAYOUT&lt;/P&gt;&lt;P&gt;   I_CALLBACK_TOP_OF_PAGE       = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;   IT_FIELDCAT                       = FLDCAT[]&lt;/P&gt;&lt;P&gt;   I_SAVE                            = 'X'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    T_OUTTAB                          = IT_VBAK&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;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Retrieve data from VBAK table and populate itab IT_VBAK&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT VBELN ERDAT ERNAM AUDAT VBTYP NETWR VKORG&lt;/P&gt;&lt;P&gt;FROM VBAK&lt;/P&gt;&lt;P&gt;INTO TABLE IT_VBAK&lt;/P&gt;&lt;P&gt;WHERE VBELN IN VBELN.&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;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;DATA: T_HEADER TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;      W_HEADER TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'H'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = 'WELCOME HEADER LIST'.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'REPORT:'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = SY-REPID.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'DATE:'.&lt;/P&gt;&lt;P&gt;CONCATENATE SY-DATUM&lt;EM&gt;4(2) ' / ' SY-DATUM&lt;/EM&gt;6(2) ' / ' SY-DATUM(4) INTO W_HEADER-INFO.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;CLEAR W_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'Page_No:'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = SY-PAGNO.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&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       = T_HEADER.&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;Reward points,if it is useful.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;chandu.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 13 Feb 2008 05:34:08 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-02-13T05:34:08Z</dc:date>
    <item>
      <title>ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432902#M824512</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have to write a program which displays alv report (grid display).&lt;/P&gt;&lt;P&gt;Please can anyone send me a sample program?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;P&gt;Sunanda&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:30:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432902#M824512</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:30:14Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432903#M824513</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;&lt;/P&gt;&lt;P&gt;It may help u....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*data definition&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables:&lt;/P&gt;&lt;P&gt;marav. "Table MARA and table MAKT&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;Data to be displayed in ALV&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Using the following syntax, REUSE_ALV_FIELDCATALOG_MERGE can auto-&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;matically determine the fieldstructure from this source program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Data:&lt;/P&gt;&lt;P&gt;begin of imat occurs 100,&lt;/P&gt;&lt;P&gt;matnr like marav-matnr, "Material number&lt;/P&gt;&lt;P&gt;maktx like marav-maktx, "Material short text&lt;/P&gt;&lt;P&gt;matkl like marav-matkl, "Material group (so you can test to make&lt;/P&gt;&lt;P&gt;                        " intermediate sums)&lt;/P&gt;&lt;P&gt;ntgew like marav-ntgew, "Net weight, numeric field (so you can test to&lt;/P&gt;&lt;P&gt;                        "make sums)&lt;/P&gt;&lt;P&gt;gewei like marav-gewei, "weight unit (just to be complete)&lt;/P&gt;&lt;P&gt;end of imat.&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;Other data needed&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;field to store report name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data i_repid like sy-repid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;field to check table length&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data i_lines like sy-tabix.&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;Data for ALV display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;data int_fcat type SLIS_T_FIELDCAT_ALV.&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;P&gt;select-options:&lt;/P&gt;&lt;P&gt;s_matnr for marav-matnr matchcode object MAT1.&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;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read data into table imat&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select * from marav&lt;/P&gt;&lt;P&gt;  into corresponding fields of table imat&lt;/P&gt;&lt;P&gt;  where&lt;/P&gt;&lt;P&gt;  matnr in s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check if material was found&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  clear i_lines.&lt;/P&gt;&lt;P&gt;  describe table imat lines i_lines.&lt;/P&gt;&lt;P&gt;  if i_lines lt 1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Using hardcoded write here for easy upload&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    write: /&lt;/P&gt;&lt;P&gt;    'No materials found.'.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&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;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Now, we start with ALV&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;P&gt;*&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To use ALV, we need a DDIC-structure or a thing called Fieldcatalogue.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The fieldcatalouge can be generated by FUNCTION&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;'REUSE_ALV_FIELDCATALOG_MERGE' from an internal table from any&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;report source, including this report.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;The only problem one might have is that the report and table names&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;need to be in capital letters. (I had it &lt;SPAN __jive_emoticon_name="sad"&gt;&lt;/SPAN&gt; )&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Store report name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_repid = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Fieldcatalogue from internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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         = i_repid&lt;/P&gt;&lt;P&gt;            I_INTERNAL_TABNAME     = 'IMAT'  "capital letters!&lt;/P&gt;&lt;P&gt;            I_INCLNAME             = i_repid&lt;/P&gt;&lt;P&gt;       CHANGING&lt;/P&gt;&lt;P&gt;            CT_FIELDCAT            = int_fcat&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;*explanations:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_PROGRAM_NAME is the program which calls this function&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_INTERNAL_TABNAME is the name of the internal table which you want&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      to display in ALV&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_INCLNAME is the ABAP-source where the internal table is defined&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              (DATA....)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CT_FIELDCAT contains the Fieldcatalouge that we need later for&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ALV display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    write: /&lt;/P&gt;&lt;P&gt;    'Returncode',&lt;/P&gt;&lt;P&gt;    sy-subrc,&lt;/P&gt;&lt;P&gt;    'from FUNCTION REUSE_ALV_FIELDCATALOG_MERGE'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*This was the fieldcatlogue&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;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;And now, we are ready to display our list&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Call for ALV list display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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_CALLBACK_PROGRAM = 'Z_ALV_SIMPLE_EXAMPLE_WITH_ITAB'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            I_CALLBACK_PROGRAM = i_repid&lt;/P&gt;&lt;P&gt;            IT_FIELDCAT        = int_fcat&lt;/P&gt;&lt;P&gt;            I_SAVE             = 'A'&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            T_OUTTAB           = imat&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;*explanations:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_CALLBACK_PROGRAM is the program which calls this function&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IT_FIELDCAT (just made by REUSE_ALV_FIELDCATALOG_MERGE) contains&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                now the data definition needed for display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_SAVE allows the user to save his own layouts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_OUTTAB contains the data to be displayed in ALV&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    write: /&lt;/P&gt;&lt;P&gt;    'Returncode',&lt;/P&gt;&lt;P&gt;    sy-subrc,&lt;/P&gt;&lt;P&gt;    'from FUNCTION REUSE_ALV_LIST_DISPLAY'.&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;vasavi.&lt;/P&gt;&lt;P&gt;kindly reward if helpful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:34:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432903#M824513</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:34:06Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432904#M824514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Following code is the ALV Grid report.It displays with header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DISPLAY HEADER BY SPLITTING IT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES VBAK.&lt;/P&gt;&lt;P&gt;TYPE-POOLS SLIS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF T_VBAK,&lt;/P&gt;&lt;P&gt;      VBELN TYPE VBAK-VBELN,&lt;/P&gt;&lt;P&gt;      ERDAT TYPE VBAK-ERDAT,&lt;/P&gt;&lt;P&gt;      ERNAM TYPE VBAK-ERNAM,&lt;/P&gt;&lt;P&gt;      AUDAT TYPE VBAK-AUDAT,&lt;/P&gt;&lt;P&gt;      VBTYP TYPE VBAK-VBTYP,&lt;/P&gt;&lt;P&gt;      NETWR TYPE VBAK-NETWR,&lt;/P&gt;&lt;P&gt;      VKORG TYPE VBAK-VKORG,&lt;/P&gt;&lt;P&gt;      VKGRP TYPE VBAK-VKGRP,&lt;/P&gt;&lt;P&gt;      END OF T_VBAK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA IT_VBAK TYPE STANDARD TABLE OF T_VBAK INITIAL SIZE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ALV Data Declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      W_FLDCAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;      GD_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;      GD_REPID TYPE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: DATE1(10).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: VBELN FOR VBAK-VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;PERFORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;PERFORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;PERFORM DISPLAY_ALV_REPORT.&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;Build Field Catalog for ALV Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORM BLD_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Sales_Document'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 0.&lt;/P&gt;&lt;P&gt;*W_FLDCAT-EMPHASIZE = 'C411'.&lt;/P&gt;&lt;P&gt;*CXYZ: C=COLOR,X=COLOR NUMBER(1-9),Y=BOLD(0/1),Z=INVERSE(0/1)&lt;/P&gt;&lt;P&gt;W_FLDCAT-OUTPUTLEN = 15.&lt;/P&gt;&lt;P&gt;W_FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-ICON = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'ERDAT'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Record_Date_created'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;W_FLDCAT-KEY = 'X'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'ERNAM'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Cteated_Person_Name'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 2.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C011'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'AUDAT'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Document_Date'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C110'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VBTYP'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'SDDocument_category'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Net_Value'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 5.&lt;/P&gt;&lt;P&gt;W_FLDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;W_FLDCAT-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-DATATYPE = 'CURR'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VKORG'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_L = 'Sales_Organization'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 6.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_FLDCAT-FIELDNAME = 'VKGRP'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-SELTEXT_M = 'Sales_Group'.&lt;/P&gt;&lt;P&gt;W_FLDCAT-COL_POS = 7.&lt;/P&gt;&lt;P&gt;W_FLDCAT-EMPHASIZE = 'C801'.&lt;/P&gt;&lt;P&gt;APPEND W_FLDCAT TO FLDCAT.&lt;/P&gt;&lt;P&gt;CLEAR W_FLDCAT.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Build Layout for ALV Grid Report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BLD_LAYOUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_LAYOUT-NO_INPUT = 'X'.&lt;/P&gt;&lt;P&gt;*GD_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.&lt;/P&gt;&lt;P&gt;*GD_LAYOUT-NO_SCROLLING = 'X'.&lt;/P&gt;&lt;P&gt;GD_LAYOUT-BOX_FIELDNAME = 'VBELN'.&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;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display report using ALV grid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DISPLAY_ALV_REPORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GD_REPID = SY-REPID.&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                = GD_REPID&lt;/P&gt;&lt;P&gt;   IS_LAYOUT                         = GD_LAYOUT&lt;/P&gt;&lt;P&gt;   I_CALLBACK_TOP_OF_PAGE       = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;   IT_FIELDCAT                       = FLDCAT[]&lt;/P&gt;&lt;P&gt;   I_SAVE                            = 'X'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    T_OUTTAB                          = IT_VBAK&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;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Retrieve data from VBAK table and populate itab IT_VBAK&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT VBELN ERDAT ERNAM AUDAT VBTYP NETWR VKORG&lt;/P&gt;&lt;P&gt;FROM VBAK&lt;/P&gt;&lt;P&gt;INTO TABLE IT_VBAK&lt;/P&gt;&lt;P&gt;WHERE VBELN IN VBELN.&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;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;DATA: T_HEADER TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;      W_HEADER TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'H'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = 'WELCOME HEADER LIST'.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'REPORT:'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = SY-REPID.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'DATE:'.&lt;/P&gt;&lt;P&gt;CONCATENATE SY-DATUM&lt;EM&gt;4(2) ' / ' SY-DATUM&lt;/EM&gt;6(2) ' / ' SY-DATUM(4) INTO W_HEADER-INFO.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&lt;/P&gt;&lt;P&gt;CLEAR W_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;W_HEADER-TYP = 'S'.&lt;/P&gt;&lt;P&gt;W_HEADER-KEY = 'Page_No:'.&lt;/P&gt;&lt;P&gt;W_HEADER-INFO = SY-PAGNO.&lt;/P&gt;&lt;P&gt;APPEND W_HEADER TO T_HEADER.&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       = T_HEADER.&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;Reward points,if it is useful.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;chandu.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:34:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432904#M824514</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:34:08Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432905#M824515</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;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;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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;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;end of t_mara. &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;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;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;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;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;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;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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;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;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;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;endform. &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;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;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;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;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;*--- End of Program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Don't forget to reward if useful..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:34:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432905#M824515</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:34:26Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432906#M824516</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 links:&lt;/P&gt;&lt;P&gt;&lt;A href="http://sapdev.co.uk/reporting/alvhome.htm" target="test_blank"&gt;http://sapdev.co.uk/reporting/alvhome.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap-img.com/abap/sample-programs-on-alv-grid.htm" target="test_blank"&gt;http://sap-img.com/abap/sample-programs-on-alv-grid.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Bhaskar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:35:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432906#M824516</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:35:19Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432907#M824517</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Plzz reward points if ithelps.&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;g_grid TYPE REF TO cl_gui_custom_container,&lt;/P&gt;&lt;P&gt;g_alv TYPE REF TO cl_gui_alv_grid,&lt;/P&gt;&lt;P&gt;g_container TYPE scrfname VALUE 'CONTAINER',&lt;/P&gt;&lt;P&gt;g_fcatlayo TYPE lvc_s_layo,&lt;/P&gt;&lt;P&gt;it_fcat TYPE lvc_t_fcat. " Table for fieldcatalog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT workdate " Workdate&lt;/P&gt;&lt;P&gt;groupid " Groupid&lt;/P&gt;&lt;P&gt;projectid " Project ID&lt;/P&gt;&lt;P&gt;projectname " Project name&lt;/P&gt;&lt;P&gt;objectid " Object ID&lt;/P&gt;&lt;P&gt;objectname " Object name&lt;/P&gt;&lt;P&gt;activityid " Activity ID&lt;/P&gt;&lt;P&gt;activityname " Activity name&lt;/P&gt;&lt;P&gt;timeworked " Time worked&lt;/P&gt;&lt;P&gt;description " Description&lt;/P&gt;&lt;P&gt;taskstatus " Task status&lt;/P&gt;&lt;P&gt;billstatus " Bill status&lt;/P&gt;&lt;P&gt;appstatus " Approved status&lt;/P&gt;&lt;P&gt;wstatus " Working status&lt;/P&gt;&lt;P&gt;mngcomment " Manager comment&lt;/P&gt;&lt;P&gt;FROM zcl_timesheet&lt;/P&gt;&lt;P&gt;INTO TABLE it_time&lt;/P&gt;&lt;P&gt;WHERE empid EQ zcl_emprecord-empid&lt;/P&gt;&lt;P&gt;AND workdate GT w_ldate&lt;/P&gt;&lt;P&gt;AND workdate LE w_hdate&lt;/P&gt;&lt;P&gt;AND appstatus NE c_char_s.&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;MESSAGE s031.&lt;/P&gt;&lt;P&gt;ENDIF. " IF SY-SUBRC NE 0&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call screen 100."----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE STATUS_0400 OUTPUT * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This screen is used to display the ALV * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;MODULE status_0400 OUTPUT.&lt;/P&gt;&lt;P&gt;SET PF-STATUS 'MAIN'.&lt;/P&gt;&lt;P&gt;*" If program executed in foreground.&lt;/P&gt;&lt;P&gt;IF sy-batch IS INITIAL.&lt;/P&gt;&lt;P&gt;*" If g_grid is initial.&lt;/P&gt;&lt;P&gt;if g_grid is initial.&lt;/P&gt;&lt;P&gt;CREATE OBJECT g_grid&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;container_name = g_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CREATE OBJECT g_alv&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;i_parent = g_grid.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;CALL METHOD g_alv-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;P&gt;endif. " IF G_GRID IS INITIAL&lt;/P&gt;&lt;P&gt;ENDIF. " IF SY-BATCH IS INITIAL&lt;/P&gt;&lt;P&gt;*" If w_first is initial then then display the default dates.&lt;/P&gt;&lt;P&gt;IF w_FIRST IS INITIAL.&lt;/P&gt;&lt;P&gt;w_ldate = sy-datum - 15.&lt;/P&gt;&lt;P&gt;w_hdate = sy-datum.&lt;/P&gt;&lt;P&gt;ENDIF. " IF W_FIRST IS INITIAL&lt;/P&gt;&lt;P&gt;PERFORM display.&lt;/P&gt;&lt;P&gt;REFRESH it_fcat.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'WORKDATE' text-002 '1'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'PROJECTID' text-004 '3'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'PROJECTNAME' text-005 '4'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'OBJECTID' text-006 '5'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'OBJECTNAME' text-007 '6'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'ACTIVITYID' text-008 '7'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'ACTIVITYNAME' text-009 '8'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'TIMEWORKED' text-010 '9'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'DESCRIPTION' text-011 '10'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'APPSTATUS' text-012 '11'.&lt;/P&gt;&lt;P&gt;PERFORM build_fcatd USING 'IT_TIME' 'MNGCOMMENT' text-013 '12'.&lt;/P&gt;&lt;P&gt;PERFORM alv_display USING it_time it_fcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " STATUS_0400 OUTPUT&lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Module USER_COMMAND_0400 INPUT * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This module is used for PAI event in display timesheet * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;MODULE user_command_0400 INPUT.&lt;/P&gt;&lt;P&gt;w_first = c_char_x.&lt;/P&gt;&lt;P&gt;CASE ok_code.&lt;/P&gt;&lt;P&gt;WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;CALL METHOD cl_gui_cfw=&amp;gt;flush.&lt;/P&gt;&lt;P&gt;LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;WHEN 'EXIT' OR 'CANCEL'.&lt;/P&gt;&lt;P&gt;LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;WHEN 'REF'.&lt;/P&gt;&lt;P&gt;CALL METHOD g_alv-&amp;gt;refresh_table_display.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " USER_COMMAND_0400 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BUILD_FCATD * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To build fieldcatalog in the display mode * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt;pr_tabname type lvc_tname * &lt;/P&gt;&lt;P&gt;--&amp;gt;pr_fieldname type lvc_fname * &lt;/P&gt;&lt;P&gt;--&amp;gt;pr_Coltext type lvc_txtcol * &lt;/P&gt;&lt;P&gt;--&amp;gt;pr_Colpos type lvc_colpos * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;FORM build_fcatd USING pr_tabname TYPE lvc_tname&lt;/P&gt;&lt;P&gt;pr_fieldname TYPE lvc_fname&lt;/P&gt;&lt;P&gt;pr_coltext TYPE lvc_txtcol&lt;/P&gt;&lt;P&gt;pr_colpos TYPE lvc_colpos .&lt;/P&gt;&lt;P&gt;fs_fcat-tabname = pr_tabname.&lt;/P&gt;&lt;P&gt;fs_fcat-fieldname = pr_fieldname.&lt;/P&gt;&lt;P&gt;fs_fcat-coltext = pr_coltext.&lt;/P&gt;&lt;P&gt;fs_fcat-col_pos = pr_colpos.&lt;/P&gt;&lt;P&gt;APPEND fs_fcat TO it_fcat.&lt;/P&gt;&lt;P&gt;ENDFORM. " BUILD_FIELDCATALOG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM ALV_DISPLAY * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To display data in ALV * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;---&amp;gt; pr_table type standard table * &lt;/P&gt;&lt;P&gt;---&amp;gt; pr_fcat type lvc_t_fcat * &lt;/P&gt;&lt;P&gt;"----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM alv_display USING pr_table TYPE STANDARD TABLE&lt;/P&gt;&lt;P&gt;pr_fcat TYPE lvc_t_fcat .&lt;/P&gt;&lt;P&gt;*" Local data declaration....&lt;/P&gt;&lt;P&gt;DATA: lt_exclude TYPE ui_functions.&lt;/P&gt;&lt;P&gt;PERFORM exclude_tb_functions CHANGING lt_exclude.&lt;/P&gt;&lt;P&gt;*" To display ALV&lt;/P&gt;&lt;P&gt;CALL METHOD g_alv-&amp;gt;set_table_for_first_display&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_save = 'U' &lt;/P&gt;&lt;P&gt;i_default = space&lt;/P&gt;&lt;P&gt;is_layout = g_fcatlayo&lt;/P&gt;&lt;P&gt;it_toolbar_excluding = lt_exclude&lt;/P&gt;&lt;P&gt;CHANGING&lt;/P&gt;&lt;P&gt;it_outtab = pr_table[]&lt;/P&gt;&lt;P&gt;it_fieldcatalog = pr_fcat[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " ALV_DISPLAY&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:35:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432907#M824517</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:35:21Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432908#M824518</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ZAK_ALV1 .

type-pools: slis. "ALV Declarations

DATA: VAR TYPE DISVARIANT.

*Data Declaration

TYPES: BEGIN OF t_ekko,
SEl, "stores which row user has selected
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
statu TYPE ekpo-statu,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
menge TYPE ekpo-menge,
meins TYPE ekpo-meins,
netpr TYPE ekpo-netpr,
peinh TYPE ekpo-peinh,
END OF t_ekko.

DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
wa_ekko TYPE t_ekko.

*ALV data declarations
data: fieldcatalog type slis_t_fieldcat_alv with header line,
gd_layout type slis_layout_alv,
gd_repid like sy-repid.

DATA: GT_EVENTS TYPE slis_t_event,
WA_EVENT TYPE slis_alv_event.

PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT.

INITIALIZATION.
VAR-REPORT = SY-REPID.

*Start-of-selection.
START-OF-SELECTION.

perform data_retrieval.
perform build_fieldcatalog.
perform build_layout.
perform display_alv_report.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
IS_VARIANT = VAR
IMPORTING
ES_VARIANT = VAR.

P_VARI = VAR-VARIANT.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form BUILD_FIELDCATALOG
*&amp;amp;---------------------------------------------------------------------*
* Build Fieldcatalog for ALV Report
*----------------------------------------------------------------------*
form build_fieldcatalog.

fieldcatalog-fieldname = 'EBELN'.
fieldcatalog-seltext_m = 'Purchase Order'.
fieldcatalog-col_pos = 0.
fieldcatalog-outputlen = 15.
fieldcatalog-emphasize = 'X'.
fieldcatalog-key = 'X'.
fieldcatalog-hotspot = 'X'.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'EBELP'.
fieldcatalog-seltext_m = 'PO Item'.
fieldcatalog-col_pos = 1.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'STATU'.
fieldcatalog-seltext_m = 'Status'.
fieldcatalog-key = 'X'.
fieldcatalog-col_pos = 2.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'AEDAT'.
fieldcatalog-seltext_m = 'Item change date'.
fieldcatalog-col_pos = 3.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'MATNR'.
fieldcatalog-seltext_m = 'Material Number'.
fieldcatalog-col_pos = 4.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'MENGE'.
fieldcatalog-seltext_m = 'PO quantity'.
fieldcatalog-col_pos = 5.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'MEINS'.
fieldcatalog-seltext_m = 'Order Unit'.
fieldcatalog-col_pos = 6.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'NETPR'.
fieldcatalog-seltext_m = 'Net Price'.
fieldcatalog-col_pos = 7.
fieldcatalog-outputlen = 15.
fieldcatalog-do_sum = 'X'. "Display column total
fieldcatalog-datatype = 'CURR'.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.

fieldcatalog-fieldname = 'PEINH'.
fieldcatalog-seltext_m = 'Price Unit'.
fieldcatalog-col_pos = 8.
append fieldcatalog to fieldcatalog.
clear fieldcatalog.
endform. " BUILD_FIELDCATALOG


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form BUILD_LAYOUT
*&amp;amp;---------------------------------------------------------------------*
* Build layout for ALV grid report
*----------------------------------------------------------------------*
form build_layout.
gd_layout-box_fieldname = 'SEL'.
"set field name to store row selection
gd_layout-edit = 'X'. "makes whole ALV table editable
gd_layout-zebra = 'X'.
* gd_layout-no_vline = 'X'.
gd_layout-window_titlebar = ' LAYOUT TITLE'.
* gd_layout-confirmation_prompt = 'X'.
* gd_layout-detail_popup = 'X'.
endform. " BUILD_LAYOUT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form DISPLAY_ALV_REPORT
*&amp;amp;---------------------------------------------------------------------*
* Display report using ALV grid
*----------------------------------------------------------------------*
form display_alv_report.
gd_repid = sy-repid.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = gd_repid
I_BACKGROUND_ID = 'SIWB_WALLPAPER'
* i_callback_top_of_page = 'TOP-OF-PAGE'
* i_callback_user_command = 'DISPLAY'
i_grid_title = 'EMPLOYEE REPORTING'
is_layout = gd_layout
it_fieldcat = fieldcatalog[]
IT_EVENTS = GT_EVENTS
i_save = 'X'
is_variant = VAR

tables
t_outtab = it_ekko.

endform. " DISPLAY_ALV_REPORT


*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Form DATA_RETRIEVAL
*&amp;amp;---------------------------------------------------------------------*
* Retrieve data form EKPO table and populate itab it_ekko
*----------------------------------------------------------------------*
form data_retrieval.

select ebeln ebelp statu aedat matnr menge meins netpr peinh
up to 10 rows from ekpo
into corresponding fields of table it_ekko.

endform. " DATA_RETRIEVAL &lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Feb 2008 05:35:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report/m-p/3432908#M824518</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-13T05:35:59Z</dc:date>
    </item>
  </channel>
</rss>

