<?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 LIST materials in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199799#M130759</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;Can any one explain me about this program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Z_LIST_MATERIALS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;TABLES:MARC, MARD, VBAP, LIPS, EKPO, VBFA, EKBE, MARM, VBBE, MARA, MBEW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK SEL WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: S_WERKS FOR MARC-WERKS, " Plant&lt;/P&gt;&lt;P&gt;               S_MATNR FOR MARC-MATNR, " Material&lt;/P&gt;&lt;P&gt;               S_MTART FOR MARA-MTART. " Material Type SELECTION-SCREEN END OF BLOCK SEL.&lt;/P&gt;&lt;P&gt;PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT. " ALV Variant&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF INV OCCURS 100,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MARD-WERKS, " Plant&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARD-MATNR, " Material&lt;/P&gt;&lt;P&gt;       MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;       STPRS LIKE MBEW-STPRS, " Standard Price&lt;/P&gt;&lt;P&gt;       AVAIL LIKE MARD-LABST, " Available&lt;/P&gt;&lt;P&gt;       LABST LIKE MARD-LABST, " Unrestricted use&lt;/P&gt;&lt;P&gt;       INSME LIKE MARD-INSME, " Quality Inspection&lt;/P&gt;&lt;P&gt;       RETME LIKE MARD-RETME, " Returns&lt;/P&gt;&lt;P&gt;       TRANS LIKE MARC-UMLMC, " Stock in transit (calculated)&lt;/P&gt;&lt;P&gt;       UMLMC LIKE MARC-UMLMC, " Stock Transfer (plant)&lt;/P&gt;&lt;P&gt;       UMLME LIKE MARD-UMLME, " Transfer (SLoc)&lt;/P&gt;&lt;P&gt;       WESBS LIKE EKBE-WESBS, " GR Blocked Stock&lt;/P&gt;&lt;P&gt;       TRAME LIKE MARC-TRAME, " Stock in transit&lt;/P&gt;&lt;P&gt;       SPEME LIKE MARD-SPEME, " Blocked&lt;/P&gt;&lt;P&gt;       KWMENG LIKE VBAP-KWMENG, " Sales orders&lt;/P&gt;&lt;P&gt;       LFIMG LIKE LIPS-LFIMG, " Scheduled for Delivery&lt;/P&gt;&lt;P&gt;       MENGE LIKE EKPO-MENGE, " Open Purch. Orders&lt;/P&gt;&lt;P&gt;       VALUE LIKE MBEW-SALK3, " Stock Value (Calculated)&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS, " Unit of measure&lt;/P&gt;&lt;P&gt;     END OF INV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: FIELDTAB TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     HEADING  TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;     LAYOUT   TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;     EVENTS   TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;     REPNAME  LIKE SY-REPID,&lt;/P&gt;&lt;P&gt;     F2CODE   LIKE SY-UCOMM VALUE  '&amp;amp;ETA',&lt;/P&gt;&lt;P&gt;     G_SAVE(1) TYPE C,&lt;/P&gt;&lt;P&gt;     G_EXIT(1) TYPE C,&lt;/P&gt;&lt;P&gt;     G_VARIANT LIKE DISVARIANT,&lt;/P&gt;&lt;P&gt;     GX_VARIANT LIKE DISVARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt; REPNAME = SY-REPID.&lt;/P&gt;&lt;P&gt; PERFORM INITIALIZE_FIELDCAT USING FIELDTAB[].&lt;/P&gt;&lt;P&gt; PERFORM BUILD_EVENTTAB USING EVENTS[].&lt;/P&gt;&lt;P&gt; PERFORM BUILD_COMMENT USING HEADING[].&lt;/P&gt;&lt;P&gt; PERFORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.&lt;/P&gt;&lt;P&gt; PERFORM F4_FOR_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt; PERFORM PAI_OF_SELECTION_SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; PERFORM GET_MARD.&lt;/P&gt;&lt;P&gt; PERFORM GET_UNIT_OF_MEASURE.&lt;/P&gt;&lt;P&gt; PERFORM GET_MARC.&lt;/P&gt;&lt;P&gt; PERFORM GET_EKPO.&lt;/P&gt;&lt;P&gt; PERFORM GET_LIPS.&lt;/P&gt;&lt;P&gt; PERFORM GET_VBAP.&lt;/P&gt;&lt;P&gt; PERFORM GET_OPEN.&lt;/P&gt;&lt;P&gt; PERFORM GET_PRICE.&lt;/P&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 BUILD_LAYOUT USING LAYOUT.&lt;/P&gt;&lt;P&gt; PERFORM WRITE_OUTPUT.&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  INITIALIZE_FIELDCAT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_FIELDTAB[]  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 INITIALIZE_FIELDCAT USING P_FIELDTAB TYPE SLIS_T_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt; DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fixed columns (obligatory)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME    = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIX_COLUMN = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-NO_OUT     = 'O'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME  = 'WERKS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME  = 'MATNR'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;totalized columns&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME   = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SP_GROUP  = 'A'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'LABST'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'INSME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'RETME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'UMLME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'WESBS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'SPEME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;columns with different description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'KWMENG'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Sales Orders'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Sales Or'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Sales Orders Qty'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'LFIMG'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Sched. Delivery'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Schd. Del'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Scheduled for Delivery'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'TRANS'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Stk. in transit'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Stk. trns'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Stock in transit (sum)'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'AVAIL'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Available'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Avail.'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Stock Available'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'MENGE'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Open Orders'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Open Ord'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Open Purchase Orders'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;columns not displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME   = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SP_GROUP  = 'A'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-NO_OUT    = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'MEINS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'UMLMC'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'TRAME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'STPRS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'VALUE'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " INITIALIZE_FIELDCAT&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  BUILD_EVENTTAB&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_EVENTS[]  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 BUILD_EVENTTAB USING P_EVENTS TYPE SLIS_T_EVENT.&lt;/P&gt;&lt;P&gt; DATA: LS_EVENT TYPE SLIS_ALV_EVENT.&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 = 0&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;           ET_EVENTS   = P_EVENTS.&lt;/P&gt;&lt;P&gt; READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;                          INTO LS_EVENT.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;   MOVE FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.&lt;/P&gt;&lt;P&gt;   APPEND LS_EVENT TO P_EVENTS.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_EVENTTAB&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  BUILD_COMMENT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_HEADING[]  text                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BUILD_COMMENT USING P_HEADING TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt; DATA: HLINE TYPE SLIS_LISTHEADER,&lt;/P&gt;&lt;P&gt;       TEXT(60) TYPE C,&lt;/P&gt;&lt;P&gt;       SEP(20) TYPE C.&lt;/P&gt;&lt;P&gt; CLEAR: HLINE, TEXT.&lt;/P&gt;&lt;P&gt; HLINE-TYP  = 'H'.&lt;/P&gt;&lt;P&gt; WRITE: TEXT-101 TO TEXT+23.&lt;/P&gt;&lt;P&gt; HLINE-INFO = TEXT.&lt;/P&gt;&lt;P&gt; APPEND HLINE TO P_HEADING.&lt;/P&gt;&lt;P&gt; CLEAR TEXT.&lt;/P&gt;&lt;P&gt; WRITE: 'User: ' TO TEXT,&lt;/P&gt;&lt;P&gt;        SY-UNAME TO TEXT+6,&lt;/P&gt;&lt;P&gt;        'Date: ' TO TEXT+25,&lt;/P&gt;&lt;P&gt;        SY-DATUM TO TEXT+31,&lt;/P&gt;&lt;P&gt;        'Page: ' TO TEXT+50,&lt;/P&gt;&lt;P&gt;        SY-PAGNO TO TEXT+56.&lt;/P&gt;&lt;P&gt; HLINE-INFO = TEXT.&lt;/P&gt;&lt;P&gt; APPEND HLINE TO P_HEADING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " BUILD_COMMENT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM TOP_OF_PAGE                                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           IT_LIST_COMMENTARY = HEADING.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  INITIALIZE_VARIANT&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;P&gt;FORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt; G_SAVE = 'A'.&lt;/P&gt;&lt;P&gt; CLEAR G_VARIANT.&lt;/P&gt;&lt;P&gt; G_VARIANT-REPORT = REPNAME.&lt;/P&gt;&lt;P&gt; GX_VARIANT = G_VARIANT.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;           CS_VARIANT = GX_VARIANT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;   P_VARI = GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " INITIALIZE_VARIANT&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  F4_FOR_VARIANT&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;P&gt;FORM F4_FOR_VARIANT.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_VARIANT_F4'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           IS_VARIANT = G_VARIANT&lt;/P&gt;&lt;P&gt;           I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;           E_EXIT     = G_EXIT&lt;/P&gt;&lt;P&gt;           ES_VARIANT = GX_VARIANT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 2.&lt;/P&gt;&lt;P&gt;   MESSAGE ID SY-MSGID TYPE 'S'      NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt; ELSE.&lt;/P&gt;&lt;P&gt;   IF G_EXIT = SPACE.&lt;/P&gt;&lt;P&gt;     P_VARI = GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " F4_FOR_VARIANT&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  PAI_OF_SELECTION_SCREEN&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;P&gt;FORM PAI_OF_SELECTION_SCREEN.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt; IF NOT P_VARI IS INITIAL.&lt;/P&gt;&lt;P&gt;   MOVE G_VARIANT TO GX_VARIANT.&lt;/P&gt;&lt;P&gt;   MOVE P_VARI TO GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;   CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;             I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;        CHANGING&lt;/P&gt;&lt;P&gt;             CS_VARIANT = GX_VARIANT.&lt;/P&gt;&lt;P&gt;   G_VARIANT = GX_VARIANT.&lt;/P&gt;&lt;P&gt; ELSE.&lt;/P&gt;&lt;P&gt;   PERFORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " PAI_OF_SELECTION_SCREEN&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  GET_MARD&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;P&gt;FORM GET_MARD.&lt;/P&gt;&lt;P&gt; SELECT MATNR WERKS LABST INSME RETME UMLME SPEME&lt;/P&gt;&lt;P&gt;        FROM MARD&lt;/P&gt;&lt;P&gt;        INTO CORRESPONDING FIELDS OF INV&lt;/P&gt;&lt;P&gt;        WHERE MATNR IN S_MATNR&lt;/P&gt;&lt;P&gt;        AND   WERKS IN S_WERKS.&lt;/P&gt;&lt;P&gt;   COLLECT INV.&lt;/P&gt;&lt;P&gt; ENDSELECT.&lt;/P&gt;&lt;P&gt; PERFORM FILTER_BY_MATERIAL_TYPE.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_MARD&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  FILTER_BY_MATERIAL_TYPE&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;P&gt;FORM FILTER_BY_MATERIAL_TYPE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR INV-MTART.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MTART&lt;/P&gt;&lt;P&gt;          INTO INV-MTART&lt;/P&gt;&lt;P&gt;          FROM MARA&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   MTART IN S_MTART.&lt;/P&gt;&lt;P&gt;   IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;     MODIFY INV.&lt;/P&gt;&lt;P&gt;   ELSE.&lt;/P&gt;&lt;P&gt;     DELETE INV.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FILTER_BY_MATERIAL_TYPE&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  GET_MARC&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;P&gt;FORM GET_MARC.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE UMLMC TRAME&lt;/P&gt;&lt;P&gt;          FROM MARC&lt;/P&gt;&lt;P&gt;          INTO CORRESPONDING FIELDS OF INV&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS.&lt;/P&gt;&lt;P&gt;   IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;     INV-TRANS = INV-UMLMC + INV-TRAME.&lt;/P&gt;&lt;P&gt;     MODIFY INV.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_MARC&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_EKPO&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;P&gt;FORM GET_EKPO.&lt;/P&gt;&lt;P&gt; DATA: WESBS LIKE INV-WESBS,&lt;/P&gt;&lt;P&gt;       SHKZG LIKE EKBE-SHKZG,&lt;/P&gt;&lt;P&gt;       MEINS LIKE EKPO-MEINS,&lt;/P&gt;&lt;P&gt;       LMEIN LIKE EKPO-LMEIN.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: WESBS, SHKZG, MEINS, LMEIN.&lt;/P&gt;&lt;P&gt;   SELECT YWESBS YSHKZG XMEINS XLMEIN&lt;/P&gt;&lt;P&gt;          INTO (WESBS, SHKZG, MEINS, LMEIN)&lt;/P&gt;&lt;P&gt;          FROM EKPO AS X JOIN EKBE AS Y&lt;/P&gt;&lt;P&gt;          ON   XEBELN = YEBELN&lt;/P&gt;&lt;P&gt;          AND  XEBELP = YEBELP&lt;/P&gt;&lt;P&gt;          WHERE XMATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   XWERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   XLOEKZ NE 'L'.&lt;/P&gt;&lt;P&gt;     IF SHKZG EQ 'H'.&lt;/P&gt;&lt;P&gt;       MULTIPLY WESBS BY -1.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;     IF MEINS NE LMEIN.&lt;/P&gt;&lt;P&gt;       PERFORM CONVERT_UNIT_OF_MEASURE CHANGING INV-MATNR MEINS WESBS.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;     ADD WESBS TO INV-WESBS.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_EKPO&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_LIPS&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;P&gt;FORM GET_LIPS.&lt;/P&gt;&lt;P&gt; DATA: LFIMG LIKE INV-LFIMG.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: LFIMG, INV-LFIMG.&lt;/P&gt;&lt;P&gt;   SELECT OMENG&lt;/P&gt;&lt;P&gt;          INTO LFIMG&lt;/P&gt;&lt;P&gt;          FROM VBBE&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   VBTYP EQ 'J'.&lt;/P&gt;&lt;P&gt;     ADD LFIMG TO INV-LFIMG.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_LIPS&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_VBAP&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;P&gt;FORM GET_VBAP.&lt;/P&gt;&lt;P&gt; DATA: KWMENG LIKE INV-KWMENG.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: KWMENG, INV-KWMENG.&lt;/P&gt;&lt;P&gt;   SELECT OMENG&lt;/P&gt;&lt;P&gt;          INTO KWMENG&lt;/P&gt;&lt;P&gt;          FROM VBBE&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   VBTYP EQ 'C'.&lt;/P&gt;&lt;P&gt;     ADD KWMENG TO INV-KWMENG.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   INV-AVAIL = INV-LABST - INV-INSME - INV-KWMENG - INV-LFIMG.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_VBAP&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  GET_UNIT_OF_MEASURE&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_UNIT_OF_MEASURE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MEINS&lt;/P&gt;&lt;P&gt;          FROM MARA&lt;/P&gt;&lt;P&gt;          INTO INV-MEINS&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_UNIT_OF_MEASURE&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  GET_OPEN&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;P&gt;FORM GET_OPEN.&lt;/P&gt;&lt;P&gt; DATA: BEGIN OF XTAB OCCURS 10,       " Open orders table&lt;/P&gt;&lt;P&gt;          WERKS LIKE EKPO-WERKS,&lt;/P&gt;&lt;P&gt;          LGORT LIKE EKPO-LGORT,&lt;/P&gt;&lt;P&gt;          MATNR LIKE EKPO-MATNR,&lt;/P&gt;&lt;P&gt;          MENGE LIKE EKPO-MENGE,&lt;/P&gt;&lt;P&gt;          MENGK LIKE EKPO-MENGE,&lt;/P&gt;&lt;P&gt;        END OF XTAB.&lt;/P&gt;&lt;P&gt; RANGES: L_WERKS FOR MARD-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   REFRESH XTAB.&lt;/P&gt;&lt;P&gt;   CLEAR: XTAB, L_WERKS.&lt;/P&gt;&lt;P&gt;   MOVE INV-WERKS TO L_WERKS-LOW.&lt;/P&gt;&lt;P&gt;   CALL FUNCTION 'MB_ADD_PURCHASE_ORDER_QUANTITY'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;             X_MATNR = INV-MATNR&lt;/P&gt;&lt;P&gt;             X_MEINS = INV-MEINS&lt;/P&gt;&lt;P&gt;             X_ELIKZ = SPACE&lt;/P&gt;&lt;P&gt;             X_LOEKZ = SPACE&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;             XTAB    = XTAB&lt;/P&gt;&lt;P&gt;             XWERKS  = L_WERKS.&lt;/P&gt;&lt;P&gt;   MOVE XTAB-MENGE TO INV-MENGE.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_OPEN&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  GET_PRICE&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;P&gt;FORM GET_PRICE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE STPRS&lt;/P&gt;&lt;P&gt;          FROM MBEW&lt;/P&gt;&lt;P&gt;          INTO INV-STPRS&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   BWKEY EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   BWTAR EQ SPACE.&lt;/P&gt;&lt;P&gt;     IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;       INV-VALUE = INV-STPRS *&lt;/P&gt;&lt;P&gt;                 ( INV-LABST + INV-INSME + INV-TRANS + INV-SPEME ).&lt;/P&gt;&lt;P&gt;       MODIFY INV.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_PRICE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM CONVERT_UNIT_OF_MEASURE                                  *&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;      text                                                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_MATNR                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_VRKME                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_QUANT                                                       *&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 CONVERT_UNIT_OF_MEASURE USING P_MATNR P_VRKME P_QUANT.&lt;/P&gt;&lt;P&gt; DATA: UMREZ LIKE MARM-UMREZ,&lt;/P&gt;&lt;P&gt;       UMREN LIKE MARM-UMREN.&lt;/P&gt;&lt;P&gt; SELECT SINGLE UMREZ UMREN&lt;/P&gt;&lt;P&gt;        INTO (UMREZ, UMREN)&lt;/P&gt;&lt;P&gt;        FROM MARM&lt;/P&gt;&lt;P&gt;        WHERE MATNR EQ P_MATNR&lt;/P&gt;&lt;P&gt;        AND   MEINH EQ P_VRKME.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;   COMPUTE P_QUANT = ( P_QUANT * UMREZ ) / UMREN.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&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  BUILD_LAYOUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_LAYOUT  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 BUILD_LAYOUT USING P_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt; P_LAYOUT-F2CODE       = F2CODE.&lt;/P&gt;&lt;P&gt; P_LAYOUT-ZEBRA        = 'X'.&lt;/P&gt;&lt;P&gt; P_LAYOUT-DETAIL_POPUP = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_LAYOUT&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  WRITE_OUTPUT&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;P&gt;FORM WRITE_OUTPUT.&lt;/P&gt;&lt;P&gt; SORT INV BY WERKS MATNR.&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     = REPNAME&lt;/P&gt;&lt;P&gt;           I_INTERNAL_TABNAME = 'INV'&lt;/P&gt;&lt;P&gt;           I_INCLNAME         = REPNAME&lt;/P&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;           CT_FIELDCAT        = FIELDTAB.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;   WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_FIELDCATALOG_MERGE'.  ENDIF.  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           I_CALLBACK_PROGRAM = REPNAME&lt;/P&gt;&lt;P&gt;           I_STRUCTURE_NAME   = 'INV'&lt;/P&gt;&lt;P&gt;           IS_LAYOUT          = LAYOUT&lt;/P&gt;&lt;P&gt;           IT_FIELDCAT        = FIELDTAB&lt;/P&gt;&lt;P&gt;           I_DEFAULT          = 'A'&lt;/P&gt;&lt;P&gt;           I_SAVE             = G_SAVE&lt;/P&gt;&lt;P&gt;           IS_VARIANT         = G_VARIANT&lt;/P&gt;&lt;P&gt;           IT_EVENTS          = EVENTS[]&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;           T_OUTTAB           = INV.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;   WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_LIST_DISPLAY'.  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " WRITE&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Feb 2006 01:02:50 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-02-11T01:02:50Z</dc:date>
    <item>
      <title>LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199799#M130759</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;Can any one explain me about this program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Z_LIST_MATERIALS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS: SLIS.&lt;/P&gt;&lt;P&gt;TABLES:MARC, MARD, VBAP, LIPS, EKPO, VBFA, EKBE, MARM, VBBE, MARA, MBEW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK SEL WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: S_WERKS FOR MARC-WERKS, " Plant&lt;/P&gt;&lt;P&gt;               S_MATNR FOR MARC-MATNR, " Material&lt;/P&gt;&lt;P&gt;               S_MTART FOR MARA-MTART. " Material Type SELECTION-SCREEN END OF BLOCK SEL.&lt;/P&gt;&lt;P&gt;PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT. " ALV Variant&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS: FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF INV OCCURS 100,&lt;/P&gt;&lt;P&gt;       WERKS LIKE MARD-WERKS, " Plant&lt;/P&gt;&lt;P&gt;       MATNR LIKE MARD-MATNR, " Material&lt;/P&gt;&lt;P&gt;       MTART LIKE MARA-MTART, " Material Type&lt;/P&gt;&lt;P&gt;       STPRS LIKE MBEW-STPRS, " Standard Price&lt;/P&gt;&lt;P&gt;       AVAIL LIKE MARD-LABST, " Available&lt;/P&gt;&lt;P&gt;       LABST LIKE MARD-LABST, " Unrestricted use&lt;/P&gt;&lt;P&gt;       INSME LIKE MARD-INSME, " Quality Inspection&lt;/P&gt;&lt;P&gt;       RETME LIKE MARD-RETME, " Returns&lt;/P&gt;&lt;P&gt;       TRANS LIKE MARC-UMLMC, " Stock in transit (calculated)&lt;/P&gt;&lt;P&gt;       UMLMC LIKE MARC-UMLMC, " Stock Transfer (plant)&lt;/P&gt;&lt;P&gt;       UMLME LIKE MARD-UMLME, " Transfer (SLoc)&lt;/P&gt;&lt;P&gt;       WESBS LIKE EKBE-WESBS, " GR Blocked Stock&lt;/P&gt;&lt;P&gt;       TRAME LIKE MARC-TRAME, " Stock in transit&lt;/P&gt;&lt;P&gt;       SPEME LIKE MARD-SPEME, " Blocked&lt;/P&gt;&lt;P&gt;       KWMENG LIKE VBAP-KWMENG, " Sales orders&lt;/P&gt;&lt;P&gt;       LFIMG LIKE LIPS-LFIMG, " Scheduled for Delivery&lt;/P&gt;&lt;P&gt;       MENGE LIKE EKPO-MENGE, " Open Purch. Orders&lt;/P&gt;&lt;P&gt;       VALUE LIKE MBEW-SALK3, " Stock Value (Calculated)&lt;/P&gt;&lt;P&gt;       MEINS LIKE MARA-MEINS, " Unit of measure&lt;/P&gt;&lt;P&gt;     END OF INV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: FIELDTAB TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     HEADING  TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;     LAYOUT   TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;     EVENTS   TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;     REPNAME  LIKE SY-REPID,&lt;/P&gt;&lt;P&gt;     F2CODE   LIKE SY-UCOMM VALUE  '&amp;amp;ETA',&lt;/P&gt;&lt;P&gt;     G_SAVE(1) TYPE C,&lt;/P&gt;&lt;P&gt;     G_EXIT(1) TYPE C,&lt;/P&gt;&lt;P&gt;     G_VARIANT LIKE DISVARIANT,&lt;/P&gt;&lt;P&gt;     GX_VARIANT LIKE DISVARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt; REPNAME = SY-REPID.&lt;/P&gt;&lt;P&gt; PERFORM INITIALIZE_FIELDCAT USING FIELDTAB[].&lt;/P&gt;&lt;P&gt; PERFORM BUILD_EVENTTAB USING EVENTS[].&lt;/P&gt;&lt;P&gt; PERFORM BUILD_COMMENT USING HEADING[].&lt;/P&gt;&lt;P&gt; PERFORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.&lt;/P&gt;&lt;P&gt; PERFORM F4_FOR_VARIANT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt; PERFORM PAI_OF_SELECTION_SCREEN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt; PERFORM GET_MARD.&lt;/P&gt;&lt;P&gt; PERFORM GET_UNIT_OF_MEASURE.&lt;/P&gt;&lt;P&gt; PERFORM GET_MARC.&lt;/P&gt;&lt;P&gt; PERFORM GET_EKPO.&lt;/P&gt;&lt;P&gt; PERFORM GET_LIPS.&lt;/P&gt;&lt;P&gt; PERFORM GET_VBAP.&lt;/P&gt;&lt;P&gt; PERFORM GET_OPEN.&lt;/P&gt;&lt;P&gt; PERFORM GET_PRICE.&lt;/P&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 BUILD_LAYOUT USING LAYOUT.&lt;/P&gt;&lt;P&gt; PERFORM WRITE_OUTPUT.&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  INITIALIZE_FIELDCAT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_FIELDTAB[]  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 INITIALIZE_FIELDCAT USING P_FIELDTAB TYPE SLIS_T_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt; DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fixed columns (obligatory)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME    = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIX_COLUMN = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-NO_OUT     = 'O'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME  = 'WERKS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME  = 'MATNR'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;totalized columns&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME   = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SP_GROUP  = 'A'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-DO_SUM    = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'LABST'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'INSME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'RETME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'UMLME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'WESBS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'SPEME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;columns with different description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'KWMENG'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Sales Orders'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Sales Or'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Sales Orders Qty'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'LFIMG'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Sched. Delivery'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Schd. Del'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Scheduled for Delivery'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'TRANS'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Stk. in transit'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Stk. trns'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Stock in transit (sum)'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'AVAIL'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Available'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Avail.'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Stock Available'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'MENGE'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_M = 'Open Orders'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_S = 'Open Ord'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SELTEXT_L = 'Open Purchase Orders'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;columns not displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; CLEAR L_FIELDCAT.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-TABNAME   = 'INV'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-SP_GROUP  = 'A'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-NO_OUT    = 'X'.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'MEINS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'UMLMC'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'TRAME'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'STPRS'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt; L_FIELDCAT-FIELDNAME = 'VALUE'.&lt;/P&gt;&lt;P&gt; APPEND L_FIELDCAT TO P_FIELDTAB.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " INITIALIZE_FIELDCAT&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  BUILD_EVENTTAB&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_EVENTS[]  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 BUILD_EVENTTAB USING P_EVENTS TYPE SLIS_T_EVENT.&lt;/P&gt;&lt;P&gt; DATA: LS_EVENT TYPE SLIS_ALV_EVENT.&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 = 0&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;           ET_EVENTS   = P_EVENTS.&lt;/P&gt;&lt;P&gt; READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;                          INTO LS_EVENT.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;   MOVE FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.&lt;/P&gt;&lt;P&gt;   APPEND LS_EVENT TO P_EVENTS.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_EVENTTAB&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  BUILD_COMMENT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_HEADING[]  text                                            *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BUILD_COMMENT USING P_HEADING TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt; DATA: HLINE TYPE SLIS_LISTHEADER,&lt;/P&gt;&lt;P&gt;       TEXT(60) TYPE C,&lt;/P&gt;&lt;P&gt;       SEP(20) TYPE C.&lt;/P&gt;&lt;P&gt; CLEAR: HLINE, TEXT.&lt;/P&gt;&lt;P&gt; HLINE-TYP  = 'H'.&lt;/P&gt;&lt;P&gt; WRITE: TEXT-101 TO TEXT+23.&lt;/P&gt;&lt;P&gt; HLINE-INFO = TEXT.&lt;/P&gt;&lt;P&gt; APPEND HLINE TO P_HEADING.&lt;/P&gt;&lt;P&gt; CLEAR TEXT.&lt;/P&gt;&lt;P&gt; WRITE: 'User: ' TO TEXT,&lt;/P&gt;&lt;P&gt;        SY-UNAME TO TEXT+6,&lt;/P&gt;&lt;P&gt;        'Date: ' TO TEXT+25,&lt;/P&gt;&lt;P&gt;        SY-DATUM TO TEXT+31,&lt;/P&gt;&lt;P&gt;        'Page: ' TO TEXT+50,&lt;/P&gt;&lt;P&gt;        SY-PAGNO TO TEXT+56.&lt;/P&gt;&lt;P&gt; HLINE-INFO = TEXT.&lt;/P&gt;&lt;P&gt; APPEND HLINE TO P_HEADING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " BUILD_COMMENT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM TOP_OF_PAGE                                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ........                                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           IT_LIST_COMMENTARY = HEADING.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  INITIALIZE_VARIANT&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;P&gt;FORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt; G_SAVE = 'A'.&lt;/P&gt;&lt;P&gt; CLEAR G_VARIANT.&lt;/P&gt;&lt;P&gt; G_VARIANT-REPORT = REPNAME.&lt;/P&gt;&lt;P&gt; GX_VARIANT = G_VARIANT.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;           CS_VARIANT = GX_VARIANT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;   P_VARI = GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " INITIALIZE_VARIANT&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  F4_FOR_VARIANT&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;P&gt;FORM F4_FOR_VARIANT.&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'REUSE_ALV_VARIANT_F4'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           IS_VARIANT = G_VARIANT&lt;/P&gt;&lt;P&gt;           I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;           E_EXIT     = G_EXIT&lt;/P&gt;&lt;P&gt;           ES_VARIANT = GX_VARIANT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;           NOT_FOUND  = 2.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC = 2.&lt;/P&gt;&lt;P&gt;   MESSAGE ID SY-MSGID TYPE 'S'      NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;P&gt; ELSE.&lt;/P&gt;&lt;P&gt;   IF G_EXIT = SPACE.&lt;/P&gt;&lt;P&gt;     P_VARI = GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " F4_FOR_VARIANT&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  PAI_OF_SELECTION_SCREEN&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;P&gt;FORM PAI_OF_SELECTION_SCREEN.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt; IF NOT P_VARI IS INITIAL.&lt;/P&gt;&lt;P&gt;   MOVE G_VARIANT TO GX_VARIANT.&lt;/P&gt;&lt;P&gt;   MOVE P_VARI TO GX_VARIANT-VARIANT.&lt;/P&gt;&lt;P&gt;   CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;             I_SAVE     = G_SAVE&lt;/P&gt;&lt;P&gt;        CHANGING&lt;/P&gt;&lt;P&gt;             CS_VARIANT = GX_VARIANT.&lt;/P&gt;&lt;P&gt;   G_VARIANT = GX_VARIANT.&lt;/P&gt;&lt;P&gt; ELSE.&lt;/P&gt;&lt;P&gt;   PERFORM INITIALIZE_VARIANT.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " PAI_OF_SELECTION_SCREEN&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  GET_MARD&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;P&gt;FORM GET_MARD.&lt;/P&gt;&lt;P&gt; SELECT MATNR WERKS LABST INSME RETME UMLME SPEME&lt;/P&gt;&lt;P&gt;        FROM MARD&lt;/P&gt;&lt;P&gt;        INTO CORRESPONDING FIELDS OF INV&lt;/P&gt;&lt;P&gt;        WHERE MATNR IN S_MATNR&lt;/P&gt;&lt;P&gt;        AND   WERKS IN S_WERKS.&lt;/P&gt;&lt;P&gt;   COLLECT INV.&lt;/P&gt;&lt;P&gt; ENDSELECT.&lt;/P&gt;&lt;P&gt; PERFORM FILTER_BY_MATERIAL_TYPE.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_MARD&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  FILTER_BY_MATERIAL_TYPE&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;P&gt;FORM FILTER_BY_MATERIAL_TYPE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR INV-MTART.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MTART&lt;/P&gt;&lt;P&gt;          INTO INV-MTART&lt;/P&gt;&lt;P&gt;          FROM MARA&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   MTART IN S_MTART.&lt;/P&gt;&lt;P&gt;   IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;     MODIFY INV.&lt;/P&gt;&lt;P&gt;   ELSE.&lt;/P&gt;&lt;P&gt;     DELETE INV.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " FILTER_BY_MATERIAL_TYPE&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  GET_MARC&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;P&gt;FORM GET_MARC.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE UMLMC TRAME&lt;/P&gt;&lt;P&gt;          FROM MARC&lt;/P&gt;&lt;P&gt;          INTO CORRESPONDING FIELDS OF INV&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS.&lt;/P&gt;&lt;P&gt;   IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;     INV-TRANS = INV-UMLMC + INV-TRAME.&lt;/P&gt;&lt;P&gt;     MODIFY INV.&lt;/P&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_MARC&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_EKPO&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;P&gt;FORM GET_EKPO.&lt;/P&gt;&lt;P&gt; DATA: WESBS LIKE INV-WESBS,&lt;/P&gt;&lt;P&gt;       SHKZG LIKE EKBE-SHKZG,&lt;/P&gt;&lt;P&gt;       MEINS LIKE EKPO-MEINS,&lt;/P&gt;&lt;P&gt;       LMEIN LIKE EKPO-LMEIN.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: WESBS, SHKZG, MEINS, LMEIN.&lt;/P&gt;&lt;P&gt;   SELECT YWESBS YSHKZG XMEINS XLMEIN&lt;/P&gt;&lt;P&gt;          INTO (WESBS, SHKZG, MEINS, LMEIN)&lt;/P&gt;&lt;P&gt;          FROM EKPO AS X JOIN EKBE AS Y&lt;/P&gt;&lt;P&gt;          ON   XEBELN = YEBELN&lt;/P&gt;&lt;P&gt;          AND  XEBELP = YEBELP&lt;/P&gt;&lt;P&gt;          WHERE XMATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   XWERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   XLOEKZ NE 'L'.&lt;/P&gt;&lt;P&gt;     IF SHKZG EQ 'H'.&lt;/P&gt;&lt;P&gt;       MULTIPLY WESBS BY -1.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;     IF MEINS NE LMEIN.&lt;/P&gt;&lt;P&gt;       PERFORM CONVERT_UNIT_OF_MEASURE CHANGING INV-MATNR MEINS WESBS.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;     ADD WESBS TO INV-WESBS.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_EKPO&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_LIPS&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;P&gt;FORM GET_LIPS.&lt;/P&gt;&lt;P&gt; DATA: LFIMG LIKE INV-LFIMG.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: LFIMG, INV-LFIMG.&lt;/P&gt;&lt;P&gt;   SELECT OMENG&lt;/P&gt;&lt;P&gt;          INTO LFIMG&lt;/P&gt;&lt;P&gt;          FROM VBBE&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   VBTYP EQ 'J'.&lt;/P&gt;&lt;P&gt;     ADD LFIMG TO INV-LFIMG.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_LIPS&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_VBAP&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;P&gt;FORM GET_VBAP.&lt;/P&gt;&lt;P&gt; DATA: KWMENG LIKE INV-KWMENG.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   CLEAR: KWMENG, INV-KWMENG.&lt;/P&gt;&lt;P&gt;   SELECT OMENG&lt;/P&gt;&lt;P&gt;          INTO KWMENG&lt;/P&gt;&lt;P&gt;          FROM VBBE&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   WERKS EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   VBTYP EQ 'C'.&lt;/P&gt;&lt;P&gt;     ADD KWMENG TO INV-KWMENG.&lt;/P&gt;&lt;P&gt;   ENDSELECT.&lt;/P&gt;&lt;P&gt;   INV-AVAIL = INV-LABST - INV-INSME - INV-KWMENG - INV-LFIMG.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_VBAP&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  GET_UNIT_OF_MEASURE&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_UNIT_OF_MEASURE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE MEINS&lt;/P&gt;&lt;P&gt;          FROM MARA&lt;/P&gt;&lt;P&gt;          INTO INV-MEINS&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_UNIT_OF_MEASURE&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  GET_OPEN&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;P&gt;FORM GET_OPEN.&lt;/P&gt;&lt;P&gt; DATA: BEGIN OF XTAB OCCURS 10,       " Open orders table&lt;/P&gt;&lt;P&gt;          WERKS LIKE EKPO-WERKS,&lt;/P&gt;&lt;P&gt;          LGORT LIKE EKPO-LGORT,&lt;/P&gt;&lt;P&gt;          MATNR LIKE EKPO-MATNR,&lt;/P&gt;&lt;P&gt;          MENGE LIKE EKPO-MENGE,&lt;/P&gt;&lt;P&gt;          MENGK LIKE EKPO-MENGE,&lt;/P&gt;&lt;P&gt;        END OF XTAB.&lt;/P&gt;&lt;P&gt; RANGES: L_WERKS FOR MARD-WERKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   REFRESH XTAB.&lt;/P&gt;&lt;P&gt;   CLEAR: XTAB, L_WERKS.&lt;/P&gt;&lt;P&gt;   MOVE INV-WERKS TO L_WERKS-LOW.&lt;/P&gt;&lt;P&gt;   CALL FUNCTION 'MB_ADD_PURCHASE_ORDER_QUANTITY'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;             X_MATNR = INV-MATNR&lt;/P&gt;&lt;P&gt;             X_MEINS = INV-MEINS&lt;/P&gt;&lt;P&gt;             X_ELIKZ = SPACE&lt;/P&gt;&lt;P&gt;             X_LOEKZ = SPACE&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;             XTAB    = XTAB&lt;/P&gt;&lt;P&gt;             XWERKS  = L_WERKS.&lt;/P&gt;&lt;P&gt;   MOVE XTAB-MENGE TO INV-MENGE.&lt;/P&gt;&lt;P&gt;   MODIFY INV.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_OPEN&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  GET_PRICE&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;P&gt;FORM GET_PRICE.&lt;/P&gt;&lt;P&gt; LOOP AT INV.&lt;/P&gt;&lt;P&gt;   SELECT SINGLE STPRS&lt;/P&gt;&lt;P&gt;          FROM MBEW&lt;/P&gt;&lt;P&gt;          INTO INV-STPRS&lt;/P&gt;&lt;P&gt;          WHERE MATNR EQ INV-MATNR&lt;/P&gt;&lt;P&gt;          AND   BWKEY EQ INV-WERKS&lt;/P&gt;&lt;P&gt;          AND   BWTAR EQ SPACE.&lt;/P&gt;&lt;P&gt;     IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;       INV-VALUE = INV-STPRS *&lt;/P&gt;&lt;P&gt;                 ( INV-LABST + INV-INSME + INV-TRANS + INV-SPEME ).&lt;/P&gt;&lt;P&gt;       MODIFY INV.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_PRICE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      FORM CONVERT_UNIT_OF_MEASURE                                  *&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;      text                                                          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_MATNR                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_VRKME                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  P_QUANT                                                       *&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 CONVERT_UNIT_OF_MEASURE USING P_MATNR P_VRKME P_QUANT.&lt;/P&gt;&lt;P&gt; DATA: UMREZ LIKE MARM-UMREZ,&lt;/P&gt;&lt;P&gt;       UMREN LIKE MARM-UMREN.&lt;/P&gt;&lt;P&gt; SELECT SINGLE UMREZ UMREN&lt;/P&gt;&lt;P&gt;        INTO (UMREZ, UMREN)&lt;/P&gt;&lt;P&gt;        FROM MARM&lt;/P&gt;&lt;P&gt;        WHERE MATNR EQ P_MATNR&lt;/P&gt;&lt;P&gt;        AND   MEINH EQ P_VRKME.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;   COMPUTE P_QUANT = ( P_QUANT * UMREZ ) / UMREN.&lt;/P&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&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  BUILD_LAYOUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_LAYOUT  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 BUILD_LAYOUT USING P_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt; P_LAYOUT-F2CODE       = F2CODE.&lt;/P&gt;&lt;P&gt; P_LAYOUT-ZEBRA        = 'X'.&lt;/P&gt;&lt;P&gt; P_LAYOUT-DETAIL_POPUP = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BUILD_LAYOUT&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  WRITE_OUTPUT&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;P&gt;FORM WRITE_OUTPUT.&lt;/P&gt;&lt;P&gt; SORT INV BY WERKS MATNR.&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     = REPNAME&lt;/P&gt;&lt;P&gt;           I_INTERNAL_TABNAME = 'INV'&lt;/P&gt;&lt;P&gt;           I_INCLNAME         = REPNAME&lt;/P&gt;&lt;P&gt;      CHANGING&lt;/P&gt;&lt;P&gt;           CT_FIELDCAT        = FIELDTAB.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;   WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_FIELDCATALOG_MERGE'.  ENDIF.  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;           I_CALLBACK_PROGRAM = REPNAME&lt;/P&gt;&lt;P&gt;           I_STRUCTURE_NAME   = 'INV'&lt;/P&gt;&lt;P&gt;           IS_LAYOUT          = LAYOUT&lt;/P&gt;&lt;P&gt;           IT_FIELDCAT        = FIELDTAB&lt;/P&gt;&lt;P&gt;           I_DEFAULT          = 'A'&lt;/P&gt;&lt;P&gt;           I_SAVE             = G_SAVE&lt;/P&gt;&lt;P&gt;           IS_VARIANT         = G_VARIANT&lt;/P&gt;&lt;P&gt;           IT_EVENTS          = EVENTS[]&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;           T_OUTTAB           = INV.&lt;/P&gt;&lt;P&gt; IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;   WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_LIST_DISPLAY'.  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " WRITE&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 01:02:50 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199799#M130759</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T01:02:50Z</dc:date>
    </item>
    <item>
      <title>Re: LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199800#M130760</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Priya,&lt;/P&gt;&lt;P&gt;  What explanation you need??&lt;/P&gt;&lt;P&gt;It is a ALV report,with a defined layout(variant) for output report.The report gives the details of the Stock available for the material according to plant.&lt;/P&gt;&lt;P&gt;MARD table gives stock for the material according to the plant(werks) &amp;amp; storage location(LGORT).&lt;/P&gt;&lt;P&gt;The report has a heading defined in TOP_OF_PAGE event of ALV.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 01:16:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199800#M130760</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T01:16:54Z</dc:date>
    </item>
    <item>
      <title>Re: LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199801#M130761</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is a program that reads materials and the inventory, then check the PO, and sales order quantities and prepare basically what looks like a custom inventory report in ALV that shows the available inventory, expected receipts(POs), demand(SO), what is to be delivered(deliveries) etc. Follow the code logic and check the tables. You will know.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please close the all posts as they get answered by either selecting 'Problem Solved' button next to the response, or 'Solved on my Own' button next to your original post.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 01:20:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199801#M130761</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T01:20:26Z</dc:date>
    </item>
    <item>
      <title>Re: LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199802#M130762</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi phani,&lt;/P&gt;&lt;P&gt;I need some explanation regarding this program.I dont have any abap experince.But in interviews they r asking realtime experience.I need some explanation regarding my interview point of view.Thanx in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 01:36:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199802#M130762</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T01:36:52Z</dc:date>
    </item>
    <item>
      <title>Re: LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199803#M130763</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Priya,&lt;/P&gt;&lt;P&gt;  Type-pools:SLIS.This is for ALV report display,which contains structures used to get the ALV report.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;Here you are defining the selection-screen fields under one block with title text-001(you can write any thing for the title by double clicking on the text-001).&lt;/P&gt;&lt;P&gt;CONSTANTS: means the value of the variable defined wcannot be changed in the program at any time.In your case it is FORMNAME_TOP_OF_PAGE with value 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:BEGIN OF INV OCCURS 100..&lt;/P&gt;&lt;P&gt;You are defining a internal table &amp;amp; giving a buffer of 100 lines to it.&lt;/P&gt;&lt;P&gt;The rest of data declaration is for ALV.&lt;/P&gt;&lt;P&gt;AT SELECTION SCREEN EVENT will validate the screen fields..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Or now you tell me what point of the code are you not understanding??&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 01:47:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199803#M130763</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T01:47:04Z</dc:date>
    </item>
    <item>
      <title>Re: LIST materials</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199804#M130764</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Priya,&lt;/P&gt;&lt;P&gt;  Hope you want an Idea on ALVs ..The ALV Grid control is a flexible tool for displaying lists. The tool provides common list operations as generic functions and can be enhanced by self-defined options..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The ALV Grid control is used to build non-hierarchical, interactive, and modern-design lists. As a control, it is a component that is installed on the local PC...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The wrapper class implemented to encapsulate ALV Grid functionality is &amp;#147;CL_GUI_ALV_GRID&amp;#148;. in this code..  the other way to display lists with ALV utilizing &amp;#147;REUSE_ALV...&amp;#148; is being used...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And for the selection-screens..&lt;/P&gt;&lt;P&gt;for the events..&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.&lt;/P&gt;&lt;P&gt;are the events triggered from the selection-screeen..&lt;/P&gt;&lt;P&gt;on VALUE REQUEST is triggered on a F4 key press on the parameter..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is the technical explanation that you can give..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope this helps you..&lt;/P&gt;&lt;P&gt;ps:reward points if you find it helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;satesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Feb 2006 02:50:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/list-materials/m-p/1199804#M130764</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-11T02:50:53Z</dc:date>
    </item>
  </channel>
</rss>

