<?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: Interactive ALV Report. in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024033#M414624</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;   Go thru this sample ALV Interactive report.&lt;/P&gt;&lt;P&gt;&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; Report         : ZASSG_ALV_JAYARAM2&lt;/P&gt;&lt;P&gt;*&amp;amp; Title          : Interactive ALV report&lt;/P&gt;&lt;P&gt;*&amp;amp; Author         : Jayarama Sarma&lt;/P&gt;&lt;P&gt;*&amp;amp; Created on     : 04/05/2004&lt;/P&gt;&lt;P&gt;*&amp;amp; Request        :&lt;/P&gt;&lt;P&gt;*&amp;amp; Desription     : Generates a Interactive ALV report to list out&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                  Billing details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;                     Modification Log&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; Mod #    Author               Date         Requested by&lt;/P&gt;&lt;P&gt;*&amp;amp;       Reason for Change&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; 00 #&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;&lt;/P&gt;&lt;P&gt;REPORT ZASSG_ALV_JAYARAM2 NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                                     LINE-SIZE 132&lt;/P&gt;&lt;P&gt;                                     LINE-COUNT 64&lt;/P&gt;&lt;P&gt;                                    MESSAGE-ID Z00.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Type Definitions for ALV Report&lt;/P&gt;&lt;P&gt;TYPE-POOLS SLIS.&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;Table/Structure declarations.                                        *&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;TABLES : VBRK,   " Billing: Header Data&lt;/P&gt;&lt;P&gt;         VBRP,   " Billing: Item Data&lt;/P&gt;&lt;P&gt;         T001,   " Comapny Codes&lt;/P&gt;&lt;P&gt;         TVKOT,  " Sales Organizations: Texts&lt;/P&gt;&lt;P&gt;         MAKT.   " Material Descriiptions&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;*.. Internal Tables declaration                                        *&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;*----- Internal table to store billing docs which are not cancelled&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_VBRK OCCURS 0,&lt;/P&gt;&lt;P&gt;         VBELN LIKE VBRK-VBELN,    " Billing document&lt;/P&gt;&lt;P&gt;         WAERK LIKE VBRK-WAERK,    " SD document currency&lt;/P&gt;&lt;P&gt;         VKORG LIKE VBRK-VKORG,    " Sales organization&lt;/P&gt;&lt;P&gt;         VTEXT LIKE TVKOT-VTEXT,   " Sales organization text&lt;/P&gt;&lt;P&gt;         FKDAT LIKE VBRK-FKDAT,    " Billing date&lt;/P&gt;&lt;P&gt;         BUKRS LIKE VBRK-BUKRS,    " Company Code&lt;/P&gt;&lt;P&gt;         BUTXT LIKE T001-BUTXT,    " Company Code text&lt;/P&gt;&lt;P&gt;         NETWR LIKE VBRK-NETWR,    " Net value in document currency&lt;/P&gt;&lt;P&gt;       END OF IT_VBRK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Internal table to stroe ITEM DETAILS&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF IT_VBRP OCCURS 0,&lt;/P&gt;&lt;P&gt;        POSNR LIKE VBRP-POSNR,     " Billing item&lt;/P&gt;&lt;P&gt;        FKIMG LIKE VBRP-FKIMG,     " Actual billed quantity&lt;/P&gt;&lt;P&gt;        VRKME LIKE VBRP-VRKME,     " Sales unit&lt;/P&gt;&lt;P&gt;        NETWR LIKE VBRP-NETWR,     " Net value of the billing item&lt;/P&gt;&lt;P&gt;        MATNR LIKE VBRP-MATNR,     " Material number&lt;/P&gt;&lt;P&gt;        ARKTX LIKE VBRP-ARKTX,     " Short text for sales order item&lt;/P&gt;&lt;P&gt;END OF IT_VBRP.&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;                   Variable / Flag Declerations                      *&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;&lt;/P&gt;&lt;P&gt;DATA : FG_COLOR    VALUE ' ',  " FLAG TO CHANGE THE COLOR OF THE RECORD&lt;/P&gt;&lt;P&gt;       FG_NO_DATA  VALUE ' '.  " FLAG TO CHECK THE DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : V_REPID   TYPE SYREPID.&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;                     ALV Type declaration                            *&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;&lt;/P&gt;&lt;P&gt;DATA : IT_FIELDCAT TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;                   SLIS_FIELDCAT_ALV  WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_SORT TYPE SLIS_T_SORTINFO_ALV,&lt;/P&gt;&lt;P&gt;       WA_SORT TYPE SLIS_SORTINFO_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_EVENT TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;       WA_EVENT LIKE LINE OF IT_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_HEADINGS TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;                   SLIS_LISTHEADER WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : WA_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : WA_KEYINFO TYPE SLIS_KEYINFO_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection Screen.                                                    *&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;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS :  S_VBELN FOR VBRK-VBELN,            " Billing doc no&lt;/P&gt;&lt;P&gt;                  S_FKDAT FOR VBRK-FKDAT OBLIGATORY, " Billing date&lt;/P&gt;&lt;P&gt;                  S_MATNR FOR VBRP-MATNR.            " Material no&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&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;Event:Initialization                                                 *&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;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  V_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;  S_FKDAT-LOW  = SY-DATUM - 200.&lt;/P&gt;&lt;P&gt;  S_FKDAT-HIGH = SY-DATUM.&lt;/P&gt;&lt;P&gt;  APPEND S_FKDAT.&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;AT Selection Screen.                                                 *&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;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM VALIDATE_VBELN.&lt;/P&gt;&lt;P&gt;  PERFORM VALIDATE_MATNR.&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;Event: Start-of-Selection                                            *&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM GET_VBRK_DATA.&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;Event: End-of-Selection                                            *&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM GET_EVENTS.&lt;/P&gt;&lt;P&gt;  PERFORM FIELDCATALOG.&lt;/P&gt;&lt;P&gt;  PERFORM LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;//////////////////////////////////////////////////////////////////////&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         FORM DEFINITIONS                            *&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;/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  list_display&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 LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-INFO_FIELDNAME = 'COLOR'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-TOTALS_TEXT = 'GRAND TOTAL'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-KEY_HOTSPOT = 'X'.&lt;/P&gt;&lt;P&gt;&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_CALLBACK_PROGRAM             = V_REPID&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IS_LAYOUT                      = WA_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT                    = IT_FIELDCAT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;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;  I_SAVE                         = ' '&lt;/P&gt;&lt;/LI&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                      = IT_EVENT&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;  IS_REPREP_ID                   =&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                       = IT_VBRK&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;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " list_display&lt;/P&gt;&lt;P&gt;&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  fieldcatalog&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 FIELDCATALOG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT.&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             = V_REPID&lt;/P&gt;&lt;P&gt;      I_INTERNAL_TABNAME         = 'IT_VBRK'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME             =&lt;/P&gt;&lt;/LI&gt;&lt;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                 = V_REPID&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      CT_FIELDCAT                = IT_FIELDCAT[]&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;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Changing the fieldcatlog as required&lt;/P&gt;&lt;P&gt;  LOOP AT IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;    CASE IT_FIELDCAT-FIELDNAME.&lt;/P&gt;&lt;P&gt;      WHEN 'VBELN'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing doc no'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Bill'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        OUTPUTLEN&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;      WHEN 'WAERK'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'SD document Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Document Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'WAERK'.&lt;/P&gt;&lt;P&gt;      WHEN 'VKORG'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Organisation'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sales Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S,Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VKORG'.&lt;/P&gt;&lt;P&gt;      WHEN 'VTEXT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Organisation Name'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sales Org Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S,Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VTEXT'.&lt;/P&gt;&lt;P&gt;      WHEN 'FKDAT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing Date'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill.Date'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'BDate'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'FKDAT'.&lt;/P&gt;&lt;P&gt;      WHEN 'BUKRS'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Company Code'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Company'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Comp'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;      WHEN 'BUTXT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Company Name'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Comp Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Comp'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '25'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'BUTXT'.&lt;/P&gt;&lt;P&gt;      WHEN 'NETWR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Net value in docu currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Net value in currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Net Value'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '20'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        DO_SUM&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fieldcatalog&lt;/P&gt;&lt;P&gt;&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  sort_tab&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 SORT_TAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_SORT.&lt;/P&gt;&lt;P&gt;  WA_SORT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;  WA_SORT-SPOS = '1'.&lt;/P&gt;&lt;P&gt;  WA_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  WA_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND WA_SORT TO IT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sort_tab&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  get_events&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 GET_EVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&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     = 1&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            ET_EVENTS       = IT_EVENT&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            LIST_TYPE_WRONG = 1&lt;/P&gt;&lt;P&gt;            OTHERS          = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_EVENT INTO WA_EVENT.&lt;/P&gt;&lt;P&gt;    CASE WA_EVENT-NAME.&lt;/P&gt;&lt;P&gt;      WHEN 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;        WA_EVENT-FORM = 'DISPLAY_HEADER'.&lt;/P&gt;&lt;P&gt;      WHEN 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;        WA_EVENT-FORM = 'GENERATE_SECLIST'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    MODIFY IT_EVENT FROM WA_EVENT INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_events&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  DISPLAY_HEADER&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 DISPLAY_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE : /3   'Date : ',&lt;/P&gt;&lt;P&gt;           10  SY-DATUM USING EDIT MASK '__/__/____',&lt;/P&gt;&lt;P&gt;           35  'Intelligroup Asia Pvt. Ltd',&lt;/P&gt;&lt;P&gt;           80  'Time : ',&lt;/P&gt;&lt;P&gt;           90  SY-UZEIT,&lt;/P&gt;&lt;P&gt;          /3   'User : ',&lt;/P&gt;&lt;P&gt;           10  SY-UNAME,&lt;/P&gt;&lt;P&gt;           30  SY-TITLE,&lt;/P&gt;&lt;P&gt;           80  'Page  : ',&lt;/P&gt;&lt;P&gt;           90 SY-PAGNO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLAY_HEADER&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  VALIDATE_VBELN&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 VALIDATE_VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating Billing doc no&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT VBELN&lt;/P&gt;&lt;P&gt;    INTO VBRK-VBELN&lt;/P&gt;&lt;P&gt;   UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM VBRK&lt;/P&gt;&lt;P&gt;   WHERE VBELN IN S_VBELN.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E010. " Invalid billing doc no&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_VBELN&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  VALIDATE_MATNR&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 VALIDATE_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating material no&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT MATNR&lt;/P&gt;&lt;P&gt;    INTO VBRP-MATNR&lt;/P&gt;&lt;P&gt;   UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM VBRP&lt;/P&gt;&lt;P&gt;   WHERE MATNR IN S_MATNR.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E018.    " Invalid material number&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_MATNR&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  GET_VBRK_DATA&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 GET_VBRK_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To get Billing doc detials based on selections&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT V~VBELN&lt;/P&gt;&lt;P&gt;         V~WAERK&lt;/P&gt;&lt;P&gt;         V~VKORG&lt;/P&gt;&lt;P&gt;         V~FKDAT&lt;/P&gt;&lt;P&gt;         V~BUKRS&lt;/P&gt;&lt;P&gt;         V~NETWR&lt;/P&gt;&lt;P&gt;         T~VTEXT&lt;/P&gt;&lt;P&gt;         C~BUTXT&lt;/P&gt;&lt;P&gt;    INTO CORRESPONDING FIELDS OF TABLE IT_VBRK&lt;/P&gt;&lt;P&gt;    FROM VBRK AS V&lt;/P&gt;&lt;P&gt;   INNER JOIN VBRP AS P&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;VBELN = P&lt;/SUB&gt;VBELN&lt;/P&gt;&lt;P&gt;   INNER JOIN TVKOT AS T&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;VKORG = T&lt;/SUB&gt;VKORG&lt;/P&gt;&lt;P&gt;   INNER JOIN T001 AS C&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;BUKRS = C&lt;/SUB&gt;BUKRS&lt;/P&gt;&lt;P&gt;   WHERE V~VBELN IN S_VBELN&lt;/P&gt;&lt;P&gt;     AND V~FKDAT IN S_FKDAT&lt;/P&gt;&lt;P&gt;     AND P~MATNR IN S_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IT_VBRK.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM IT_VBRK COMPARING VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    FG_NO_DATA = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_VBRK_DATA&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  GENERATE_SECLIST&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 GENERATE_SECLIST USING R_UCOMM     LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;                            RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE R_UCOMM.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'. "DOUBLE CLICK&lt;/P&gt;&lt;P&gt;      READ TABLE IT_VBRK INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;      SELECT POSNR&lt;/P&gt;&lt;P&gt;             FKIMG&lt;/P&gt;&lt;P&gt;             VRKME&lt;/P&gt;&lt;P&gt;             NETWR&lt;/P&gt;&lt;P&gt;             MATNR&lt;/P&gt;&lt;P&gt;             ARKTX&lt;/P&gt;&lt;P&gt;        INTO TABLE IT_VBRP&lt;/P&gt;&lt;P&gt;        FROM VBRP&lt;/P&gt;&lt;P&gt;       WHERE VBELN EQ IT_VBRK-VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT IT_VBRP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM FIELDCAT_SECLIST.&lt;/P&gt;&lt;P&gt;      PERFORM DISPLY_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GENERATE_SECLIST&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  FIELDCAT_SECLIST&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 FIELDCAT_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&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           = V_REPID&lt;/P&gt;&lt;P&gt;        I_INTERNAL_TABNAME       = 'IT_VBRP'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME             =&lt;/P&gt;&lt;/LI&gt;&lt;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               = V_REPID&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;        CT_FIELDCAT              = IT_FIELDCAT[]&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;              .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Changing the fieldcatlog as required&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;    CASE IT_FIELDCAT-FIELDNAME.&lt;/P&gt;&lt;P&gt;      WHEN 'POSNR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing Iem no'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill Item No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Item No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        OUTPUTLEN&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'POSNR'.&lt;/P&gt;&lt;P&gt;      WHEN 'FKIMG'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Actual billed quantity'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Billed Quantity'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Bill.Qty'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'FKIMG'.&lt;/P&gt;&lt;P&gt;      WHEN 'VRKME'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sale unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S.Unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VRKME'.&lt;/P&gt;&lt;P&gt;      WHEN 'NETWR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Net value in docu currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Net value in currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Net Value'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '20'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        DO_SUM&lt;/P&gt;&lt;P&gt;                                 WHERE FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'MATNR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Material Number'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Mat. Number'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Mat. No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'ARKTX'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Text for sales order item'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sale Order Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'SO Item text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'ARKTX'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FIELDCAT_SECLIST&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  DISPLY_SECLIST&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 DISPLY_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_LAYOUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-INFO_FIELDNAME = 'COLOR'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-TOTALS_TEXT = 'GRAND TOTAL'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-F2CODE = '&amp;amp;ETA'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-DETAIL_POPUP = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-DETAIL_INITIAL_LINES = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-GET_SELINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_CALLBACK_PROGRAM           = V_REPID&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   IS_LAYOUT                       = WA_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT                  = IT_FIELDCAT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;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                   = 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;  I_SAVE                         = ' '&lt;/P&gt;&lt;/LI&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                    = IT_EVENT&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;  IS_REPREP_ID                   =&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                   = IT_VBRP&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;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLY_SECLIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;  Jayaram...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 09 Mar 2007 13:53:34 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-03-09T13:53:34Z</dc:date>
    <item>
      <title>Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024032#M414623</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pl. help me regarding Interactive ALV Report. Thanx in Advance.&lt;/P&gt;&lt;P&gt;-Rupesh.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2007 13:51:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024032#M414623</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-09T13:51:39Z</dc:date>
    </item>
    <item>
      <title>Re: Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024033#M414624</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;   Go thru this sample ALV Interactive report.&lt;/P&gt;&lt;P&gt;&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; Report         : ZASSG_ALV_JAYARAM2&lt;/P&gt;&lt;P&gt;*&amp;amp; Title          : Interactive ALV report&lt;/P&gt;&lt;P&gt;*&amp;amp; Author         : Jayarama Sarma&lt;/P&gt;&lt;P&gt;*&amp;amp; Created on     : 04/05/2004&lt;/P&gt;&lt;P&gt;*&amp;amp; Request        :&lt;/P&gt;&lt;P&gt;*&amp;amp; Desription     : Generates a Interactive ALV report to list out&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                  Billing details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;                     Modification Log&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; Mod #    Author               Date         Requested by&lt;/P&gt;&lt;P&gt;*&amp;amp;       Reason for Change&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; 00 #&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;&lt;/P&gt;&lt;P&gt;REPORT ZASSG_ALV_JAYARAM2 NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                                     LINE-SIZE 132&lt;/P&gt;&lt;P&gt;                                     LINE-COUNT 64&lt;/P&gt;&lt;P&gt;                                    MESSAGE-ID Z00.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Type Definitions for ALV Report&lt;/P&gt;&lt;P&gt;TYPE-POOLS SLIS.&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;Table/Structure declarations.                                        *&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;TABLES : VBRK,   " Billing: Header Data&lt;/P&gt;&lt;P&gt;         VBRP,   " Billing: Item Data&lt;/P&gt;&lt;P&gt;         T001,   " Comapny Codes&lt;/P&gt;&lt;P&gt;         TVKOT,  " Sales Organizations: Texts&lt;/P&gt;&lt;P&gt;         MAKT.   " Material Descriiptions&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;*.. Internal Tables declaration                                        *&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;*----- Internal table to store billing docs which are not cancelled&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_VBRK OCCURS 0,&lt;/P&gt;&lt;P&gt;         VBELN LIKE VBRK-VBELN,    " Billing document&lt;/P&gt;&lt;P&gt;         WAERK LIKE VBRK-WAERK,    " SD document currency&lt;/P&gt;&lt;P&gt;         VKORG LIKE VBRK-VKORG,    " Sales organization&lt;/P&gt;&lt;P&gt;         VTEXT LIKE TVKOT-VTEXT,   " Sales organization text&lt;/P&gt;&lt;P&gt;         FKDAT LIKE VBRK-FKDAT,    " Billing date&lt;/P&gt;&lt;P&gt;         BUKRS LIKE VBRK-BUKRS,    " Company Code&lt;/P&gt;&lt;P&gt;         BUTXT LIKE T001-BUTXT,    " Company Code text&lt;/P&gt;&lt;P&gt;         NETWR LIKE VBRK-NETWR,    " Net value in document currency&lt;/P&gt;&lt;P&gt;       END OF IT_VBRK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Internal table to stroe ITEM DETAILS&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF IT_VBRP OCCURS 0,&lt;/P&gt;&lt;P&gt;        POSNR LIKE VBRP-POSNR,     " Billing item&lt;/P&gt;&lt;P&gt;        FKIMG LIKE VBRP-FKIMG,     " Actual billed quantity&lt;/P&gt;&lt;P&gt;        VRKME LIKE VBRP-VRKME,     " Sales unit&lt;/P&gt;&lt;P&gt;        NETWR LIKE VBRP-NETWR,     " Net value of the billing item&lt;/P&gt;&lt;P&gt;        MATNR LIKE VBRP-MATNR,     " Material number&lt;/P&gt;&lt;P&gt;        ARKTX LIKE VBRP-ARKTX,     " Short text for sales order item&lt;/P&gt;&lt;P&gt;END OF IT_VBRP.&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;                   Variable / Flag Declerations                      *&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;&lt;/P&gt;&lt;P&gt;DATA : FG_COLOR    VALUE ' ',  " FLAG TO CHANGE THE COLOR OF THE RECORD&lt;/P&gt;&lt;P&gt;       FG_NO_DATA  VALUE ' '.  " FLAG TO CHECK THE DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : V_REPID   TYPE SYREPID.&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;                     ALV Type declaration                            *&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;&lt;/P&gt;&lt;P&gt;DATA : IT_FIELDCAT TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;                   SLIS_FIELDCAT_ALV  WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_SORT TYPE SLIS_T_SORTINFO_ALV,&lt;/P&gt;&lt;P&gt;       WA_SORT TYPE SLIS_SORTINFO_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_EVENT TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;       WA_EVENT LIKE LINE OF IT_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_HEADINGS TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;                   SLIS_LISTHEADER WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : WA_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : WA_KEYINFO TYPE SLIS_KEYINFO_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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Selection Screen.                                                    *&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;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS :  S_VBELN FOR VBRK-VBELN,            " Billing doc no&lt;/P&gt;&lt;P&gt;                  S_FKDAT FOR VBRK-FKDAT OBLIGATORY, " Billing date&lt;/P&gt;&lt;P&gt;                  S_MATNR FOR VBRP-MATNR.            " Material no&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&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;Event:Initialization                                                 *&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;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  V_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;  S_FKDAT-LOW  = SY-DATUM - 200.&lt;/P&gt;&lt;P&gt;  S_FKDAT-HIGH = SY-DATUM.&lt;/P&gt;&lt;P&gt;  APPEND S_FKDAT.&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;AT Selection Screen.                                                 *&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;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM VALIDATE_VBELN.&lt;/P&gt;&lt;P&gt;  PERFORM VALIDATE_MATNR.&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;Event: Start-of-Selection                                            *&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM GET_VBRK_DATA.&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;Event: End-of-Selection                                            *&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM GET_EVENTS.&lt;/P&gt;&lt;P&gt;  PERFORM FIELDCATALOG.&lt;/P&gt;&lt;P&gt;  PERFORM LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;//////////////////////////////////////////////////////////////////////&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         FORM DEFINITIONS                            *&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;/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  list_display&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 LIST_DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-INFO_FIELDNAME = 'COLOR'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-TOTALS_TEXT = 'GRAND TOTAL'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-KEY_HOTSPOT = 'X'.&lt;/P&gt;&lt;P&gt;&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_CALLBACK_PROGRAM             = V_REPID&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IS_LAYOUT                      = WA_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT                    = IT_FIELDCAT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;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;  I_SAVE                         = ' '&lt;/P&gt;&lt;/LI&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                      = IT_EVENT&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;  IS_REPREP_ID                   =&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                       = IT_VBRK&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;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " list_display&lt;/P&gt;&lt;P&gt;&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  fieldcatalog&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 FIELDCATALOG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT.&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             = V_REPID&lt;/P&gt;&lt;P&gt;      I_INTERNAL_TABNAME         = 'IT_VBRK'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME             =&lt;/P&gt;&lt;/LI&gt;&lt;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                 = V_REPID&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      CT_FIELDCAT                = IT_FIELDCAT[]&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;            .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Changing the fieldcatlog as required&lt;/P&gt;&lt;P&gt;  LOOP AT IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;    CASE IT_FIELDCAT-FIELDNAME.&lt;/P&gt;&lt;P&gt;      WHEN 'VBELN'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing doc no'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Bill'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        OUTPUTLEN&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;      WHEN 'WAERK'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'SD document Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Document Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'WAERK'.&lt;/P&gt;&lt;P&gt;      WHEN 'VKORG'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Organisation'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sales Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S,Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VKORG'.&lt;/P&gt;&lt;P&gt;      WHEN 'VTEXT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Organisation Name'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sales Org Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S,Org'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VTEXT'.&lt;/P&gt;&lt;P&gt;      WHEN 'FKDAT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing Date'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill.Date'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'BDate'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'FKDAT'.&lt;/P&gt;&lt;P&gt;      WHEN 'BUKRS'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Company Code'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Company'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Comp'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;      WHEN 'BUTXT'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Company Name'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Comp Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Comp'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '25'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'BUTXT'.&lt;/P&gt;&lt;P&gt;      WHEN 'NETWR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Net value in docu currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Net value in currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Net Value'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '20'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        DO_SUM&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fieldcatalog&lt;/P&gt;&lt;P&gt;&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  sort_tab&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 SORT_TAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_SORT.&lt;/P&gt;&lt;P&gt;  WA_SORT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;  WA_SORT-SPOS = '1'.&lt;/P&gt;&lt;P&gt;  WA_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;  WA_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND WA_SORT TO IT_SORT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sort_tab&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  get_events&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 GET_EVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&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     = 1&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            ET_EVENTS       = IT_EVENT&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            LIST_TYPE_WRONG = 1&lt;/P&gt;&lt;P&gt;            OTHERS          = 2.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_EVENT INTO WA_EVENT.&lt;/P&gt;&lt;P&gt;    CASE WA_EVENT-NAME.&lt;/P&gt;&lt;P&gt;      WHEN 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;        WA_EVENT-FORM = 'DISPLAY_HEADER'.&lt;/P&gt;&lt;P&gt;      WHEN 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;        WA_EVENT-FORM = 'GENERATE_SECLIST'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    MODIFY IT_EVENT FROM WA_EVENT INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_events&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  DISPLAY_HEADER&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 DISPLAY_HEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE : /3   'Date : ',&lt;/P&gt;&lt;P&gt;           10  SY-DATUM USING EDIT MASK '__/__/____',&lt;/P&gt;&lt;P&gt;           35  'Intelligroup Asia Pvt. Ltd',&lt;/P&gt;&lt;P&gt;           80  'Time : ',&lt;/P&gt;&lt;P&gt;           90  SY-UZEIT,&lt;/P&gt;&lt;P&gt;          /3   'User : ',&lt;/P&gt;&lt;P&gt;           10  SY-UNAME,&lt;/P&gt;&lt;P&gt;           30  SY-TITLE,&lt;/P&gt;&lt;P&gt;           80  'Page  : ',&lt;/P&gt;&lt;P&gt;           90 SY-PAGNO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLAY_HEADER&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  VALIDATE_VBELN&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 VALIDATE_VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating Billing doc no&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT VBELN&lt;/P&gt;&lt;P&gt;    INTO VBRK-VBELN&lt;/P&gt;&lt;P&gt;   UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM VBRK&lt;/P&gt;&lt;P&gt;   WHERE VBELN IN S_VBELN.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E010. " Invalid billing doc no&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_VBELN&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  VALIDATE_MATNR&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 VALIDATE_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Validating material no&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT MATNR&lt;/P&gt;&lt;P&gt;    INTO VBRP-MATNR&lt;/P&gt;&lt;P&gt;   UP TO 1 ROWS&lt;/P&gt;&lt;P&gt;    FROM VBRP&lt;/P&gt;&lt;P&gt;   WHERE MATNR IN S_MATNR.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E018.    " Invalid material number&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " VALIDATE_MATNR&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  GET_VBRK_DATA&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 GET_VBRK_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;To get Billing doc detials based on selections&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT V~VBELN&lt;/P&gt;&lt;P&gt;         V~WAERK&lt;/P&gt;&lt;P&gt;         V~VKORG&lt;/P&gt;&lt;P&gt;         V~FKDAT&lt;/P&gt;&lt;P&gt;         V~BUKRS&lt;/P&gt;&lt;P&gt;         V~NETWR&lt;/P&gt;&lt;P&gt;         T~VTEXT&lt;/P&gt;&lt;P&gt;         C~BUTXT&lt;/P&gt;&lt;P&gt;    INTO CORRESPONDING FIELDS OF TABLE IT_VBRK&lt;/P&gt;&lt;P&gt;    FROM VBRK AS V&lt;/P&gt;&lt;P&gt;   INNER JOIN VBRP AS P&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;VBELN = P&lt;/SUB&gt;VBELN&lt;/P&gt;&lt;P&gt;   INNER JOIN TVKOT AS T&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;VKORG = T&lt;/SUB&gt;VKORG&lt;/P&gt;&lt;P&gt;   INNER JOIN T001 AS C&lt;/P&gt;&lt;P&gt;      ON V&lt;SUB&gt;BUKRS = C&lt;/SUB&gt;BUKRS&lt;/P&gt;&lt;P&gt;   WHERE V~VBELN IN S_VBELN&lt;/P&gt;&lt;P&gt;     AND V~FKDAT IN S_FKDAT&lt;/P&gt;&lt;P&gt;     AND P~MATNR IN S_MATNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT IT_VBRK.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM IT_VBRK COMPARING VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    FG_NO_DATA = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_VBRK_DATA&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  GENERATE_SECLIST&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 GENERATE_SECLIST USING R_UCOMM     LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;                            RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE R_UCOMM.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'. "DOUBLE CLICK&lt;/P&gt;&lt;P&gt;      READ TABLE IT_VBRK INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;      SELECT POSNR&lt;/P&gt;&lt;P&gt;             FKIMG&lt;/P&gt;&lt;P&gt;             VRKME&lt;/P&gt;&lt;P&gt;             NETWR&lt;/P&gt;&lt;P&gt;             MATNR&lt;/P&gt;&lt;P&gt;             ARKTX&lt;/P&gt;&lt;P&gt;        INTO TABLE IT_VBRP&lt;/P&gt;&lt;P&gt;        FROM VBRP&lt;/P&gt;&lt;P&gt;       WHERE VBELN EQ IT_VBRK-VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT IT_VBRP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM FIELDCAT_SECLIST.&lt;/P&gt;&lt;P&gt;      PERFORM DISPLY_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GENERATE_SECLIST&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  FIELDCAT_SECLIST&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 FIELDCAT_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;&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           = V_REPID&lt;/P&gt;&lt;P&gt;        I_INTERNAL_TABNAME       = 'IT_VBRP'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME             =&lt;/P&gt;&lt;/LI&gt;&lt;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               = V_REPID&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE              =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;        CT_FIELDCAT              = IT_FIELDCAT[]&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;              .&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*..Changing the fieldcatlog as required&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;    CASE IT_FIELDCAT-FIELDNAME.&lt;/P&gt;&lt;P&gt;      WHEN 'POSNR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Billing Iem no'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Bill Item No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Item No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        OUTPUTLEN&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'POSNR'.&lt;/P&gt;&lt;P&gt;      WHEN 'FKIMG'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Actual billed quantity'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Billed Quantity'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Bill.Qty'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'FKIMG'.&lt;/P&gt;&lt;P&gt;      WHEN 'VRKME'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Sales Unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sale unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'S.Unit'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '15'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'VRKME'.&lt;/P&gt;&lt;P&gt;      WHEN 'NETWR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Net value in docu currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Net value in currency'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Net Value'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '20'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                        DO_SUM&lt;/P&gt;&lt;P&gt;                                 WHERE FIELDNAME = 'NETWR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'MATNR'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Material Number'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Mat. Number'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'Mat. No'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WHEN 'ARKTX'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_L = 'Text for sales order item'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_M = 'Sale Order Text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-SELTEXT_S = 'SO Item text'.&lt;/P&gt;&lt;P&gt;        IT_FIELDCAT-OUTPUTLEN = '30'.&lt;/P&gt;&lt;P&gt;        MODIFY IT_FIELDCAT TRANSPORTING SELTEXT_L&lt;/P&gt;&lt;P&gt;                                        SELTEXT_M&lt;/P&gt;&lt;P&gt;                                        SELTEXT_S&lt;/P&gt;&lt;P&gt;                                  WHERE FIELDNAME = 'ARKTX'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FIELDCAT_SECLIST&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  DISPLY_SECLIST&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 DISPLY_SECLIST.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR WA_LAYOUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-INFO_FIELDNAME = 'COLOR'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-TOTALS_TEXT = 'GRAND TOTAL'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-F2CODE = '&amp;amp;ETA'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-DETAIL_POPUP = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-DETAIL_INITIAL_LINES = 'X'.&lt;/P&gt;&lt;P&gt;  WA_LAYOUT-GET_SELINFOS = 'X'.&lt;/P&gt;&lt;P&gt;&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      I_CALLBACK_PROGRAM           = V_REPID&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;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   IS_LAYOUT                       = WA_LAYOUT&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT                  = IT_FIELDCAT[]&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                   =&lt;/P&gt;&lt;/LI&gt;&lt;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                   = 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;  I_SAVE                         = ' '&lt;/P&gt;&lt;/LI&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                    = IT_EVENT&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;  IS_REPREP_ID                   =&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                   = IT_VBRP&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;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt; MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLY_SECLIST&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;  Jayaram...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2007 13:53:34 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024033#M414624</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-09T13:53:34Z</dc:date>
    </item>
    <item>
      <title>Re: Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024034#M414625</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 SLIS development class for examples.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2007 13:54:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024034#M414625</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-09T13:54:05Z</dc:date>
    </item>
    <item>
      <title>Re: Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024035#M414626</link>
      <description>&lt;P&gt;[Removed by moderator.]&lt;/P&gt;&lt;P&gt;Then you will see you were not the first to think of asking this question here.&lt;/P&gt;</description>
      <pubDate>Fri, 09 Mar 2007 14:59:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024035#M414626</guid>
      <dc:creator>dhorions</dc:creator>
      <dc:date>2007-03-09T14:59:58Z</dc:date>
    </item>
    <item>
      <title>Re: Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024036#M414627</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jayaram,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please use the CODE Button above to keep this web interface from removing all formatting.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See this sample for building a field catalog from  a n y  internal table (Something SAP can't do):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  ALV_FIELDCAT_FOR_ITAB
*&amp;amp;---------------------------------------------------------------------*
*       Feldkatalog from (arbitrary) internal Table (c) Clemens Li
*       * build field catalog from        type description
*----------------------------------------------------------------------*
FORM alv_fieldcat_for_itab                                  "#EC *
  TABLES   pt_outtab                      TYPE table        "#EC *
  CHANGING pt_alv_fieldcat                TYPE slis_t_fieldcat_alv."#EC *
  DATA:
    l_desc                                TYPE sydes_desc,
    l_alv_fieldcat                        TYPE slis_fieldcat_alv,
    l_longfield                           TYPE fname.
  FIELD-SYMBOLS:
    &amp;lt;typeinfo&amp;gt;                            TYPE sydes_typeinfo,
    &amp;lt;nameinfo&amp;gt;                            TYPE sydes_nameinfo.
  DESCRIBE FIELD pt_outtab INTO l_desc.                     "#EC *

  LOOP AT l_desc-types
      ASSIGNING &amp;lt;typeinfo&amp;gt;
      WHERE NOT idx_name IS INITIAL
        AND table_kind IS INITIAL "no entries for deep table like color
        AND back                          = 1. "top-level-entries only.
    READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_name
      ASSIGNING &amp;lt;nameinfo&amp;gt;.
    CHECK &amp;lt;nameinfo&amp;gt;-name                 &amp;lt;&amp;gt; 'INCLUDE'.
    l_alv_fieldcat-fieldname              = &amp;lt;nameinfo&amp;gt;-name.
    WHILE NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.
      ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_name.
      READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_name
        ASSIGNING &amp;lt;nameinfo&amp;gt;.
      CONCATENATE
        l_alv_fieldcat-fieldname
        &amp;lt;nameinfo&amp;gt;-name
        INTO l_alv_fieldcat-fieldname.
    ENDWHILE." not &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.
    READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_help_id
      ASSIGNING &amp;lt;nameinfo&amp;gt;.
    IF sy-subrc                           = 0.

* Caution: Help-ID may be Tablename-Fieldname and thus longer
* than 30 Chars; l_alv_fieldcat-rollname is 30 Chars only
      l_alv_fieldcat-rollname             = &amp;lt;nameinfo&amp;gt;-name.
      l_longfield                         = &amp;lt;nameinfo&amp;gt;-name.
      WHILE NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.
        ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_help_id.
        READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_help_id
          ASSIGNING &amp;lt;nameinfo&amp;gt;.
        CONCATENATE
          l_longfield
          &amp;lt;nameinfo&amp;gt;-name
          INTO l_longfield.
      ENDWHILE." not l_desc-continue is initial.

* help id may be data element or &amp;lt;table&amp;gt;-&amp;lt;field&amp;gt;
      IF l_longfield CA '-'.

* get data                                type for table field
        PERFORM get_rollname_4_tabfield
          USING l_longfield CHANGING l_alv_fieldcat.
      ENDIF." l_longfield ca '-'.
    ELSE.

* No Help-ID: Use Fieldname as text
      l_alv_fieldcat-seltext_s =
      l_alv_fieldcat-seltext_m =
      l_alv_fieldcat-seltext_l =
      l_alv_fieldcat-reptext_ddic =
      &amp;lt;nameinfo&amp;gt;-name.
    ENDIF." sy-subrc                      = 0.

* Starting 4.7: get edit mask
    IF NOT &amp;lt;typeinfo&amp;gt;-idx_edit_mask IS INITIAL.
      READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_edit_mask
        ASSIGNING &amp;lt;nameinfo&amp;gt;.
      l_alv_fieldcat-edit_mask            = &amp;lt;nameinfo&amp;gt;-name.
      IF NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.
        ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_edit_mask.
        READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_edit_mask
          ASSIGNING &amp;lt;nameinfo&amp;gt;.
        CONCATENATE
          l_alv_fieldcat-edit_mask
          &amp;lt;nameinfo&amp;gt;-name
          INTO l_alv_fieldcat-edit_mask.
      ENDIF." not &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.
    ENDIF." not &amp;lt;typeinfo&amp;gt;-IDX_EDIT_MASK is initial.

* assign length, output length and decimals
    l_alv_fieldcat-intlen                 = &amp;lt;typeinfo&amp;gt;-length.
    l_alv_fieldcat-outputlen              = &amp;lt;typeinfo&amp;gt;-output_length.
    l_alv_fieldcat-decimals_out           = &amp;lt;typeinfo&amp;gt;-decimals.
    l_alv_fieldcat-inttype                = &amp;lt;typeinfo&amp;gt;-type.
    APPEND l_alv_fieldcat TO pt_alv_fieldcat.
    CLEAR:  "prevent anything 2 B  taken for subsequent fields
      l_alv_fieldcat.
  ENDLOOP." at l_desc-types where not IDX_NAME is in initial.
ENDFORM.                    " ALV_FIELDCAT_FOR_ITAB

*&amp;amp;---------------------------------------------------------------------
*&amp;amp;      Form  get_rollname_4_tabfield
*&amp;amp;---------------------------------------------------------------------
*       Get Data                          type for Table field
*----------------------------------------------------------------------
FORM get_rollname_4_tabfield
  USING    p_fname                        TYPE fname
  CHANGING p_alv_fieldcat                 TYPE slis_fieldcat_alv.
  FIELD-SYMBOLS:
    &amp;lt;dfies&amp;gt;                               TYPE dfies.
  DATA:
    l_tabname                             TYPE tabname,
     lt_dfies                             TYPE TABLE OF dfies,
    l_fieldname                           TYPE fieldname.
  SPLIT p_fname AT '-'
    INTO l_tabname l_fieldname.
  CLEAR p_alv_fieldcat-rollname.
  CALL FUNCTION 'DDIF_FIELDINFO_GET'
    EXPORTING
      tabname                             = l_tabname
      fieldname                           = l_fieldname
*   LANGU                                 = SY-LANGU
*   LFIELDNAME                            = ' '
*   ALL_TYPES                             = ' '
* IMPORTING
*   X030L_WA             =
*   DDOBJTYPE            =
*   DFIES_WA             =
*   LINES_DESCR          =
   TABLES
     dfies_tab                            =  lt_dfies
*   FIXED_VALUES         =
   EXCEPTIONS
     not_found                            = 1
     internal_error                       = 2
     OTHERS                               = 3
            .
  IF sy-subrc                             &amp;lt;&amp;gt; 0.
    MESSAGE ID sy-msgid                   TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ELSE.
    READ TABLE   lt_dfies ASSIGNING &amp;lt;dfies&amp;gt; INDEX 1.
    p_alv_fieldcat-rollname               = &amp;lt;dfies&amp;gt;-rollname.
* Und wenn keinerlei Twexte gepflegt sind?
    IF &amp;lt;dfies&amp;gt;-reptext IS INITIAL AND
       &amp;lt;dfies&amp;gt;-scrtext_s IS INITIAL AND
       &amp;lt;dfies&amp;gt;-scrtext_m IS INITIAL AND
       &amp;lt;dfies&amp;gt;-scrtext_l IS INITIAL.
* No Text: Use Fieldname as text
      p_alv_fieldcat-seltext_s =
      p_alv_fieldcat-seltext_m =
      p_alv_fieldcat-seltext_l =
      p_alv_fieldcat-reptext_ddic =
      p_alv_fieldcat-fieldname.
    ENDIF." &amp;lt;dfies&amp;gt;-reptext IS INITIAL AND
  ENDIF.
ENDFORM.                    " get_rollname_4_tabfield
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Clemens&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2007 16:42:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024036#M414627</guid>
      <dc:creator>Clemenss</dc:creator>
      <dc:date>2007-03-09T16:42:35Z</dc:date>
    </item>
    <item>
      <title>Re: Interactive ALV Report.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024037#M414628</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, I got the correct answer.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 May 2007 06:53:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2024037#M414628</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-05-10T06:53:45Z</dc:date>
    </item>
  </channel>
</rss>

